test: Remove many expected files

For these tests, we only really care that we can successfully consume
them and generate valid output for each backend. Having the expected
files in the tree generates significant churn for any change to how we
generate backend code, which makes it hard to inspect diffs.

Change-Id: Ic98c248081144c0fb1791f1303eaf6d459548e3d
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/62720
Reviewed-by: Ben Clayton <bclayton@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: James Price <jrprice@google.com>
This commit is contained in:
James Price
2021-08-24 22:49:42 +00:00
committed by Tint LUCI CQ
parent 568136dd10
commit 87cce20f67
8526 changed files with 12 additions and 613699 deletions

View File

@@ -1,61 +0,0 @@
struct tint_padded_array_element {
int el;
};
cbuffer cbuffer_x_6 : register(b1, space0) {
uint4 x_6[2];
};
static float4 x_GLF_color = float4(0.0f, 0.0f, 0.0f, 0.0f);
void main_1() {
int idx = 0;
int a = 0;
tint_padded_array_element indexable[2] = (tint_padded_array_element[2])0;
const int x_27 = asint(x_6[1].x);
idx = (1 << asuint(x_27));
const int x_30 = asint(x_6[1].x);
const uint scalar_offset = ((16u * uint(0))) / 4;
const int x_32 = asint(x_6[scalar_offset / 4][scalar_offset % 4]);
const int x_34 = idx;
const tint_padded_array_element tint_symbol_2[2] = {{x_30}, {x_32}};
indexable = tint_symbol_2;
const int x_36 = indexable[x_34].el;
a = x_36;
const int x_37 = a;
const uint scalar_offset_1 = ((16u * uint(0))) / 4;
const int x_39 = asint(x_6[scalar_offset_1 / 4][scalar_offset_1 % 4]);
if ((x_37 == x_39)) {
const uint scalar_offset_2 = ((16u * uint(0))) / 4;
const int x_45 = asint(x_6[scalar_offset_2 / 4][scalar_offset_2 % 4]);
const int x_48 = asint(x_6[1].x);
const int x_51 = asint(x_6[1].x);
const uint scalar_offset_3 = ((16u * uint(0))) / 4;
const int x_54 = asint(x_6[scalar_offset_3 / 4][scalar_offset_3 % 4]);
x_GLF_color = float4(float(x_45), float(x_48), float(x_51), float(x_54));
} else {
const int x_58 = asint(x_6[1].x);
const float x_59 = float(x_58);
x_GLF_color = float4(x_59, x_59, x_59, x_59);
}
return;
}
struct main_out {
float4 x_GLF_color_1;
};
struct tint_symbol {
float4 x_GLF_color_1 : SV_Target0;
};
main_out main_inner() {
main_1();
const main_out tint_symbol_3 = {x_GLF_color};
return tint_symbol_3;
}
tint_symbol main() {
const main_out inner_result = main_inner();
tint_symbol wrapper_result = (tint_symbol)0;
wrapper_result.x_GLF_color_1 = inner_result.x_GLF_color_1;
return wrapper_result;
}

View File

@@ -1,63 +0,0 @@
#include <metal_stdlib>
using namespace metal;
struct tint_padded_array_element {
/* 0x0000 */ int el;
/* 0x0004 */ int8_t tint_pad[12];
};
struct tint_array_wrapper {
/* 0x0000 */ tint_padded_array_element arr[2];
};
struct buf1 {
/* 0x0000 */ tint_array_wrapper x_GLF_uniform_int_values;
};
struct main_out {
float4 x_GLF_color_1;
};
struct tint_symbol_1 {
float4 x_GLF_color_1 [[color(0)]];
};
void main_1(constant buf1& x_6, thread float4* const tint_symbol_4) {
int idx = 0;
int a = 0;
tint_array_wrapper indexable = {};
int const x_27 = x_6.x_GLF_uniform_int_values.arr[1].el;
idx = as_type<int>((as_type<uint>(1) << as_type<uint>(x_27)));
int const x_30 = x_6.x_GLF_uniform_int_values.arr[1].el;
int const x_32 = x_6.x_GLF_uniform_int_values.arr[0].el;
int const x_34 = idx;
tint_array_wrapper const tint_symbol_2 = {.arr={{.el=x_30}, {.el=x_32}}};
indexable = tint_symbol_2;
int const x_36 = indexable.arr[x_34].el;
a = x_36;
int const x_37 = a;
int const x_39 = x_6.x_GLF_uniform_int_values.arr[0].el;
if ((x_37 == x_39)) {
int const x_45 = x_6.x_GLF_uniform_int_values.arr[0].el;
int const x_48 = x_6.x_GLF_uniform_int_values.arr[1].el;
int const x_51 = x_6.x_GLF_uniform_int_values.arr[1].el;
int const x_54 = x_6.x_GLF_uniform_int_values.arr[0].el;
*(tint_symbol_4) = float4(float(x_45), float(x_48), float(x_51), float(x_54));
} else {
int const x_58 = x_6.x_GLF_uniform_int_values.arr[1].el;
float const x_59 = float(x_58);
*(tint_symbol_4) = float4(x_59, x_59, x_59, x_59);
}
return;
}
main_out tint_symbol_inner(constant buf1& x_6, thread float4* const tint_symbol_5) {
main_1(x_6, tint_symbol_5);
main_out const tint_symbol_3 = {.x_GLF_color_1=*(tint_symbol_5)};
return tint_symbol_3;
}
fragment tint_symbol_1 tint_symbol(constant buf1& x_6 [[buffer(0)]]) {
thread float4 tint_symbol_6 = 0.0f;
main_out const inner_result = tint_symbol_inner(x_6, &(tint_symbol_6));
tint_symbol_1 wrapper_result = {};
wrapper_result.x_GLF_color_1 = inner_result.x_GLF_color_1;
return wrapper_result;
}

