; SPIR-V
; Version: 1.1
; Generator: rspirv
; Bound: 109
OpCapability Shader
%1 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
OpEntryPoint GLCompute %100 "main"
OpExecutionMode %100 LocalSize 2 3 1
%2 = OpTypeVoid
%3 = OpTypeInt 32 0
%4 = OpTypeInt 32 1
%5 = OpTypeVector %4 4
%6 = OpTypeFloat 32
%7 = OpTypeVector %6 4
%8 = OpTypeVector %6 2
%10 = OpTypeBool
%9 = OpTypeVector %10 2
%11 = OpConstant  %3  2
%12 = OpConstant  %4  3
%13 = OpConstant  %4  4
%14 = OpConstant  %4  8
%15 = OpConstant  %6  3.141
%16 = OpConstant  %6  6.282
%17 = OpConstant  %6  0.44444445
%18 = OpConstant  %6  0.0
%19 = OpConstantComposite  %7  %17 %18 %18 %18
%20 = OpConstant  %4  0
%21 = OpConstant  %4  1
%22 = OpConstant  %4  2
%23 = OpConstant  %6  4.0
%24 = OpConstant  %6  5.0
%25 = OpConstantComposite  %8  %23 %24
%26 = OpConstantTrue  %10
%27 = OpConstantFalse  %10
%28 = OpConstantComposite  %9  %26 %27
%31 = OpTypeFunction %2
%32 = OpConstantComposite  %5  %13 %12 %22 %21
%34 = OpTypePointer Function %5
%39 = OpTypePointer Function %4
%43 = OpConstant  %4  6
%48 = OpConstant  %4  30
%49 = OpConstant  %4  70
%52 = OpConstantNull  %4
%54 = OpConstantNull  %4
%57 = OpConstantNull  %5
%68 = OpConstant  %4  -4
%69 = OpConstantComposite  %5  %68 %68 %68 %68
%78 = OpConstant  %6  1.0
%79 = OpConstant  %6  2.0
%80 = OpConstantComposite  %7  %79 %78 %78 %78
%82 = OpTypePointer Function %7
%87 = OpTypeFunction %3 %4
%88 = OpConstant  %3  10
%89 = OpConstant  %3  20
%90 = OpConstant  %3  30
%91 = OpConstant  %3  0
%98 = OpConstantNull  %3
%30 = OpFunction  %2  None %31
%29 = OpLabel
%33 = OpVariable  %34  Function %32
OpBranch %35
%35 = OpLabel
OpReturn
OpFunctionEnd
%37 = OpFunction  %2  None %31
%36 = OpLabel
%38 = OpVariable  %39  Function %22
OpBranch %40
%40 = OpLabel
OpReturn
OpFunctionEnd
%42 = OpFunction  %2  None %31
%41 = OpLabel
%44 = OpVariable  %39  Function %43
OpBranch %45
%45 = OpLabel
OpReturn
OpFunctionEnd
%47 = OpFunction  %2  None %31
%46 = OpLabel
%56 = OpVariable  %34  Function %57
%51 = OpVariable  %39  Function %52
%55 = OpVariable  %39  Function %49
%50 = OpVariable  %39  Function %48
%53 = OpVariable  %39  Function %54
OpBranch %58
%58 = OpLabel
%59 = OpLoad  %4  %50
OpStore %51 %59
%60 = OpLoad  %4  %51
OpStore %53 %60
%61 = OpLoad  %4  %50
%62 = OpLoad  %4  %51
%63 = OpLoad  %4  %53
%64 = OpLoad  %4  %55
%65 = OpCompositeConstruct  %5  %61 %62 %63 %64
OpStore %56 %65
OpReturn
OpFunctionEnd
%67 = OpFunction  %2  None %31
%66 = OpLabel
%70 = OpVariable  %34  Function %69
OpBranch %71
%71 = OpLabel
OpReturn
OpFunctionEnd
%73 = OpFunction  %2  None %31
%72 = OpLabel
%74 = OpVariable  %34  Function %69
OpBranch %75
%75 = OpLabel
OpReturn
OpFunctionEnd
%77 = OpFunction  %2  None %31
%76 = OpLabel
%81 = OpVariable  %82  Function %80
OpBranch %83
%83 = OpLabel
OpReturn
OpFunctionEnd
%86 = OpFunction  %3  None %87
%85 = OpFunctionParameter  %4
%84 = OpLabel
OpBranch %92
%92 = OpLabel
OpSelectionMerge %93 None
OpSwitch %85 %97 0 %94 1 %95 2 %96
%94 = OpLabel
OpReturnValue %88
%95 = OpLabel
OpReturnValue %89
%96 = OpLabel
OpReturnValue %90
%97 = OpLabel
OpReturnValue %91
%93 = OpLabel
OpReturnValue %98
OpFunctionEnd
%100 = OpFunction  %2  None %31
%99 = OpLabel
OpBranch %101
%101 = OpLabel
%102 = OpFunctionCall  %2  %30
%103 = OpFunctionCall  %2  %37
%104 = OpFunctionCall  %2  %42
%105 = OpFunctionCall  %2  %47
%106 = OpFunctionCall  %2  %67
%107 = OpFunctionCall  %2  %73
%108 = OpFunctionCall  %2  %77
OpReturn
OpFunctionEnd