| ; SPIR-V |
| ; Version: 1.3 |
| ; Generator: Google Tint Compiler; 0 |
| ; Bound: 36 |
| ; Schema: 0 |
| OpCapability Shader |
| OpMemoryModel Logical GLSL450 |
| OpEntryPoint GLCompute %unused_entry_point "unused_entry_point" |
| OpExecutionMode %unused_entry_point LocalSize 1 1 1 |
| OpName %unused_entry_point "unused_entry_point" |
| OpName %foo "foo" |
| OpName %a "a" |
| OpName %b "b" |
| OpName %c "c" |
| OpName %d "d" |
| OpName %e "e" |
| OpName %tint_return_flag "tint_return_flag" |
| %void = OpTypeVoid |
| %1 = OpTypeFunction %void |
| %bool = OpTypeBool |
| %5 = OpTypeFunction %void %bool %bool %bool %bool %bool |
| %_ptr_Function_bool = OpTypePointer Function %bool |
| %16 = OpConstantNull %bool |
| %true = OpConstantTrue %bool |
| %unused_entry_point = OpFunction %void None %1 |
| %4 = OpLabel |
| OpReturn |
| OpFunctionEnd |
| %foo = OpFunction %void None %5 |
| %a = OpFunctionParameter %bool |
| %b = OpFunctionParameter %bool |
| %c = OpFunctionParameter %bool |
| %d = OpFunctionParameter %bool |
| %e = OpFunctionParameter %bool |
| %13 = OpLabel |
| %tint_return_flag = OpVariable %_ptr_Function_bool Function %16 |
| OpSelectionMerge %17 None |
| OpBranchConditional %a %18 %17 |
| %18 = OpLabel |
| OpSelectionMerge %19 None |
| OpBranchConditional %b %20 %19 |
| %20 = OpLabel |
| OpStore %tint_return_flag %true |
| OpBranch %19 |
| %19 = OpLabel |
| %23 = OpLoad %bool %tint_return_flag |
| %22 = OpLogicalNot %bool %23 |
| OpSelectionMerge %24 None |
| OpBranchConditional %22 %25 %24 |
| %25 = OpLabel |
| OpSelectionMerge %26 None |
| OpBranchConditional %c %27 %26 |
| %27 = OpLabel |
| OpSelectionMerge %28 None |
| OpBranchConditional %d %29 %28 |
| %29 = OpLabel |
| OpStore %tint_return_flag %true |
| OpBranch %28 |
| %28 = OpLabel |
| %31 = OpLoad %bool %tint_return_flag |
| %30 = OpLogicalNot %bool %31 |
| OpSelectionMerge %32 None |
| OpBranchConditional %30 %33 %32 |
| %33 = OpLabel |
| OpSelectionMerge %34 None |
| OpBranchConditional %e %35 %34 |
| %35 = OpLabel |
| OpBranch %34 |
| %34 = OpLabel |
| OpBranch %32 |
| %32 = OpLabel |
| OpBranch %26 |
| %26 = OpLabel |
| OpBranch %24 |
| %24 = OpLabel |
| OpBranch %17 |
| %17 = OpLabel |
| OpReturn |
| OpFunctionEnd |