View File

@@ -1,123 +0,0 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
; Bound: 78
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
OpName %main_1 "main_1"
OpName %idx "idx"
OpName %a "a"
OpName %indexable "indexable"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
OpName %main_inner "main_inner"
OpName %main "main"
OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 1
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_int_uint_2 = OpTypeArray %int %uint_2
%buf1 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_6 = OpVariable %_ptr_Uniform_buf1 Uniform
%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
%21 = OpConstantNull %int
%_ptr_Function__arr_int_uint_2 = OpTypePointer Function %_arr_int_uint_2
%25 = OpConstantNull %_arr_int_uint_2
%uint_0 = OpConstant %uint 0
%int_1 = OpConstant %int 1
%_ptr_Uniform_int = OpTypePointer Uniform %int
%int_0 = OpConstant %int 0
%bool = OpTypeBool
%main_out = OpTypeStruct %v4float
%67 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%idx = OpVariable %_ptr_Function_int Function %21
%a = OpVariable %_ptr_Function_int Function %21
%indexable = OpVariable %_ptr_Function__arr_int_uint_2 Function %25
%29 = OpAccessChain %_ptr_Uniform_int %x_6 %uint_0 %int_1
%30 = OpLoad %int %29
%31 = OpBitcast %uint %30
%32 = OpShiftLeftLogical %int %int_1 %31
OpStore %idx %32
%33 = OpAccessChain %_ptr_Uniform_int %x_6 %uint_0 %int_1
%34 = OpLoad %int %33
%36 = OpAccessChain %_ptr_Uniform_int %x_6 %uint_0 %int_0
%37 = OpLoad %int %36
%38 = OpLoad %int %idx
%39 = OpCompositeConstruct %_arr_int_uint_2 %34 %37
OpStore %indexable %39
%40 = OpAccessChain %_ptr_Function_int %indexable %38
%41 = OpLoad %int %40
OpStore %a %41
%42 = OpLoad %int %a
%43 = OpAccessChain %_ptr_Uniform_int %x_6 %uint_0 %int_0
%44 = OpLoad %int %43
%45 = OpIEqual %bool %42 %44
OpSelectionMerge %47 None
OpBranchConditional %45 %48 %49
%48 = OpLabel
%50 = OpAccessChain %_ptr_Uniform_int %x_6 %uint_0 %int_0
%51 = OpLoad %int %50
%52 = OpAccessChain %_ptr_Uniform_int %x_6 %uint_0 %int_1
%53 = OpLoad %int %52
%54 = OpAccessChain %_ptr_Uniform_int %x_6 %uint_0 %int_1
%55 = OpLoad %int %54
%56 = OpAccessChain %_ptr_Uniform_int %x_6 %uint_0 %int_0
%57 = OpLoad %int %56
%58 = OpConvertSToF %float %51
%59 = OpConvertSToF %float %53
%60 = OpConvertSToF %float %55
%61 = OpConvertSToF %float %57
%62 = OpCompositeConstruct %v4float %58 %59 %60 %61
OpStore %x_GLF_color %62
OpBranch %47
%49 = OpLabel
%63 = OpAccessChain %_ptr_Uniform_int %x_6 %uint_0 %int_1
%64 = OpLoad %int %63
%65 = OpConvertSToF %float %64
%66 = OpCompositeConstruct %v4float %65 %65 %65 %65
OpStore %x_GLF_color %66
OpBranch %47
%47 = OpLabel
OpReturn
OpFunctionEnd
%main_inner = OpFunction %main_out None %67
%70 = OpLabel
%71 = OpFunctionCall %void %main_1
%72 = OpLoad %v4float %x_GLF_color
%73 = OpCompositeConstruct %main_out %72
OpReturnValue %73
OpFunctionEnd
%main = OpFunction %void None %15
%75 = OpLabel
%76 = OpFunctionCall %main_out %main_inner
%77 = OpCompositeExtract %v4float %76 0
OpStore %x_GLF_color_1_1 %77
OpReturn
OpFunctionEnd

