| ; SPIR-V |
| ; Version: 1.3 |
| ; Generator: Google Tint Compiler; 0 |
| ; Bound: 41 |
| ; Schema: 0 |
| OpCapability Shader |
| OpMemoryModel Logical GLSL450 |
| OpEntryPoint Fragment %main "main" |
| OpExecutionMode %main OriginUpperLeft |
| OpName %x_1 "x_1" |
| OpName %x_7 "x_7" |
| OpName %x_8 "x_8" |
| OpName %main_1 "main_1" |
| OpName %x_2_phi "x_2_phi" |
| OpName %x_3_phi "x_3_phi" |
| OpName %x_4 "x_4" |
| OpName %main "main" |
| %uint = OpTypeInt 32 0 |
| %_ptr_Private_uint = OpTypePointer Private %uint |
| %4 = OpConstantNull %uint |
| %x_1 = OpVariable %_ptr_Private_uint Private %4 |
| %bool = OpTypeBool |
| %_ptr_Private_bool = OpTypePointer Private %bool |
| %8 = OpConstantNull %bool |
| %x_7 = OpVariable %_ptr_Private_bool Private %8 |
| %x_8 = OpVariable %_ptr_Private_bool Private %8 |
| %void = OpTypeVoid |
| %10 = OpTypeFunction %void |
| %_ptr_Function_uint = OpTypePointer Function %uint |
| %uint_0 = OpConstant %uint 0 |
| %uint_1 = OpConstant %uint 1 |
| %main_1 = OpFunction %void None %10 |
| %13 = OpLabel |
| %x_2_phi = OpVariable %_ptr_Function_uint Function %4 |
| %x_3_phi = OpVariable %_ptr_Function_uint Function %4 |
| %x_4 = OpVariable %_ptr_Function_uint Function %4 |
| OpBranch %14 |
| %14 = OpLabel |
| OpLoopMerge %15 %16 None |
| OpBranch %17 |
| %17 = OpLabel |
| %21 = OpLoad %bool %x_7 |
| %22 = OpLoad %bool %x_8 |
| OpStore %x_2_phi %uint_0 |
| OpStore %x_3_phi %uint_1 |
| OpSelectionMerge %25 None |
| OpBranchConditional %21 %26 %25 |
| %26 = OpLabel |
| OpBranch %15 |
| %25 = OpLabel |
| OpBranch %27 |
| %27 = OpLabel |
| OpLoopMerge %28 %29 None |
| OpBranch %30 |
| %30 = OpLabel |
| %32 = OpLoad %uint %x_2_phi |
| %33 = OpLoad %uint %x_3_phi |
| OpSelectionMerge %34 None |
| OpBranchConditional %22 %35 %34 |
| %35 = OpLabel |
| OpBranch %28 |
| %34 = OpLabel |
| OpBranch %29 |
| %29 = OpLabel |
| %36 = OpIAdd %uint %32 %uint_1 |
| OpStore %x_4 %36 |
| %37 = OpLoad %uint %x_4 |
| OpStore %x_2_phi %37 |
| OpStore %x_3_phi %33 |
| OpBranch %27 |
| %28 = OpLabel |
| OpBranch %16 |
| %16 = OpLabel |
| OpBranch %14 |
| %15 = OpLabel |
| OpReturn |
| OpFunctionEnd |
| %main = OpFunction %void None %10 |
| %39 = OpLabel |
| %40 = OpFunctionCall %void %main_1 |
| OpReturn |
| OpFunctionEnd |