1234567891011121314151617181920212223242526 |
- RWByteAddressBuffer sbuf;
- float4 main(uint pos : FOO) : SV_Target0
- {
- uint u;
- sbuf.InterlockedAdd(8, 1);
- sbuf.InterlockedAdd(8, 1, u);
- sbuf.InterlockedAnd(8, 1);
- sbuf.InterlockedAnd(8, 1, u);
- sbuf.InterlockedCompareExchange(8, 1, 2, u);
- // sbuf.InterlockedCompareStore(8, 1, 2); // TODO: ...
- sbuf.InterlockedExchange(8, 1, u);
- sbuf.InterlockedMax(8, 1);
- sbuf.InterlockedMax(8, 1, u);
- sbuf.InterlockedMin(8, 1);
- sbuf.InterlockedMin(8, 1, u);
- sbuf.InterlockedOr(8, 1);
- sbuf.InterlockedOr(8, 1, u);
- sbuf.InterlockedXor(8, 1);
- sbuf.InterlockedXor(8, 1, u);
- return sbuf.Load(pos);
- }
|