| spv.multiStruct.comp |
| // Module Version 10000 |
| // Generated by (magic number): 80008 |
| // Id's are bound by 161 |
| |
| Capability Shader |
| 1: ExtInstImport "GLSL.std.450" |
| MemoryModel Logical GLSL450 |
| EntryPoint GLCompute 4 "main" |
| ExecutionMode 4 LocalSize 1 1 1 |
| Source GLSL 450 |
| Name 4 "main" |
| Name 12 "MyStruct" |
| MemberName 12(MyStruct) 0 "foo" |
| MemberName 12(MyStruct) 1 "sb" |
| Name 14 "t" |
| Name 16 "MyStruct" |
| MemberName 16(MyStruct) 0 "foo" |
| MemberName 16(MyStruct) 1 "sb" |
| Name 17 "SSBO0" |
| MemberName 17(SSBO0) 0 "a" |
| Name 19 "inBuf" |
| Name 39 "SSBO1" |
| MemberName 39(SSBO1) 0 "b" |
| Name 41 "outBuf" |
| Name 58 "MyStruct" |
| MemberName 58(MyStruct) 0 "foo" |
| MemberName 58(MyStruct) 1 "sb" |
| Name 59 "UBO" |
| MemberName 59(UBO) 0 "c" |
| Name 61 "uBuf" |
| Name 86 "Nested" |
| MemberName 86(Nested) 0 "f" |
| MemberName 86(Nested) 1 "S" |
| Name 88 "n" |
| Name 90 "Nested" |
| MemberName 90(Nested) 0 "f" |
| MemberName 90(Nested) 1 "S" |
| Name 91 "UBON" |
| MemberName 91(UBON) 0 "N1" |
| Name 93 "uBufN" |
| Name 126 "Nested" |
| MemberName 126(Nested) 0 "f" |
| MemberName 126(Nested) 1 "S" |
| Name 127 "SSBO1N" |
| MemberName 127(SSBO1N) 0 "N2" |
| Name 129 "outBufN" |
| Decorate 15 ArrayStride 8 |
| MemberDecorate 16(MyStruct) 0 Offset 0 |
| MemberDecorate 16(MyStruct) 1 Offset 16 |
| MemberDecorate 17(SSBO0) 0 Offset 0 |
| Decorate 17(SSBO0) BufferBlock |
| Decorate 19(inBuf) DescriptorSet 0 |
| Decorate 19(inBuf) Binding 0 |
| MemberDecorate 39(SSBO1) 0 Offset 0 |
| Decorate 39(SSBO1) BufferBlock |
| Decorate 41(outBuf) DescriptorSet 0 |
| Decorate 41(outBuf) Binding 1 |
| Decorate 57 ArrayStride 16 |
| MemberDecorate 58(MyStruct) 0 Offset 0 |
| MemberDecorate 58(MyStruct) 1 Offset 32 |
| MemberDecorate 59(UBO) 0 Offset 0 |
| Decorate 59(UBO) Block |
| Decorate 61(uBuf) DescriptorSet 0 |
| Decorate 61(uBuf) Binding 2 |
| Decorate 89 ArrayStride 48 |
| MemberDecorate 90(Nested) 0 Offset 0 |
| MemberDecorate 90(Nested) 1 Offset 16 |
| MemberDecorate 91(UBON) 0 Offset 0 |
| Decorate 91(UBON) Block |
| Decorate 93(uBufN) DescriptorSet 0 |
| Decorate 93(uBufN) Binding 2 |
| Decorate 125 ArrayStride 24 |
| MemberDecorate 126(Nested) 0 Offset 0 |
| MemberDecorate 126(Nested) 1 Offset 8 |
| MemberDecorate 127(SSBO1N) 0 Offset 0 |
| Decorate 127(SSBO1N) BufferBlock |
| Decorate 129(outBufN) DescriptorSet 0 |
| Decorate 129(outBufN) Binding 1 |
| 2: TypeVoid |
| 3: TypeFunction 2 |
| 6: TypeFloat 32 |
| 7: TypeVector 6(float) 2 |
| 8: TypeInt 32 0 |
| 9: 8(int) Constant 2 |
| 10: TypeArray 7(fvec2) 9 |
| 11: TypeBool |
| 12(MyStruct): TypeStruct 10 11(bool) |
| 13: TypePointer Function 12(MyStruct) |
| 15: TypeArray 7(fvec2) 9 |
| 16(MyStruct): TypeStruct 15 8(int) |
| 17(SSBO0): TypeStruct 16(MyStruct) |
| 18: TypePointer Uniform 17(SSBO0) |
| 19(inBuf): 18(ptr) Variable Uniform |
| 20: TypeInt 32 1 |
| 21: 20(int) Constant 0 |
| 22: TypePointer Uniform 16(MyStruct) |
| 26: TypePointer Function 10 |
| 29: TypePointer Function 7(fvec2) |
| 32: 20(int) Constant 1 |
| 35: 8(int) Constant 0 |
| 37: TypePointer Function 11(bool) |
| 39(SSBO1): TypeStruct 16(MyStruct) |
| 40: TypePointer Uniform 39(SSBO1) |
| 41(outBuf): 40(ptr) Variable Uniform |
| 45: TypePointer Uniform 15 |
| 48: TypePointer Uniform 7(fvec2) |
| 53: 8(int) Constant 1 |
| 55: TypePointer Uniform 8(int) |
| 57: TypeArray 7(fvec2) 9 |
| 58(MyStruct): TypeStruct 57 8(int) |
| 59(UBO): TypeStruct 58(MyStruct) |
| 60: TypePointer Uniform 59(UBO) |
| 61(uBuf): 60(ptr) Variable Uniform |
| 62: TypePointer Uniform 58(MyStruct) |
| 85: TypeArray 12(MyStruct) 9 |
| 86(Nested): TypeStruct 6(float) 85 |
| 87: TypePointer Function 86(Nested) |
| 89: TypeArray 58(MyStruct) 9 |
| 90(Nested): TypeStruct 6(float) 89 |
| 91(UBON): TypeStruct 90(Nested) |
| 92: TypePointer Uniform 91(UBON) |
| 93(uBufN): 92(ptr) Variable Uniform |
| 94: TypePointer Uniform 90(Nested) |
| 98: TypePointer Function 6(float) |
| 101: TypePointer Function 85 |
| 125: TypeArray 16(MyStruct) 9 |
| 126(Nested): TypeStruct 6(float) 125 |
| 127(SSBO1N): TypeStruct 126(Nested) |
| 128: TypePointer Uniform 127(SSBO1N) |
| 129(outBufN): 128(ptr) Variable Uniform |
| 131: TypePointer Uniform 126(Nested) |
| 134: TypePointer Uniform 6(float) |
| 137: TypePointer Uniform 125 |
| 4(main): 2 Function None 3 |
| 5: Label |
| 14(t): 13(ptr) Variable Function |
| 88(n): 87(ptr) Variable Function |
| 23: 22(ptr) AccessChain 19(inBuf) 21 |
| 24:16(MyStruct) Load 23 |
| 25: 15 CompositeExtract 24 0 |
| 27: 26(ptr) AccessChain 14(t) 21 |
| 28: 7(fvec2) CompositeExtract 25 0 |
| 30: 29(ptr) AccessChain 27 21 |
| Store 30 28 |
| 31: 7(fvec2) CompositeExtract 25 1 |
| 33: 29(ptr) AccessChain 27 32 |
| Store 33 31 |
| 34: 8(int) CompositeExtract 24 1 |
| 36: 11(bool) INotEqual 34 35 |
| 38: 37(ptr) AccessChain 14(t) 32 |
| Store 38 36 |
| 42:12(MyStruct) Load 14(t) |
| 43: 22(ptr) AccessChain 41(outBuf) 21 |
| 44: 10 CompositeExtract 42 0 |
| 46: 45(ptr) AccessChain 43 21 |
| 47: 7(fvec2) CompositeExtract 44 0 |
| 49: 48(ptr) AccessChain 46 21 |
| Store 49 47 |
| 50: 7(fvec2) CompositeExtract 44 1 |
| 51: 48(ptr) AccessChain 46 32 |
| Store 51 50 |
| 52: 11(bool) CompositeExtract 42 1 |
| 54: 8(int) Select 52 53 35 |
| 56: 55(ptr) AccessChain 43 32 |
| Store 56 54 |
| 63: 62(ptr) AccessChain 61(uBuf) 21 |
| 64:58(MyStruct) Load 63 |
| 65: 57 CompositeExtract 64 0 |
| 66: 26(ptr) AccessChain 14(t) 21 |
| 67: 7(fvec2) CompositeExtract 65 0 |
| 68: 29(ptr) AccessChain 66 21 |
| Store 68 67 |
| 69: 7(fvec2) CompositeExtract 65 1 |
| 70: 29(ptr) AccessChain 66 32 |
| Store 70 69 |
| 71: 8(int) CompositeExtract 64 1 |
| 72: 11(bool) INotEqual 71 35 |
| 73: 37(ptr) AccessChain 14(t) 32 |
| Store 73 72 |
| 74:12(MyStruct) Load 14(t) |
| 75: 22(ptr) AccessChain 41(outBuf) 21 |
| 76: 10 CompositeExtract 74 0 |
| 77: 45(ptr) AccessChain 75 21 |
| 78: 7(fvec2) CompositeExtract 76 0 |
| 79: 48(ptr) AccessChain 77 21 |
| Store 79 78 |
| 80: 7(fvec2) CompositeExtract 76 1 |
| 81: 48(ptr) AccessChain 77 32 |
| Store 81 80 |
| 82: 11(bool) CompositeExtract 74 1 |
| 83: 8(int) Select 82 53 35 |
| 84: 55(ptr) AccessChain 75 32 |
| Store 84 83 |
| 95: 94(ptr) AccessChain 93(uBufN) 21 |
| 96: 90(Nested) Load 95 |
| 97: 6(float) CompositeExtract 96 0 |
| 99: 98(ptr) AccessChain 88(n) 21 |
| Store 99 97 |
| 100: 89 CompositeExtract 96 1 |
| 102: 101(ptr) AccessChain 88(n) 32 |
| 103:58(MyStruct) CompositeExtract 100 0 |
| 104: 13(ptr) AccessChain 102 21 |
| 105: 57 CompositeExtract 103 0 |
| 106: 26(ptr) AccessChain 104 21 |
| 107: 7(fvec2) CompositeExtract 105 0 |
| 108: 29(ptr) AccessChain 106 21 |
| Store 108 107 |
| 109: 7(fvec2) CompositeExtract 105 1 |
| 110: 29(ptr) AccessChain 106 32 |
| Store 110 109 |
| 111: 8(int) CompositeExtract 103 1 |
| 112: 11(bool) INotEqual 111 35 |
| 113: 37(ptr) AccessChain 104 32 |
| Store 113 112 |
| 114:58(MyStruct) CompositeExtract 100 1 |
| 115: 13(ptr) AccessChain 102 32 |
| 116: 57 CompositeExtract 114 0 |
| 117: 26(ptr) AccessChain 115 21 |
| 118: 7(fvec2) CompositeExtract 116 0 |
| 119: 29(ptr) AccessChain 117 21 |
| Store 119 118 |
| 120: 7(fvec2) CompositeExtract 116 1 |
| 121: 29(ptr) AccessChain 117 32 |
| Store 121 120 |
| 122: 8(int) CompositeExtract 114 1 |
| 123: 11(bool) INotEqual 122 35 |
| 124: 37(ptr) AccessChain 115 32 |
| Store 124 123 |
| 130: 86(Nested) Load 88(n) |
| 132: 131(ptr) AccessChain 129(outBufN) 21 |
| 133: 6(float) CompositeExtract 130 0 |
| 135: 134(ptr) AccessChain 132 21 |
| Store 135 133 |
| 136: 85 CompositeExtract 130 1 |
| 138: 137(ptr) AccessChain 132 32 |
| 139:12(MyStruct) CompositeExtract 136 0 |
| 140: 22(ptr) AccessChain 138 21 |
| 141: 10 CompositeExtract 139 0 |
| 142: 45(ptr) AccessChain 140 21 |
| 143: 7(fvec2) CompositeExtract 141 0 |
| 144: 48(ptr) AccessChain 142 21 |
| Store 144 143 |
| 145: 7(fvec2) CompositeExtract 141 1 |
| 146: 48(ptr) AccessChain 142 32 |
| Store 146 145 |
| 147: 11(bool) CompositeExtract 139 1 |
| 148: 8(int) Select 147 53 35 |
| 149: 55(ptr) AccessChain 140 32 |
| Store 149 148 |
| 150:12(MyStruct) CompositeExtract 136 1 |
| 151: 22(ptr) AccessChain 138 32 |
| 152: 10 CompositeExtract 150 0 |
| 153: 45(ptr) AccessChain 151 21 |
| 154: 7(fvec2) CompositeExtract 152 0 |
| 155: 48(ptr) AccessChain 153 21 |
| Store 155 154 |
| 156: 7(fvec2) CompositeExtract 152 1 |
| 157: 48(ptr) AccessChain 153 32 |
| Store 157 156 |
| 158: 11(bool) CompositeExtract 150 1 |
| 159: 8(int) Select 158 53 35 |
| 160: 55(ptr) AccessChain 151 32 |
| Store 160 159 |
| Return |
| FunctionEnd |