File tree Expand file tree Collapse file tree 1 file changed +19
-1
lines changed Expand file tree Collapse file tree 1 file changed +19
-1
lines changed Original file line number Diff line number Diff line change @@ -274,11 +274,29 @@ void main(uint3 inTid : SV_DispatchThreadID)
274
274
}
275
275
else if(IsTest(9))
276
276
{
277
- // Query function : unit tests
277
+ // Query functions : unit tests
278
278
data.x = float(WaveGetLaneCount());
279
279
data.y = float(WaveGetLaneIndex());
280
280
data.z = float(WaveIsFirstLane());
281
281
}
282
+ else if(IsTest(10))
283
+ {
284
+ // Vote functions : unit tests
285
+ data.x = float(WaveActiveAnyTrue(id*2 > id+10));
286
+ data.y = float(WaveActiveAllTrue(id < WaveGetLaneCount()));
287
+ if (id > 10)
288
+ {
289
+ data.z = float(WaveActiveAllTrue(id > 10));
290
+ uint4 ballot = WaveActiveBallot(id > 20);
291
+ data.w = countbits(ballot.x) + countbits(ballot.y) + countbits(ballot.z) + countbits(ballot.w);
292
+ }
293
+ else
294
+ {
295
+ data.z = float(WaveActiveAllTrue(id > 3));
296
+ uint4 ballot = WaveActiveBallot(id > 4);
297
+ data.w = countbits(ballot.x) + countbits(ballot.y) + countbits(ballot.z) + countbits(ballot.w);
298
+ }
299
+ }
282
300
SetOuput(data);
283
301
}
284
302
You can’t perform that action at this time.
0 commit comments