spv.boolInBlock.frag
// Module Version 10000
// Generated by (magic number): 80007
// Id's are bound by 102

                              Capability Shader
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint Fragment 4  "main" 74
                              ExecutionMode 4 OriginUpperLeft
                              Source GLSL 450
                              Name 4  "main"
                              Name 14  "foo(vb4;vb2;"
                              Name 12  "paramb4"
                              Name 13  "paramb2"
                              Name 17  "b1"
                              Name 25  "Buffer"
                              MemberName 25(Buffer) 0  "b2"
                              Name 27  ""
                              Name 40  "Uniform"
                              MemberName 40(Uniform) 0  "b4"
                              Name 42  ""
                              Name 60  "param"
                              Name 66  "param"
                              Name 74  "fragColor"
                              MemberDecorate 25(Buffer) 0 Offset 0
                              Decorate 25(Buffer) BufferBlock
                              Decorate 27 DescriptorSet 0
                              Decorate 27 Binding 1
                              MemberDecorate 40(Uniform) 0 Offset 0
                              Decorate 40(Uniform) Block
                              Decorate 42 DescriptorSet 0
                              Decorate 42 Binding 0
                              Decorate 74(fragColor) Location 0
               2:             TypeVoid
               3:             TypeFunction 2
               6:             TypeBool
               7:             TypeVector 6(bool) 4
               8:             TypePointer Function 7(bvec4)
               9:             TypeVector 6(bool) 2
              10:             TypePointer Function 9(bvec2)
              11:             TypeFunction 2 8(ptr) 10(ptr)
              16:             TypePointer Function 6(bool)
              18:             TypeInt 32 0
              19:     18(int) Constant 2
              24:             TypeVector 18(int) 2
      25(Buffer):             TypeStruct 24(ivec2)
              26:             TypePointer Uniform 25(Buffer)
              27:     26(ptr) Variable Uniform
              28:             TypeInt 32 1
              29:     28(int) Constant 0
              30:     6(bool) ConstantFalse
              31:    9(bvec2) ConstantComposite 30 30
              32:     18(int) Constant 1
              33:   24(ivec2) ConstantComposite 32 32
              34:     18(int) Constant 0
              35:   24(ivec2) ConstantComposite 34 34
              37:             TypePointer Uniform 24(ivec2)
              39:             TypeVector 18(int) 4
     40(Uniform):             TypeStruct 39(ivec4)
              41:             TypePointer Uniform 40(Uniform)
              42:     41(ptr) Variable Uniform
              43:             TypePointer Uniform 18(int)
              61:             TypePointer Uniform 39(ivec4)
              64:   39(ivec4) ConstantComposite 34 34 34 34
              71:             TypeFloat 32
              72:             TypeVector 71(float) 4
              73:             TypePointer Output 72(fvec4)
   74(fragColor):     73(ptr) Variable Output
              84:   71(float) Constant 0
              85:   71(float) Constant 1065353216
         4(main):           2 Function None 3
               5:             Label
       60(param):      8(ptr) Variable Function
       66(param):     10(ptr) Variable Function
              36:   24(ivec2) Select 31 33 35
              38:     37(ptr) AccessChain 27 29
                              Store 38 36
              44:     43(ptr) AccessChain 42 29 19
              45:     18(int) Load 44
              46:     6(bool) INotEqual 45 34
                              SelectionMerge 48 None
                              BranchConditional 46 47 48
              47:               Label
              49:     43(ptr)   AccessChain 42 29 34
              50:     18(int)   Load 49
              51:     6(bool)   INotEqual 50 34
              52:    9(bvec2)   CompositeConstruct 51 51
              53:   24(ivec2)   Select 52 33 35
              54:     37(ptr)   AccessChain 27 29
                                Store 54 53
                                Branch 48
              48:             Label
              55:     43(ptr) AccessChain 27 29 34
              56:     18(int) Load 55
              57:     6(bool) INotEqual 56 34
                              SelectionMerge 59 None
                              BranchConditional 57 58 59
              58:               Label
              62:     61(ptr)   AccessChain 42 29
              63:   39(ivec4)   Load 62
              65:    7(bvec4)   INotEqual 63 64
                                Store 60(param) 65
              67:           2   FunctionCall 14(foo(vb4;vb2;) 60(param) 66(param)
              68:    9(bvec2)   Load 66(param)
              69:   24(ivec2)   Select 68 33 35
              70:     37(ptr)   AccessChain 27 29
                                Store 70 69
                                Branch 59
              59:             Label
              75:     43(ptr) AccessChain 42 29 34
              76:     18(int) Load 75
              77:     6(bool) INotEqual 76 34
                              SelectionMerge 79 None
                              BranchConditional 77 78 79
              78:               Label
              80:     43(ptr)   AccessChain 42 29 32
              81:     18(int)   Load 80
              82:     6(bool)   INotEqual 81 34
                                Branch 79
              79:             Label
              83:     6(bool) Phi 77 59 82 78
              86:   71(float) Select 83 85 84
              87:   72(fvec4) CompositeConstruct 86 86 86 86
                              Store 74(fragColor) 87
              88:     43(ptr) AccessChain 42 29 34
              89:     18(int) Load 88
              90:     6(bool) INotEqual 89 34
              91:     6(bool) LogicalNot 90
                              SelectionMerge 93 None
                              BranchConditional 91 92 93
              92:               Label
              94:     43(ptr)   AccessChain 42 29 32
              95:     18(int)   Load 94
              96:     6(bool)   INotEqual 95 34
                                Branch 93
              93:             Label
              97:     6(bool) Phi 90 79 96 92
              98:   71(float) Select 97 85 84
              99:   72(fvec4) CompositeConstruct 98 98 98 98
             100:   72(fvec4) Load 74(fragColor)
             101:   72(fvec4) FSub 100 99
                              Store 74(fragColor) 101
                              Return
                              FunctionEnd
14(foo(vb4;vb2;):           2 Function None 11
     12(paramb4):      8(ptr) FunctionParameter
     13(paramb2):     10(ptr) FunctionParameter
              15:             Label
          17(b1):     16(ptr) Variable Function
              20:     16(ptr) AccessChain 12(paramb4) 19
              21:     6(bool) Load 20
                              Store 17(b1) 21
              22:     6(bool) Load 17(b1)
              23:    9(bvec2) CompositeConstruct 22 22
                              Store 13(paramb2) 23
                              Return
                              FunctionEnd
