// // fragment_main // RWByteAddressBuffer prevent_dce : register(u0); vector sqrt_803d1c() { vector arg_0 = (float16_t(1.0h)).xxxx; vector res = sqrt(arg_0); return res; } void fragment_main() { prevent_dce.Store >(0u, sqrt_803d1c()); } // // compute_main // RWByteAddressBuffer prevent_dce : register(u0); vector sqrt_803d1c() { vector arg_0 = (float16_t(1.0h)).xxxx; vector res = sqrt(arg_0); return res; } [numthreads(1, 1, 1)] void compute_main() { prevent_dce.Store >(0u, sqrt_803d1c()); } // // vertex_main // struct VertexOutput { float4 pos; vector prevent_dce; }; struct vertex_main_outputs { nointerpolation vector VertexOutput_prevent_dce : TEXCOORD0; float4 VertexOutput_pos : SV_Position; }; vector sqrt_803d1c() { vector arg_0 = (float16_t(1.0h)).xxxx; vector res = sqrt(arg_0); return res; } VertexOutput vertex_main_inner() { VertexOutput v = (VertexOutput)0; v.pos = (0.0f).xxxx; v.prevent_dce = sqrt_803d1c(); VertexOutput v_1 = v; return v_1; } vertex_main_outputs vertex_main() { VertexOutput v_2 = vertex_main_inner(); vertex_main_outputs v_3 = {v_2.prevent_dce, v_2.pos}; return v_3; }