View File

@@ -1,49 +0,0 @@
type Arr = [[stride(16)]] array<i32, 2>;
[[block]]
struct buf1 {
x_GLF_uniform_int_values : Arr;
};
[[group(0), binding(1)]] var<uniform> x_6 : buf1;
var<private> x_GLF_color : vec4<f32>;
fn main_1() {
var idx : i32;
var a : i32;
var indexable : Arr;
let x_27 : i32 = x_6.x_GLF_uniform_int_values[1];
idx = (1 << bitcast<u32>(x_27));
let x_30 : i32 = x_6.x_GLF_uniform_int_values[1];
let x_32 : i32 = x_6.x_GLF_uniform_int_values[0];
let x_34 : i32 = idx;
indexable = Arr(x_30, x_32);
let x_36 : i32 = indexable[x_34];
a = x_36;
let x_37 : i32 = a;
let x_39 : i32 = x_6.x_GLF_uniform_int_values[0];
if ((x_37 == x_39)) {
let x_45 : i32 = x_6.x_GLF_uniform_int_values[0];
let x_48 : i32 = x_6.x_GLF_uniform_int_values[1];
let x_51 : i32 = x_6.x_GLF_uniform_int_values[1];
let x_54 : i32 = x_6.x_GLF_uniform_int_values[0];
x_GLF_color = vec4<f32>(f32(x_45), f32(x_48), f32(x_51), f32(x_54));
} else {
let x_58 : i32 = x_6.x_GLF_uniform_int_values[1];
let x_59 : f32 = f32(x_58);
x_GLF_color = vec4<f32>(x_59, x_59, x_59, x_59);
}
return;
}
struct main_out {
[[location(0)]]
x_GLF_color_1 : vec4<f32>;
};
[[stage(fragment)]]
fn main() -> main_out {
main_1();
return main_out(x_GLF_color);
}

View File

@@ -1,61 +0,0 @@
struct tint_padded_array_element {
int el;
};
cbuffer cbuffer_x_6 : register(b1, space0) {
uint4 x_6[2];
};
static float4 x_GLF_color = float4(0.0f, 0.0f, 0.0f, 0.0f);
void main_1() {
int idx = 0;
int a = 0;
tint_padded_array_element indexable[2] = (tint_padded_array_element[2])0;
const int x_27 = asint(x_6[1].x);
idx = (1 << asuint(x_27));
const int x_30 = asint(x_6[1].x);
const uint scalar_offset = ((16u * uint(0))) / 4;
const int x_32 = asint(x_6[scalar_offset / 4][scalar_offset % 4]);
const int x_34 = idx;
const tint_padded_array_element tint_symbol_2[2] = {{x_30}, {x_32}};
indexable = tint_symbol_2;
const int x_36 = indexable[x_34].el;
a = x_36;
const int x_37 = a;
const uint scalar_offset_1 = ((16u * uint(0))) / 4;
const int x_39 = asint(x_6[scalar_offset_1 / 4][scalar_offset_1 % 4]);
if ((x_37 == x_39)) {
const uint scalar_offset_2 = ((16u * uint(0))) / 4;
const int x_45 = asint(x_6[scalar_offset_2 / 4][scalar_offset_2 % 4]);
const int x_48 = asint(x_6[1].x);
const int x_51 = asint(x_6[1].x);
const uint scalar_offset_3 = ((16u * uint(0))) / 4;
const int x_54 = asint(x_6[scalar_offset_3 / 4][scalar_offset_3 % 4]);
x_GLF_color = float4(float(x_45), float(x_48), float(x_51), float(x_54));
} else {
const int x_58 = asint(x_6[1].x);
const float x_59 = float(x_58);
x_GLF_color = float4(x_59, x_59, x_59, x_59);
}
return;
}
struct main_out {
float4 x_GLF_color_1;
};
struct tint_symbol {
float4 x_GLF_color_1 : SV_Target0;
};
main_out main_inner() {
main_1();
const main_out tint_symbol_3 = {x_GLF_color};
return tint_symbol_3;
}
tint_symbol main() {
const main_out inner_result = main_inner();
tint_symbol wrapper_result = (tint_symbol)0;
wrapper_result.x_GLF_color_1 = inner_result.x_GLF_color_1;
return wrapper_result;
}

