@@ -31,6 +31,24 @@ using namespace llvm;
3131using namespace llvm ::dxil;
3232
3333static bool checkWaveOps (Intrinsic::ID IID) {
34+ // Currently unsupported intrinsics
35+ // case Intrinsic::dx_wave_getlanecount:
36+ // case Intrinsic::dx_wave_allequal:
37+ // case Intrinsic::dx_wave_ballot:
38+ // case Intrinsic::dx_wave_readfirst:
39+ // case Intrinsic::dx_wave_reduce.and:
40+ // case Intrinsic::dx_wave_reduce.or:
41+ // case Intrinsic::dx_wave_reduce.xor:
42+ // case Intrinsic::dx_wave_prefixop:
43+ // case Intrinsic::dx_quad.readat:
44+ // case Intrinsic::dx_quad.readacrossx:
45+ // case Intrinsic::dx_quad.readacrossy:
46+ // case Intrinsic::dx_quad.readacrossdiagonal:
47+ // case Intrinsic::dx_wave_prefixballot:
48+ // case Intrinsic::dx_wave_match:
49+ // case Intrinsic::dx_wavemulti.*:
50+ // case Intrinsic::dx_wavemulti.ballot:
51+ // case Intrinsic::dx_quad.vote:
3452 switch (IID) {
3553 default :
3654 return false ;
@@ -45,21 +63,6 @@ static bool checkWaveOps(Intrinsic::ID IID) {
4563 case Intrinsic::dx_wave_reduce_usum:
4664 case Intrinsic::dx_wave_reduce_max:
4765 case Intrinsic::dx_wave_reduce_umax:
48-
49- // Currently unsupported intrinsics
50- // case Intrinsic::dx_WaveGetLaneCount:
51- // case Intrinsic::dx_WaveActiveAllEqual:
52- // case Intrinsic::dx_WaveActiveBallot:
53- // case Intrinsic::dx_WaveReadLaneFirst:
54- // case Intrinsic::dx_WaveActiveBit:
55- // case Intrinsic::dx_WavePrefixOp:
56- // case Intrinsic::dx_QuadReadLaneAt:
57- // case Intrinsic::dx_QuadOp:
58- // case Intrinsic::dx_WavePrefixBitCount:
59- // case Intrinsic::dx_WaveMatch:
60- // case Intrinsic::dx_WaveMultiPrefixOp:
61- // case Intrinsic::dx_WaveMultiPrefixBitCount:
62- // case Intrinsic::dx_QuadVote:
6366 return true ;
6467 }
6568}
0 commit comments