| RWByteAddressBuffer s : register(u0); |
| uint tint_f16_to_u32(float16_t value) { |
| return uint(clamp(value, float16_t(0.0h), float16_t(65504.0h))); |
| uint v_1 = ((v / 4u) - 1u); |
| uint v_2 = (min(uint(int(0)), v_1) * 4u); |
| matrix<float16_t, 3, 2> v_3[2] = {matrix<float16_t, 3, 2>(vector<float16_t, 2>(float16_t(0.0h), float16_t(1.0h)), vector<float16_t, 2>(float16_t(2.0h), float16_t(3.0h)), vector<float16_t, 2>(float16_t(2.0h), float16_t(3.0h))), matrix<float16_t, 3, 2>(vector<float16_t, 2>(float16_t(0.0h), float16_t(1.0h)), vector<float16_t, 2>(float16_t(2.0h), float16_t(3.0h)), vector<float16_t, 2>(float16_t(2.0h), float16_t(3.0h)))}; |
| s.Store((0u + v_2), tint_f16_to_u32(v_3[min(q, 1u)][0u].x)); |