View File

@@ -1,63 +0,0 @@
#include <metal_stdlib>
using namespace metal;
struct tint_padded_array_element {
/* 0x0000 */ int el;
/* 0x0004 */ int8_t tint_pad[12];
};
struct tint_array_wrapper {
/* 0x0000 */ tint_padded_array_element arr[2];
};
struct buf1 {
/* 0x0000 */ tint_array_wrapper x_GLF_uniform_int_values;
};
struct main_out {
float4 x_GLF_color_1;
};
struct tint_symbol_1 {
float4 x_GLF_color_1 [[color(0)]];
};
void main_1(constant buf1& x_6, thread float4* const tint_symbol_4) {
int idx = 0;
int a = 0;
tint_array_wrapper indexable = {};
int const x_27 = x_6.x_GLF_uniform_int_values.arr[1].el;
idx = as_type<int>((as_type<uint>(1) << as_type<uint>(x_27)));
int const x_30 = x_6.x_GLF_uniform_int_values.arr[1].el;
int const x_32 = x_6.x_GLF_uniform_int_values.arr[0].el;
int const x_34 = idx;
tint_array_wrapper const tint_symbol_2 = {.arr={{.el=x_30}, {.el=x_32}}};
indexable = tint_symbol_2;
int const x_36 = indexable.arr[x_34].el;
a = x_36;
int const x_37 = a;
int const x_39 = x_6.x_GLF_uniform_int_values.arr[0].el;
if ((x_37 == x_39)) {
int const x_45 = x_6.x_GLF_uniform_int_values.arr[0].el;
int const x_48 = x_6.x_GLF_uniform_int_values.arr[1].el;
int const x_51 = x_6.x_GLF_uniform_int_values.arr[1].el;
int const x_54 = x_6.x_GLF_uniform_int_values.arr[0].el;
*(tint_symbol_4) = float4(float(x_45), float(x_48), float(x_51), float(x_54));
} else {
int const x_58 = x_6.x_GLF_uniform_int_values.arr[1].el;
float const x_59 = float(x_58);
*(tint_symbol_4) = float4(x_59, x_59, x_59, x_59);
}
return;
}
main_out tint_symbol_inner(constant buf1& x_6, thread float4* const tint_symbol_5) {
main_1(x_6, tint_symbol_5);
main_out const tint_symbol_3 = {.x_GLF_color_1=*(tint_symbol_5)};
return tint_symbol_3;
}
fragment tint_symbol_1 tint_symbol(constant buf1& x_6 [[buffer(0)]]) {
thread float4 tint_symbol_6 = 0.0f;
main_out const inner_result = tint_symbol_inner(x_6, &(tint_symbol_6));
tint_symbol_1 wrapper_result = {};
wrapper_result.x_GLF_color_1 = inner_result.x_GLF_color_1;
return wrapper_result;
}

View File

