| ; SPIR-V |
| ; Version: 1.3 |
| ; Generator: Google Tint Compiler; 0 |
| ; Bound: 389 |
| ; Schema: 0 |
| OpCapability Shader |
| OpMemoryModel Logical GLSL450 |
| OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2 |
| OpExecutionMode %main OriginUpperLeft |
| OpName %buf0 "buf0" |
| OpMemberName %buf0 0 "injectionSwitch" |
| OpName %x_25 "x_25" |
| OpName %gl_FragCoord "gl_FragCoord" |
| OpName %x_GLF_color "x_GLF_color" |
| OpName %tint_symbol "tint_symbol" |
| OpName %tint_symbol_2 "tint_symbol_2" |
| OpName %drawShape_vf2_ "drawShape_vf2_" |
| OpName %pos "pos" |
| OpName %c2 "c2" |
| OpName %c3 "c3" |
| OpName %c4 "c4" |
| OpName %c5 "c5" |
| OpName %c6 "c6" |
| OpName %GLF_live4i "GLF_live4i" |
| OpName %GLF_live4_looplimiter5 "GLF_live4_looplimiter5" |
| OpName %GLF_live7m42 "GLF_live7m42" |
| OpName %GLF_live7m33 "GLF_live7m33" |
| OpName %GLF_live7cols "GLF_live7cols" |
| OpName %GLF_live7_looplimiter3 "GLF_live7_looplimiter3" |
| OpName %GLF_live7rows "GLF_live7rows" |
| OpName %GLF_live7_looplimiter2 "GLF_live7_looplimiter2" |
| OpName %GLF_live7_looplimiter1 "GLF_live7_looplimiter1" |
| OpName %GLF_live7c "GLF_live7c" |
| OpName %GLF_live7r "GLF_live7r" |
| OpName %GLF_live7_looplimiter0 "GLF_live7_looplimiter0" |
| OpName %GLF_live7sum_index "GLF_live7sum_index" |
| OpName %GLF_live7_looplimiter7 "GLF_live7_looplimiter7" |
| OpName %GLF_live7cols_1 "GLF_live7cols_1" |
| OpName %GLF_live7rows_1 "GLF_live7rows_1" |
| OpName %GLF_live7sums "GLF_live7sums" |
| OpName %GLF_live7c_1 "GLF_live7c_1" |
| OpName %GLF_live7r_1 "GLF_live7r_1" |
| OpName %x_180 "x_180" |
| OpName %indexable "indexable" |
| OpName %main_1 "main_1" |
| OpName %position "position" |
| OpName %param "param" |
| OpName %param_1 "param_1" |
| OpName %i "i" |
| OpName %param_2 "param_2" |
| OpName %main_out "main_out" |
| OpMemberName %main_out 0 "x_GLF_color_1" |
| OpName %tint_symbol_3 "tint_symbol_3" |
| OpName %tint_symbol_1 "tint_symbol_1" |
| OpName %main "main" |
| OpDecorate %buf0 Block |
| OpMemberDecorate %buf0 0 Offset 0 |
| OpDecorate %x_25 NonWritable |
| OpDecorate %x_25 DescriptorSet 0 |
| OpDecorate %x_25 Binding 0 |
| OpDecorate %tint_symbol BuiltIn FragCoord |
| OpDecorate %tint_symbol_2 Location 0 |
| OpDecorate %_arr_float_uint_9 ArrayStride 4 |
| OpMemberDecorate %main_out 0 Offset 0 |
| %float = OpTypeFloat 32 |
| %v2float = OpTypeVector %float 2 |
| %buf0 = OpTypeStruct %v2float |
| %_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0 |
| %x_25 = OpVariable %_ptr_Uniform_buf0 Uniform |
| %v4float = OpTypeVector %float 4 |
| %_ptr_Private_v4float = OpTypePointer Private %v4float |
| %9 = OpConstantNull %v4float |
| %gl_FragCoord = OpVariable %_ptr_Private_v4float Private %9 |
| %x_GLF_color = OpVariable %_ptr_Private_v4float Private %9 |
| %_ptr_Input_v4float = OpTypePointer Input %v4float |
| %tint_symbol = OpVariable %_ptr_Input_v4float Input |
| %_ptr_Output_v4float = OpTypePointer Output %v4float |
| %tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %9 |
| %v3float = OpTypeVector %float 3 |
| %_ptr_Function_v2float = OpTypePointer Function %v2float |
| %15 = OpTypeFunction %v3float %_ptr_Function_v2float |
| %bool = OpTypeBool |
| %_ptr_Function_bool = OpTypePointer Function %bool |
| %24 = OpConstantNull %bool |
| %int = OpTypeInt 32 1 |
| %_ptr_Function_int = OpTypePointer Function %int |
| %32 = OpConstantNull %int |
| %mat4v2float = OpTypeMatrix %v2float 4 |
| %_ptr_Function_mat4v2float = OpTypePointer Function %mat4v2float |
| %37 = OpConstantNull %mat4v2float |
| %mat3v3float = OpTypeMatrix %v3float 3 |
| %_ptr_Function_mat3v3float = OpTypePointer Function %mat3v3float |
| %41 = OpConstantNull %mat3v3float |
| %uint = OpTypeInt 32 0 |
| %uint_9 = OpConstant %uint 9 |
| %_arr_float_uint_9 = OpTypeArray %float %uint_9 |
| %_ptr_Function__arr_float_uint_9 = OpTypePointer Function %_arr_float_uint_9 |
| %59 = OpConstantNull %_arr_float_uint_9 |
| %uint_0 = OpConstant %uint 0 |
| %_ptr_Function_float = OpTypePointer Function %float |
| %float_1 = OpConstant %float 1 |
| %74 = OpConstantComposite %v3float %float_1 %float_1 %float_1 |
| %uint_1 = OpConstant %uint 1 |
| %int_0 = OpConstant %int 0 |
| %int_4 = OpConstant %int 4 |
| %int_7 = OpConstant %int 7 |
| %int_1 = OpConstant %int 1 |
| %float_0 = OpConstant %float 0 |
| %125 = OpConstantComposite %v2float %float_1 %float_0 |
| %126 = OpConstantComposite %v2float %float_0 %float_1 |
| %127 = OpConstantComposite %v2float %float_0 %float_0 |
| %128 = OpConstantComposite %mat4v2float %125 %126 %127 %125 |
| %129 = OpConstantComposite %v3float %float_1 %float_0 %float_0 |
| %130 = OpConstantComposite %v3float %float_0 %float_1 %float_0 |
| %131 = OpConstantComposite %v3float %float_0 %float_0 %float_1 |
| %132 = OpConstantComposite %mat3v3float %129 %130 %131 |
| %int_2 = OpConstant %int 2 |
| %int_3 = OpConstant %int 3 |
| %_ptr_Uniform_float = OpTypePointer Uniform %float |
| %int_9 = OpConstant %int 9 |
| %void = OpTypeVoid |
| %334 = OpTypeFunction %void |
| %339 = OpConstantNull %v2float |
| %float_2 = OpConstant %float 2 |
| %int_25 = OpConstant %int 25 |
| %375 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1 |
| %main_out = OpTypeStruct %v4float |
| %376 = OpTypeFunction %void %main_out |
| %drawShape_vf2_ = OpFunction %v3float None %15 |
| %pos = OpFunctionParameter %_ptr_Function_v2float |
| %20 = OpLabel |
| %c2 = OpVariable %_ptr_Function_bool Function %24 |
| %c3 = OpVariable %_ptr_Function_bool Function %24 |
| %c4 = OpVariable %_ptr_Function_bool Function %24 |
| %c5 = OpVariable %_ptr_Function_bool Function %24 |
| %c6 = OpVariable %_ptr_Function_bool Function %24 |
| %GLF_live4i = OpVariable %_ptr_Function_int Function %32 |
| %GLF_live4_looplimiter5 = OpVariable %_ptr_Function_int Function %32 |
| %GLF_live7m42 = OpVariable %_ptr_Function_mat4v2float Function %37 |
| %GLF_live7m33 = OpVariable %_ptr_Function_mat3v3float Function %41 |
| %GLF_live7cols = OpVariable %_ptr_Function_int Function %32 |
| %GLF_live7_looplimiter3 = OpVariable %_ptr_Function_int Function %32 |
| %GLF_live7rows = OpVariable %_ptr_Function_int Function %32 |
| %GLF_live7_looplimiter2 = OpVariable %_ptr_Function_int Function %32 |
| %GLF_live7_looplimiter1 = OpVariable %_ptr_Function_int Function %32 |
| %GLF_live7c = OpVariable %_ptr_Function_int Function %32 |
| %GLF_live7r = OpVariable %_ptr_Function_int Function %32 |
| %GLF_live7_looplimiter0 = OpVariable %_ptr_Function_int Function %32 |
| %GLF_live7sum_index = OpVariable %_ptr_Function_int Function %32 |
| %GLF_live7_looplimiter7 = OpVariable %_ptr_Function_int Function %32 |
| %GLF_live7cols_1 = OpVariable %_ptr_Function_int Function %32 |
| %GLF_live7rows_1 = OpVariable %_ptr_Function_int Function %32 |
| %GLF_live7sums = OpVariable %_ptr_Function__arr_float_uint_9 Function %59 |
| %GLF_live7c_1 = OpVariable %_ptr_Function_int Function %32 |
| %GLF_live7r_1 = OpVariable %_ptr_Function_int Function %32 |
| %x_180 = OpVariable %_ptr_Function_int Function %32 |
| %indexable = OpVariable %_ptr_Function_mat3v3float Function %41 |
| %67 = OpAccessChain %_ptr_Function_float %pos %uint_0 |
| %68 = OpLoad %float %67 |
| %70 = OpFOrdGreaterThan %bool %68 %float_1 |
| OpStore %c2 %70 |
| %71 = OpLoad %bool %c2 |
| OpSelectionMerge %72 None |
| OpBranchConditional %71 %73 %72 |
| %73 = OpLabel |
| OpReturnValue %74 |
| %72 = OpLabel |
| %77 = OpAccessChain %_ptr_Function_float %pos %uint_1 |
| %78 = OpLoad %float %77 |
| %79 = OpFOrdLessThan %bool %78 %float_1 |
| OpStore %c3 %79 |
| %80 = OpLoad %bool %c3 |
| OpSelectionMerge %81 None |
| OpBranchConditional %80 %82 %81 |
| %82 = OpLabel |
| OpReturnValue %74 |
| %81 = OpLabel |
| %84 = OpAccessChain %_ptr_Function_float %pos %uint_1 |
| %85 = OpLoad %float %84 |
| %86 = OpFOrdGreaterThan %bool %85 %float_1 |
| OpStore %c4 %86 |
| %87 = OpLoad %bool %c4 |
| OpSelectionMerge %88 None |
| OpBranchConditional %87 %89 %88 |
| %89 = OpLabel |
| OpReturnValue %74 |
| %88 = OpLabel |
| %91 = OpAccessChain %_ptr_Function_float %pos %uint_0 |
| %92 = OpLoad %float %91 |
| %93 = OpFOrdLessThan %bool %92 %float_1 |
| OpStore %c5 %93 |
| %94 = OpLoad %bool %c5 |
| OpSelectionMerge %95 None |
| OpBranchConditional %94 %96 %95 |
| %96 = OpLabel |
| OpReturnValue %74 |
| %95 = OpLabel |
| %98 = OpAccessChain %_ptr_Function_float %pos %uint_0 |
| %99 = OpLoad %float %98 |
| %100 = OpFAdd %float %99 %float_1 |
| %101 = OpFOrdGreaterThan %bool %100 %float_1 |
| OpStore %c6 %101 |
| %102 = OpLoad %bool %c6 |
| OpSelectionMerge %103 None |
| OpBranchConditional %102 %104 %103 |
| %104 = OpLabel |
| OpReturnValue %74 |
| %103 = OpLabel |
| OpStore %GLF_live4i %int_0 |
| OpBranch %106 |
| %106 = OpLabel |
| OpLoopMerge %107 %108 None |
| OpBranch %109 |
| %109 = OpLabel |
| %110 = OpLoad %int %GLF_live4i |
| %112 = OpSLessThan %bool %110 %int_4 |
| OpSelectionMerge %113 None |
| OpBranchConditional %112 %114 %115 |
| %114 = OpLabel |
| OpBranch %113 |
| %115 = OpLabel |
| OpBranch %107 |
| %113 = OpLabel |
| %116 = OpLoad %int %GLF_live4_looplimiter5 |
| %118 = OpSGreaterThanEqual %bool %116 %int_7 |
| OpSelectionMerge %119 None |
| OpBranchConditional %118 %120 %119 |
| %120 = OpLabel |
| OpBranch %107 |
| %119 = OpLabel |
| %121 = OpLoad %int %GLF_live4_looplimiter5 |
| %123 = OpIAdd %int %121 %int_1 |
| OpStore %GLF_live4_looplimiter5 %123 |
| OpStore %GLF_live7m42 %128 |
| OpStore %GLF_live7m33 %132 |
| OpStore %GLF_live7cols %int_2 |
| OpBranch %134 |
| %134 = OpLabel |
| OpLoopMerge %135 %136 None |
| OpBranch %137 |
| %137 = OpLabel |
| %138 = OpLoad %int %GLF_live7cols |
| %139 = OpSLessThan %bool %138 %int_4 |
| OpSelectionMerge %140 None |
| OpBranchConditional %139 %141 %142 |
| %141 = OpLabel |
| OpBranch %140 |
| %142 = OpLabel |
| OpBranch %135 |
| %140 = OpLabel |
| %143 = OpLoad %int %GLF_live7_looplimiter3 |
| %144 = OpSGreaterThanEqual %bool %143 %int_7 |
| OpSelectionMerge %145 None |
| OpBranchConditional %144 %146 %145 |
| %146 = OpLabel |
| OpBranch %135 |
| %145 = OpLabel |
| %147 = OpLoad %int %GLF_live7_looplimiter3 |
| %148 = OpIAdd %int %147 %int_1 |
| OpStore %GLF_live7_looplimiter3 %148 |
| OpStore %GLF_live7rows %int_2 |
| OpBranch %149 |
| %149 = OpLabel |
| OpLoopMerge %150 %151 None |
| OpBranch %152 |
| %152 = OpLabel |
| %153 = OpLoad %int %GLF_live7rows |
| %154 = OpSLessThan %bool %153 %int_4 |
| OpSelectionMerge %155 None |
| OpBranchConditional %154 %156 %157 |
| %156 = OpLabel |
| OpBranch %155 |
| %157 = OpLabel |
| OpBranch %150 |
| %155 = OpLabel |
| %158 = OpLoad %int %GLF_live7_looplimiter2 |
| %159 = OpSGreaterThanEqual %bool %158 %int_7 |
| OpSelectionMerge %160 None |
| OpBranchConditional %159 %161 %160 |
| %161 = OpLabel |
| OpBranch %150 |
| %160 = OpLabel |
| %162 = OpLoad %int %GLF_live7_looplimiter2 |
| %163 = OpIAdd %int %162 %int_1 |
| OpStore %GLF_live7_looplimiter2 %163 |
| OpStore %GLF_live7_looplimiter1 %int_0 |
| OpStore %GLF_live7c %int_0 |
| OpBranch %164 |
| %164 = OpLabel |
| OpLoopMerge %165 %166 None |
| OpBranch %167 |
| %167 = OpLabel |
| %168 = OpLoad %int %GLF_live7c |
| %170 = OpSLessThan %bool %168 %int_3 |
| OpSelectionMerge %171 None |
| OpBranchConditional %170 %172 %173 |
| %172 = OpLabel |
| OpBranch %171 |
| %173 = OpLabel |
| OpBranch %165 |
| %171 = OpLabel |
| %174 = OpLoad %int %GLF_live7_looplimiter1 |
| %175 = OpSGreaterThanEqual %bool %174 %int_7 |
| OpSelectionMerge %176 None |
| OpBranchConditional %175 %177 %176 |
| %177 = OpLabel |
| OpBranch %165 |
| %176 = OpLabel |
| %178 = OpLoad %int %GLF_live7_looplimiter1 |
| %179 = OpIAdd %int %178 %int_1 |
| OpStore %GLF_live7_looplimiter1 %179 |
| OpStore %GLF_live7r %int_0 |
| OpBranch %180 |
| %180 = OpLabel |
| OpLoopMerge %181 %182 None |
| OpBranch %183 |
| %183 = OpLabel |
| %184 = OpLoad %int %GLF_live7r |
| %185 = OpSLessThan %bool %184 %int_2 |
| OpSelectionMerge %186 None |
| OpBranchConditional %185 %187 %188 |
| %187 = OpLabel |
| OpBranch %186 |
| %188 = OpLabel |
| OpBranch %181 |
| %186 = OpLabel |
| %189 = OpLoad %int %GLF_live7_looplimiter0 |
| %190 = OpSGreaterThanEqual %bool %189 %int_7 |
| OpSelectionMerge %191 None |
| OpBranchConditional %190 %192 %191 |
| %192 = OpLabel |
| OpBranch %181 |
| %191 = OpLabel |
| %193 = OpLoad %int %GLF_live7_looplimiter0 |
| %194 = OpIAdd %int %193 %int_1 |
| OpStore %GLF_live7_looplimiter0 %194 |
| %195 = OpLoad %int %GLF_live7c |
| %196 = OpLoad %int %GLF_live7c |
| %197 = OpLoad %int %GLF_live7c |
| %198 = OpLoad %int %GLF_live7r |
| %199 = OpLoad %int %GLF_live7r |
| %200 = OpLoad %int %GLF_live7r |
| %202 = OpSGreaterThanEqual %bool %195 %int_0 |
| %203 = OpSLessThan %bool %196 %int_3 |
| %204 = OpLogicalAnd %bool %202 %203 |
| %201 = OpSelect %int %204 %197 %int_0 |
| %206 = OpSGreaterThanEqual %bool %198 %int_0 |
| %207 = OpSLessThan %bool %199 %int_3 |
| %208 = OpLogicalAnd %bool %206 %207 |
| %205 = OpSelect %int %208 %200 %int_0 |
| %209 = OpAccessChain %_ptr_Function_float %GLF_live7m33 %201 %205 |
| OpStore %209 %float_1 |
| %211 = OpAccessChain %_ptr_Uniform_float %x_25 %uint_0 %uint_1 |
| %212 = OpLoad %float %211 |
| %213 = OpFOrdGreaterThan %bool %float_0 %212 |
| OpSelectionMerge %214 None |
| OpBranchConditional %213 %215 %216 |
| %215 = OpLabel |
| OpBranch %214 |
| %216 = OpLabel |
| %217 = OpLoad %int %GLF_live7c |
| %218 = OpLoad %int %GLF_live7c |
| %219 = OpLoad %int %GLF_live7c |
| %220 = OpLoad %int %GLF_live7r |
| %221 = OpLoad %int %GLF_live7r |
| %222 = OpLoad %int %GLF_live7r |
| %224 = OpSGreaterThanEqual %bool %217 %int_0 |
| %225 = OpSLessThan %bool %218 %int_4 |
| %226 = OpLogicalAnd %bool %224 %225 |
| %223 = OpSelect %int %226 %219 %int_0 |
| %228 = OpSGreaterThanEqual %bool %220 %int_0 |
| %229 = OpSLessThan %bool %221 %int_2 |
| %230 = OpLogicalAnd %bool %228 %229 |
| %227 = OpSelect %int %230 %222 %int_0 |
| %231 = OpAccessChain %_ptr_Function_float %GLF_live7m42 %223 %227 |
| OpStore %231 %float_1 |
| OpBranch %214 |
| %214 = OpLabel |
| OpBranch %182 |
| %182 = OpLabel |
| %232 = OpLoad %int %GLF_live7r |
| %233 = OpIAdd %int %232 %int_1 |
| OpStore %GLF_live7r %233 |
| OpBranch %180 |
| %181 = OpLabel |
| OpBranch %166 |
| %166 = OpLabel |
| %234 = OpLoad %int %GLF_live7c |
| %235 = OpIAdd %int %234 %int_1 |
| OpStore %GLF_live7c %235 |
| OpBranch %164 |
| %165 = OpLabel |
| OpBranch %151 |
| %151 = OpLabel |
| %236 = OpLoad %int %GLF_live7rows |
| %237 = OpIAdd %int %236 %int_1 |
| OpStore %GLF_live7rows %237 |
| OpBranch %149 |
| %150 = OpLabel |
| OpBranch %136 |
| %136 = OpLabel |
| %238 = OpLoad %int %GLF_live7cols |
| %239 = OpIAdd %int %238 %int_1 |
| OpStore %GLF_live7cols %239 |
| OpBranch %134 |
| %135 = OpLabel |
| OpStore %GLF_live7sum_index %int_0 |
| OpStore %GLF_live7_looplimiter7 %int_0 |
| OpStore %GLF_live7cols_1 %int_2 |
| OpBranch %240 |
| %240 = OpLabel |
| OpLoopMerge %241 %242 None |
| OpBranch %243 |
| %243 = OpLabel |
| %244 = OpLoad %int %GLF_live7cols_1 |
| %245 = OpSLessThan %bool %244 %int_4 |
| OpSelectionMerge %246 None |
| OpBranchConditional %245 %247 %248 |
| %247 = OpLabel |
| OpBranch %246 |
| %248 = OpLabel |
| OpBranch %241 |
| %246 = OpLabel |
| %249 = OpLoad %int %GLF_live7_looplimiter7 |
| %250 = OpSGreaterThanEqual %bool %249 %int_7 |
| OpSelectionMerge %251 None |
| OpBranchConditional %250 %252 %251 |
| %252 = OpLabel |
| OpBranch %241 |
| %251 = OpLabel |
| %253 = OpLoad %int %GLF_live7_looplimiter7 |
| %254 = OpIAdd %int %253 %int_1 |
| OpStore %GLF_live7_looplimiter7 %254 |
| OpStore %GLF_live7rows_1 %int_2 |
| %255 = OpLoad %int %GLF_live7sum_index |
| %256 = OpLoad %int %GLF_live7sum_index |
| %257 = OpLoad %int %GLF_live7sum_index |
| %259 = OpSGreaterThanEqual %bool %255 %int_0 |
| %261 = OpSLessThan %bool %256 %int_9 |
| %262 = OpLogicalAnd %bool %259 %261 |
| %258 = OpSelect %int %262 %257 %int_0 |
| %263 = OpAccessChain %_ptr_Function_float %GLF_live7sums %258 |
| OpStore %263 %float_0 |
| OpStore %GLF_live7c_1 %int_0 |
| OpBranch %264 |
| %264 = OpLabel |
| OpLoopMerge %265 %266 None |
| OpBranch %267 |
| %267 = OpLabel |
| %268 = OpLoad %int %GLF_live7c_1 |
| %269 = OpSLessThan %bool %268 %int_1 |
| OpSelectionMerge %270 None |
| OpBranchConditional %269 %271 %272 |
| %271 = OpLabel |
| OpBranch %270 |
| %272 = OpLabel |
| OpBranch %265 |
| %270 = OpLabel |
| OpStore %GLF_live7r_1 %int_0 |
| OpBranch %273 |
| %273 = OpLabel |
| OpLoopMerge %274 %275 None |
| OpBranch %276 |
| %276 = OpLabel |
| %277 = OpLoad %int %GLF_live7r_1 |
| %278 = OpLoad %int %GLF_live7rows_1 |
| %279 = OpSLessThan %bool %277 %278 |
| OpSelectionMerge %280 None |
| OpBranchConditional %279 %281 %282 |
| %281 = OpLabel |
| OpBranch %280 |
| %282 = OpLabel |
| OpBranch %274 |
| %280 = OpLabel |
| %283 = OpLoad %int %GLF_live7sum_index |
| %284 = OpLoad %int %GLF_live7sum_index |
| %285 = OpLoad %int %GLF_live7sum_index |
| %287 = OpSGreaterThanEqual %bool %283 %int_0 |
| %288 = OpSLessThan %bool %284 %int_9 |
| %289 = OpLogicalAnd %bool %287 %288 |
| %286 = OpSelect %int %289 %285 %int_0 |
| %290 = OpLoad %mat3v3float %GLF_live7m33 |
| %291 = OpTranspose %mat3v3float %290 |
| %292 = OpLoad %int %GLF_live7c_1 |
| %293 = OpSLessThan %bool %292 %int_3 |
| OpSelectionMerge %294 None |
| OpBranchConditional %293 %295 %296 |
| %295 = OpLabel |
| OpStore %x_180 %int_1 |
| OpBranch %294 |
| %296 = OpLabel |
| %297 = OpAccessChain %_ptr_Uniform_float %x_25 %uint_0 %uint_0 |
| %298 = OpLoad %float %297 |
| %299 = OpConvertFToS %int %298 |
| OpStore %x_180 %299 |
| OpBranch %294 |
| %294 = OpLabel |
| %300 = OpLoad %int %x_180 |
| %301 = OpLoad %int %GLF_live7r_1 |
| OpStore %indexable %291 |
| %303 = OpSLessThan %bool %301 %int_3 |
| %302 = OpSelect %int %303 %int_1 %int_0 |
| %304 = OpAccessChain %_ptr_Function_float %indexable %300 %302 |
| %305 = OpLoad %float %304 |
| %306 = OpAccessChain %_ptr_Function_float %GLF_live7sums %286 |
| %307 = OpLoad %float %306 |
| %308 = OpAccessChain %_ptr_Function_float %GLF_live7sums %286 |
| %309 = OpFAdd %float %307 %305 |
| OpStore %308 %309 |
| %310 = OpLoad %int %GLF_live7sum_index |
| %311 = OpLoad %int %GLF_live7sum_index |
| %312 = OpLoad %int %GLF_live7sum_index |
| %314 = OpSGreaterThanEqual %bool %310 %int_0 |
| %315 = OpSLessThan %bool %311 %int_9 |
| %316 = OpLogicalAnd %bool %314 %315 |
| %313 = OpSelect %int %316 %312 %int_0 |
| %317 = OpLoad %int %GLF_live7r_1 |
| %318 = OpAccessChain %_ptr_Function_float %GLF_live7m42 %int_1 %317 |
| %319 = OpLoad %float %318 |
| %320 = OpAccessChain %_ptr_Function_float %GLF_live7sums %313 |
| %321 = OpLoad %float %320 |
| %322 = OpAccessChain %_ptr_Function_float %GLF_live7sums %313 |
| %323 = OpFAdd %float %321 %319 |
| OpStore %322 %323 |
| OpBranch %275 |
| %275 = OpLabel |
| %324 = OpLoad %int %GLF_live7r_1 |
| %325 = OpIAdd %int %324 %int_1 |
| OpStore %GLF_live7r_1 %325 |
| OpBranch %273 |
| %274 = OpLabel |
| OpBranch %266 |
| %266 = OpLabel |
| %326 = OpLoad %int %GLF_live7c_1 |
| %327 = OpIAdd %int %326 %int_1 |
| OpStore %GLF_live7c_1 %327 |
| OpBranch %264 |
| %265 = OpLabel |
| %328 = OpLoad %int %GLF_live7sum_index |
| %329 = OpIAdd %int %328 %int_1 |
| OpStore %GLF_live7sum_index %329 |
| OpBranch %242 |
| %242 = OpLabel |
| %330 = OpLoad %int %GLF_live7cols_1 |
| %331 = OpIAdd %int %330 %int_1 |
| OpStore %GLF_live7cols_1 %331 |
| OpBranch %240 |
| %241 = OpLabel |
| OpBranch %108 |
| %108 = OpLabel |
| %332 = OpLoad %int %GLF_live4i |
| %333 = OpIAdd %int %332 %int_1 |
| OpStore %GLF_live4i %333 |
| OpBranch %106 |
| %107 = OpLabel |
| OpReturnValue %74 |
| OpFunctionEnd |
| %main_1 = OpFunction %void None %334 |
| %337 = OpLabel |
| %position = OpVariable %_ptr_Function_v2float Function %339 |
| %param = OpVariable %_ptr_Function_v2float Function %339 |
| %param_1 = OpVariable %_ptr_Function_v2float Function %339 |
| %i = OpVariable %_ptr_Function_int Function %32 |
| %param_2 = OpVariable %_ptr_Function_v2float Function %339 |
| %344 = OpAccessChain %_ptr_Uniform_float %x_25 %uint_0 %uint_0 |
| %345 = OpLoad %float %344 |
| %347 = OpFOrdGreaterThanEqual %bool %345 %float_2 |
| OpSelectionMerge %348 None |
| OpBranchConditional %347 %349 %348 |
| %349 = OpLabel |
| %350 = OpLoad %v4float %gl_FragCoord |
| %351 = OpCompositeExtract %float %350 0 |
| %352 = OpCompositeExtract %float %350 1 |
| %353 = OpCompositeConstruct %v2float %351 %352 |
| OpStore %position %353 |
| %354 = OpLoad %v2float %position |
| OpStore %param %354 |
| %355 = OpFunctionCall %v3float %drawShape_vf2_ %param |
| %357 = OpLoad %v2float %position |
| OpStore %param_1 %357 |
| %358 = OpFunctionCall %v3float %drawShape_vf2_ %param_1 |
| OpStore %i %int_25 |
| OpBranch %361 |
| %361 = OpLabel |
| OpLoopMerge %362 %363 None |
| OpBranch %364 |
| %364 = OpLabel |
| %365 = OpLoad %int %i |
| %366 = OpSGreaterThan %bool %365 %int_0 |
| OpSelectionMerge %367 None |
| OpBranchConditional %366 %368 %369 |
| %368 = OpLabel |
| OpBranch %367 |
| %369 = OpLabel |
| OpBranch %362 |
| %367 = OpLabel |
| %370 = OpLoad %v2float %position |
| OpStore %param_2 %370 |
| %371 = OpFunctionCall %v3float %drawShape_vf2_ %param_2 |
| OpBranch %363 |
| %363 = OpLabel |
| %373 = OpLoad %int %i |
| %374 = OpISub %int %373 %int_1 |
| OpStore %i %374 |
| OpBranch %361 |
| %362 = OpLabel |
| OpBranch %348 |
| %348 = OpLabel |
| OpStore %x_GLF_color %375 |
| OpReturn |
| OpFunctionEnd |
| %tint_symbol_3 = OpFunction %void None %376 |
| %tint_symbol_1 = OpFunctionParameter %main_out |
| %380 = OpLabel |
| %381 = OpCompositeExtract %v4float %tint_symbol_1 0 |
| OpStore %tint_symbol_2 %381 |
| OpReturn |
| OpFunctionEnd |
| %main = OpFunction %void None %334 |
| %383 = OpLabel |
| %384 = OpLoad %v4float %tint_symbol |
| OpStore %gl_FragCoord %384 |
| %385 = OpFunctionCall %void %main_1 |
| %387 = OpLoad %v4float %x_GLF_color |
| %388 = OpCompositeConstruct %main_out %387 |
| %386 = OpFunctionCall %void %tint_symbol_3 %388 |
| OpReturn |
| OpFunctionEnd |