1 spv.boolInBlock.frag 2 // Module Version 10000 3 // Generated by (magic number): 80007 4 // Id's are bound by 102 5 6 Capability Shader 7 1: ExtInstImport "GLSL.std.450" 8 MemoryModel Logical GLSL450 9 EntryPoint Fragment 4 "main" 74 10 ExecutionMode 4 OriginUpperLeft 11 Source GLSL 450 12 Name 4 "main" 13 Name 14 "foo(vb4;vb2;" 14 Name 12 "paramb4" 15 Name 13 "paramb2" 16 Name 17 "b1" 17 Name 25 "Buffer" 18 MemberName 25(Buffer) 0 "b2" 19 Name 27 "" 20 Name 40 "Uniform" 21 MemberName 40(Uniform) 0 "b4" 22 Name 42 "" 23 Name 60 "param" 24 Name 66 "param" 25 Name 74 "fragColor" 26 MemberDecorate 25(Buffer) 0 Offset 0 27 Decorate 25(Buffer) BufferBlock 28 Decorate 27 DescriptorSet 0 29 Decorate 27 Binding 1 30 MemberDecorate 40(Uniform) 0 Offset 0 31 Decorate 40(Uniform) Block 32 Decorate 42 DescriptorSet 0 33 Decorate 42 Binding 0 34 Decorate 74(fragColor) Location 0 35 2: TypeVoid 36 3: TypeFunction 2 37 6: TypeBool 38 7: TypeVector 6(bool) 4 39 8: TypePointer Function 7(bvec4) 40 9: TypeVector 6(bool) 2 41 10: TypePointer Function 9(bvec2) 42 11: TypeFunction 2 8(ptr) 10(ptr) 43 16: TypePointer Function 6(bool) 44 18: TypeInt 32 0 45 19: 18(int) Constant 2 46 24: TypeVector 18(int) 2 47 25(Buffer): TypeStruct 24(ivec2) 48 26: TypePointer Uniform 25(Buffer) 49 27: 26(ptr) Variable Uniform 50 28: TypeInt 32 1 51 29: 28(int) Constant 0 52 30: 6(bool) ConstantFalse 53 31: 9(bvec2) ConstantComposite 30 30 54 32: 18(int) Constant 1 55 33: 24(ivec2) ConstantComposite 32 32 56 34: 18(int) Constant 0 57 35: 24(ivec2) ConstantComposite 34 34 58 37: TypePointer Uniform 24(ivec2) 59 39: TypeVector 18(int) 4 60 40(Uniform): TypeStruct 39(ivec4) 61 41: TypePointer Uniform 40(Uniform) 62 42: 41(ptr) Variable Uniform 63 43: TypePointer Uniform 18(int) 64 61: TypePointer Uniform 39(ivec4) 65 64: 39(ivec4) ConstantComposite 34 34 34 34 66 71: TypeFloat 32 67 72: TypeVector 71(float) 4 68 73: TypePointer Output 72(fvec4) 69 74(fragColor): 73(ptr) Variable Output 70 84: 71(float) Constant 0 71 85: 71(float) Constant 1065353216 72 4(main): 2 Function None 3 73 5: Label 74 60(param): 8(ptr) Variable Function 75 66(param): 10(ptr) Variable Function 76 36: 24(ivec2) Select 31 33 35 77 38: 37(ptr) AccessChain 27 29 78 Store 38 36 79 44: 43(ptr) AccessChain 42 29 19 80 45: 18(int) Load 44 81 46: 6(bool) INotEqual 45 34 82 SelectionMerge 48 None 83 BranchConditional 46 47 48 84 47: Label 85 49: 43(ptr) AccessChain 42 29 34 86 50: 18(int) Load 49 87 51: 6(bool) INotEqual 50 34 88 52: 9(bvec2) CompositeConstruct 51 51 89 53: 24(ivec2) Select 52 33 35 90 54: 37(ptr) AccessChain 27 29 91 Store 54 53 92 Branch 48 93 48: Label 94 55: 43(ptr) AccessChain 27 29 34 95 56: 18(int) Load 55 96 57: 6(bool) INotEqual 56 34 97 SelectionMerge 59 None 98 BranchConditional 57 58 59 99 58: Label 100 62: 61(ptr) AccessChain 42 29 101 63: 39(ivec4) Load 62 102 65: 7(bvec4) INotEqual 63 64 103 Store 60(param) 65 104 67: 2 FunctionCall 14(foo(vb4;vb2;) 60(param) 66(param) 105 68: 9(bvec2) Load 66(param) 106 69: 24(ivec2) Select 68 33 35 107 70: 37(ptr) AccessChain 27 29 108 Store 70 69 109 Branch 59 110 59: Label 111 75: 43(ptr) AccessChain 42 29 34 112 76: 18(int) Load 75 113 77: 6(bool) INotEqual 76 34 114 SelectionMerge 79 None 115 BranchConditional 77 78 79 116 78: Label 117 80: 43(ptr) AccessChain 42 29 32 118 81: 18(int) Load 80 119 82: 6(bool) INotEqual 81 34 120 Branch 79 121 79: Label 122 83: 6(bool) Phi 77 59 82 78 123 86: 71(float) Select 83 85 84 124 87: 72(fvec4) CompositeConstruct 86 86 86 86 125 Store 74(fragColor) 87 126 88: 43(ptr) AccessChain 42 29 34 127 89: 18(int) Load 88 128 90: 6(bool) INotEqual 89 34 129 91: 6(bool) LogicalNot 90 130 SelectionMerge 93 None 131 BranchConditional 91 92 93 132 92: Label 133 94: 43(ptr) AccessChain 42 29 32 134 95: 18(int) Load 94 135 96: 6(bool) INotEqual 95 34 136 Branch 93 137 93: Label 138 97: 6(bool) Phi 90 79 96 92 139 98: 71(float) Select 97 85 84 140 99: 72(fvec4) CompositeConstruct 98 98 98 98 141 100: 72(fvec4) Load 74(fragColor) 142 101: 72(fvec4) FSub 100 99 143 Store 74(fragColor) 101 144 Return 145 FunctionEnd 146 14(foo(vb4;vb2;): 2 Function None 11 147 12(paramb4): 8(ptr) FunctionParameter 148 13(paramb2): 10(ptr) FunctionParameter 149 15: Label 150 17(b1): 16(ptr) Variable Function 151 20: 16(ptr) AccessChain 12(paramb4) 19 152 21: 6(bool) Load 20 153 Store 17(b1) 21 154 22: 6(bool) Load 17(b1) 155 23: 9(bvec2) CompositeConstruct 22 22 156 Store 13(paramb2) 23 157 Return 158 FunctionEnd 159