// // fragment_main // RWByteAddressBuffer prevent_dce : register(u0); vector subgroupShuffleDown_57b1e8() { vector res = WaveReadLaneAt((float16_t(1.0h)).xx, (WaveGetLaneIndex() + 1u)); return res; } void fragment_main() { prevent_dce.Store >(0u, subgroupShuffleDown_57b1e8()); } // // compute_main // RWByteAddressBuffer prevent_dce : register(u0); vector subgroupShuffleDown_57b1e8() { vector res = WaveReadLaneAt((float16_t(1.0h)).xx, (WaveGetLaneIndex() + 1u)); return res; } [numthreads(1, 1, 1)] void compute_main() { prevent_dce.Store >(0u, subgroupShuffleDown_57b1e8()); }