@@ -1,123 +0,0 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
; Bound: 78
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
OpName %main_1 "main_1"
OpName %idx "idx"
OpName %a "a"
OpName %indexable "indexable"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
OpName %main_inner "main_inner"
OpName %main "main"
OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 1
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_int_uint_2 = OpTypeArray %int %uint_2
%buf1 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_6 = OpVariable %_ptr_Uniform_buf1 Uniform
%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
%21 = OpConstantNull %int
%_ptr_Function__arr_int_uint_2 = OpTypePointer Function %_arr_int_uint_2
%25 = OpConstantNull %_arr_int_uint_2
%uint_0 = OpConstant %uint 0
%int_1 = OpConstant %int 1
%_ptr_Uniform_int = OpTypePointer Uniform %int
%int_0 = OpConstant %int 0
%bool = OpTypeBool
%main_out = OpTypeStruct %v4float
%67 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%idx = OpVariable %_ptr_Function_int Function %21
%a = OpVariable %_ptr_Function_int Function %21
%indexable = OpVariable %_ptr_Function__arr_int_uint_2 Function %25
%29 = OpAccessChain %_ptr_Uniform_int %x_6 %uint_0 %int_1
%30 = OpLoad %int %29
%31 = OpBitcast %uint %30
%32 = OpShiftLeftLogical %int %int_1 %31
OpStore %idx %32
%33 = OpAccessChain %_ptr_Uniform_int %x_6 %uint_0 %int_1
%34 = OpLoad %int %33
%36 = OpAccessChain %_ptr_Uniform_int %x_6 %uint_0 %int_0
%37 = OpLoad %int %36
%38 = OpLoad %int %idx
%39 = OpCompositeConstruct %_arr_int_uint_2 %34 %37
OpStore %indexable %39
%40 = OpAccessChain %_ptr_Function_int %indexable %38
%41 = OpLoad %int %40
OpStore %a %41
%42 = OpLoad %int %a
%43 = OpAccessChain %_ptr_Uniform_int %x_6 %uint_0 %int_0
%44 = OpLoad %int %43
%45 = OpIEqual %bool %42 %44
OpSelectionMerge %47 None
OpBranchConditional %45 %48 %49
%48 = OpLabel
%50 = OpAccessChain %_ptr_Uniform_int %x_6 %uint_0 %int_0
%51 = OpLoad %int %50
%52 = OpAccessChain %_ptr_Uniform_int %x_6 %uint_0 %int_1
%53 = OpLoad %int %52
%54 = OpAccessChain %_ptr_Uniform_int %x_6 %uint_0 %int_1
%55 = OpLoad %int %54
%56 = OpAccessChain %_ptr_Uniform_int %x_6 %uint_0 %int_0
%57 = OpLoad %int %56
%58 = OpConvertSToF %float %51
%59 = OpConvertSToF %float %53
%60 = OpConvertSToF %float %55
%61 = OpConvertSToF %float %57
%62 = OpCompositeConstruct %v4float %58 %59 %60 %61
OpStore %x_GLF_color %62
OpBranch %47
%49 = OpLabel
%63 = OpAccessChain %_ptr_Uniform_int %x_6 %uint_0 %int_1
%64 = OpLoad %int %63
%65 = OpConvertSToF %float %64
%66 = OpCompositeConstruct %v4float %65 %65 %65 %65
OpStore %x_GLF_color %66
OpBranch %47
%47 = OpLabel
OpReturn
OpFunctionEnd
%main_inner = OpFunction %main_out None %67
%70 = OpLabel
%71 = OpFunctionCall %void %main_1
%72 = OpLoad %v4float %x_GLF_color
%73 = OpCompositeConstruct %main_out %72
OpReturnValue %73
OpFunctionEnd
%main = OpFunction %void None %15
%75 = OpLabel
%76 = OpFunctionCall %main_out %main_inner
%77 = OpCompositeExtract %v4float %76 0
OpStore %x_GLF_color_1_1 %77
OpReturn
OpFunctionEnd

View File

@@ -1,49 +0,0 @@
type Arr = [[stride(16)]] array<i32, 2>;
[[block]]
struct buf1 {
x_GLF_uniform_int_values : Arr;
};
[[group(0), binding(1)]] var<uniform> x_6 : buf1;
var<private> x_GLF_color : vec4<f32>;
fn main_1() {
var idx : i32;
var a : i32;
var indexable : Arr;
let x_27 : i32 = x_6.x_GLF_uniform_int_values[1];
idx = (1 << bitcast<u32>(x_27));
let x_30 : i32 = x_6.x_GLF_uniform_int_values[1];
let x_32 : i32 = x_6.x_GLF_uniform_int_values[0];
let x_34 : i32 = idx;
indexable = Arr(x_30, x_32);
let x_36 : i32 = indexable[x_34];
a = x_36;
let x_37 : i32 = a;
let x_39 : i32 = x_6.x_GLF_uniform_int_values[0];
if ((x_37 == x_39)) {
let x_45 : i32 = x_6.x_GLF_uniform_int_values[0];
let x_48 : i32 = x_6.x_GLF_uniform_int_values[1];
let x_51 : i32 = x_6.x_GLF_uniform_int_values[1];
let x_54 : i32 = x_6.x_GLF_uniform_int_values[0];
x_GLF_color = vec4<f32>(f32(x_45), f32(x_48), f32(x_51), f32(x_54));
} else {
let x_58 : i32 = x_6.x_GLF_uniform_int_values[1];
let x_59 : f32 = f32(x_58);
x_GLF_color = vec4<f32>(x_59, x_59, x_59, x_59);
}
return;
}
struct main_out {
[[location(0)]]
x_GLF_color_1 : vec4<f32>;
};
[[stage(fragment)]]
fn main() -> main_out {
main_1();
return main_out(x_GLF_color);
}