| SKIP: FAILED |
| |
| void set_float3(inout float3 vec, int idx, float val) { |
| vec = (idx.xxx == int3(0, 1, 2)) ? val.xxx : vec; |
| } |
| |
| cbuffer cbuffer_x_6 : register(b0, space0) { |
| uint4 x_6[4]; |
| }; |
| cbuffer cbuffer_x_9 : register(b1, space0) { |
| uint4 x_9[2]; |
| }; |
| static float4 x_GLF_color = float4(0.0f, 0.0f, 0.0f, 0.0f); |
| |
| void main_1() { |
| float3x3 m = float3x3(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f); |
| int a = 0; |
| float3 arr[2] = (float3[2])0; |
| float3 v = float3(0.0f, 0.0f, 0.0f); |
| const uint scalar_offset = ((16u * uint(0))) / 4; |
| const int x_45 = asint(x_6[scalar_offset / 4][scalar_offset % 4]); |
| const float x_46 = float(x_45); |
| m = float3x3(float3(x_46, 0.0f, 0.0f), float3(0.0f, x_46, 0.0f), float3(0.0f, 0.0f, x_46)); |
| const uint scalar_offset_1 = ((16u * uint(0))) / 4; |
| const int x_52 = asint(x_6[scalar_offset_1 / 4][scalar_offset_1 % 4]); |
| a = x_52; |
| const int x_53 = a; |
| const int x_54 = a; |
| const uint scalar_offset_2 = ((16u * uint(0))) / 4; |
| const float x_56 = asfloat(x_9[scalar_offset_2 / 4][scalar_offset_2 % 4]); |
| set_float3(m[x_53], x_54, x_56); |
| const float3 x_59 = m[1]; |
| const float3 x_61 = m[1]; |
| const float3 tint_symbol_4[2] = {x_59, x_61}; |
| arr = tint_symbol_4; |
| const float x_64 = asfloat(x_9[1].x); |
| v = float3(x_64, x_64, x_64); |
| const float3 x_68 = arr[a]; |
| v = (v + x_68); |
| const float3 x_71 = v; |
| const int x_73 = asint(x_6[1].x); |
| const int x_76 = asint(x_6[2].x); |
| const int x_79 = asint(x_6[1].x); |
| if (all((x_71 == float3(float(x_73), float(x_76), float(x_79))))) { |
| const uint scalar_offset_3 = ((16u * uint(0))) / 4; |
| const int x_88 = asint(x_6[scalar_offset_3 / 4][scalar_offset_3 % 4]); |
| const int x_91 = asint(x_6[3].x); |
| const int x_94 = asint(x_6[3].x); |
| const uint scalar_offset_4 = ((16u * uint(0))) / 4; |
| const int x_97 = asint(x_6[scalar_offset_4 / 4][scalar_offset_4 % 4]); |
| x_GLF_color = float4(float(x_88), float(x_91), float(x_94), float(x_97)); |
| } else { |
| const int x_101 = asint(x_6[3].x); |
| const float x_102 = float(x_101); |
| x_GLF_color = float4(x_102, x_102, x_102, x_102); |
| } |
| return; |
| } |
| |
| struct main_out { |
| float4 x_GLF_color_1; |
| }; |
| struct tint_symbol { |
| float4 x_GLF_color_1 : SV_Target0; |
| }; |
| |
| tint_symbol main() { |
| main_1(); |
| const main_out tint_symbol_1 = {x_GLF_color}; |
| const tint_symbol tint_symbol_5 = {tint_symbol_1.x_GLF_color_1}; |
| return tint_symbol_5; |
| } |
| C:\src\tint\test\Shader@0x000001C5FF133840(29,14-20): error X3500: array reference cannot be used as an l-value; not natively addressable |
| |