dan sinclair | 8f1d276 | 2024-07-31 02:35:40 +0000 | [diff] [blame] | 1 | struct VertexOutput { |
| 2 | float4 pos; |
| 3 | float16_t prevent_dce; |
| 4 | }; |
dan sinclair | 6931379 | 2024-06-13 20:35:21 +0000 | [diff] [blame] | 5 | |
dan sinclair | 8f1d276 | 2024-07-31 02:35:40 +0000 | [diff] [blame] | 6 | struct vertex_main_outputs { |
| 7 | nointerpolation float16_t VertexOutput_prevent_dce : TEXCOORD0; |
| 8 | float4 VertexOutput_pos : SV_Position; |
| 9 | }; |
| 10 | |
| 11 | |
| 12 | RWByteAddressBuffer prevent_dce : register(u0); |
| 13 | float16_t determinant_d7c86f() { |
| 14 | matrix<float16_t, 3, 3> arg_0 = matrix<float16_t, 3, 3>((float16_t(1.0h)).xxx, (float16_t(1.0h)).xxx, (float16_t(1.0h)).xxx); |
| 15 | float16_t res = determinant(arg_0); |
| 16 | return res; |
| 17 | } |
| 18 | |
| 19 | void fragment_main() { |
| 20 | prevent_dce.Store<float16_t>(0u, determinant_d7c86f()); |
| 21 | } |
| 22 | |
| 23 | [numthreads(1, 1, 1)] |
| 24 | void compute_main() { |
| 25 | prevent_dce.Store<float16_t>(0u, determinant_d7c86f()); |
| 26 | } |
| 27 | |
| 28 | VertexOutput vertex_main_inner() { |
| 29 | VertexOutput tint_symbol = (VertexOutput)0; |
| 30 | tint_symbol.pos = (0.0f).xxxx; |
| 31 | tint_symbol.prevent_dce = determinant_d7c86f(); |
| 32 | VertexOutput v = tint_symbol; |
| 33 | return v; |
| 34 | } |
| 35 | |
| 36 | vertex_main_outputs vertex_main() { |
| 37 | VertexOutput v_1 = vertex_main_inner(); |
| 38 | VertexOutput v_2 = v_1; |
| 39 | VertexOutput v_3 = v_1; |
| 40 | vertex_main_outputs v_4 = {v_3.prevent_dce, v_2.pos}; |
| 41 | return v_4; |
| 42 | } |
| 43 | |