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