Files
llvm-project/llvm/test/CodeGen/DirectX/WaveActiveBitXor.ll
Joshua Batista c7e66a66b1 [HLSL] Add WaveActiveBitXor function (#185776)
This PR adds WaveActiveBitXor function to HLSL, with spirv and DXIL code
generation.
Fixes https://github.com/llvm/llvm-project/issues/99168
2026-03-12 14:42:17 -07:00

20 lines
617 B
LLVM

; RUN: opt -S -scalarizer -dxil-op-lower -mtriple=dxil-pc-shadermodel6.3-compute %s | FileCheck %s
define noundef i32 @wave_bitxor_simple(i32 noundef %p1) {
entry:
; CHECK: call i32 @dx.op.waveActiveBit.i32(i32 120, i32 %p1, i8 2){{$}}
%ret = call i32 @llvm.dx.wave.reduce.xor.i32(i32 %p1)
ret i32 %ret
}
declare i32 @llvm.dx.wave.reduce.xor.i32(i32)
define noundef i64 @wave_bitxor_simple64(i64 noundef %p1) {
entry:
; CHECK: call i64 @dx.op.waveActiveBit.i64(i32 120, i64 %p1, i8 2){{$}}
%ret = call i64 @llvm.dx.wave.reduce.xor.i64(i64 %p1)
ret i64 %ret
}
declare i64 @llvm.dx.wave.reduce.xor.i64(i64)