; SPIR-V
; Version: 1.1
; Generator: rspirv
; Bound: 46
OpCapability Shader
OpCapability Linkage
%1 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
%2 = OpTypeVoid
%3 = OpTypeInt 32 1
%6 = OpTypeFunction %2
%7 = OpConstant  %3  0
%8 = OpConstant  %3  4
%9 = OpConstant  %3  1
%11 = OpTypePointer Function %3
%17 = OpTypeInt 32 0
%18 = OpTypeVector %17 2
%19 = OpTypePointer Function %18
%20 = OpTypeBool
%21 = OpTypeVector %20 2
%22 = OpConstant  %17  0
%23 = OpConstantComposite  %18  %22 %22
%24 = OpConstant  %17  1
%25 = OpConstant  %17  4294967295
%26 = OpConstantComposite  %18  %25 %25
%5 = OpFunction  %2  None %6
%4 = OpLabel
%10 = OpVariable  %11  Function %7
%27 = OpVariable  %19  Function %23
OpBranch %12
%12 = OpLabel
OpBranch %13
%13 = OpLabel
OpLoopMerge %14 %16 None
OpBranch %28
%28 = OpLabel
%29 = OpLoad  %18  %27
%30 = OpIEqual  %21  %26 %29
%31 = OpAll  %20  %30
OpSelectionMerge %32 None
OpBranchConditional %31 %14 %32
%32 = OpLabel
%33 = OpCompositeExtract  %17  %29 1
%34 = OpIEqual  %20  %33 %25
%35 = OpSelect  %17  %34 %24 %22
%36 = OpCompositeConstruct  %18  %35 %24
%37 = OpIAdd  %18  %29 %36
OpStore %27 %37
OpBranch %15
%15 = OpLabel
%38 = OpLoad  %3  %10
%39 = OpSLessThan  %20  %38 %8
OpSelectionMerge %40 None
OpBranchConditional %39 %40 %41
%41 = OpLabel
OpBranch %14
%40 = OpLabel
OpBranch %42
%42 = OpLabel
OpBranch %14
%16 = OpLabel
%44 = OpLoad  %3  %10
%45 = OpIAdd  %3  %44 %9
OpStore %10 %45
OpBranch %13
%14 = OpLabel
OpReturn
OpFunctionEnd