glslang-zig/Test/baseResults/spv.expect_assume.expectEXT.comp.out
Matthew Moulton 5073d93ec4
Apply GLSL memory decorations to top-level OpVariable
Apply memory decorations from GLSL source to the top-level OpVariable.
Previously, these decorations would only be applied to individual
members. While this is correct behavior, it is more convenient for some
front ends to see the decorations (specifically ReadOnly and WriteOnly)
applied to the whole variable rather than individual members.
2024-08-28 17:46:16 -04:00

277 lines
14 KiB
Text

spv.expect_assume.expectEXT.comp
// Module Version 10000
// Generated by (magic number): 8000b
// Id's are bound by 178
Capability Shader
Capability ExpectAssumeKHR
Extension "SPV_KHR_expect_assume"
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint GLCompute 4 "main"
ExecutionMode 4 LocalSize 8 1 1
Source GLSL 450
SourceExtension "GL_EXT_expect_assume"
Name 4 "main"
Name 8 "x"
Name 18 "roblock"
MemberName 18(roblock) 0 "b"
MemberName 18(roblock) 1 "bv2"
MemberName 18(roblock) 2 "bv3"
MemberName 18(roblock) 3 "bv4"
MemberName 18(roblock) 4 "i"
MemberName 18(roblock) 5 "iv2"
MemberName 18(roblock) 6 "iv3"
MemberName 18(roblock) 7 "iv4"
MemberName 18(roblock) 8 "ui"
MemberName 18(roblock) 9 "uv2"
MemberName 18(roblock) 10 "uv3"
MemberName 18(roblock) 11 "uv4"
Name 20 "ro"
Decorate 18(roblock) BufferBlock
MemberDecorate 18(roblock) 0 NonWritable
MemberDecorate 18(roblock) 0 Offset 0
MemberDecorate 18(roblock) 1 NonWritable
MemberDecorate 18(roblock) 1 Offset 8
MemberDecorate 18(roblock) 2 NonWritable
MemberDecorate 18(roblock) 2 Offset 16
MemberDecorate 18(roblock) 3 NonWritable
MemberDecorate 18(roblock) 3 Offset 32
MemberDecorate 18(roblock) 4 NonWritable
MemberDecorate 18(roblock) 4 Offset 48
MemberDecorate 18(roblock) 5 NonWritable
MemberDecorate 18(roblock) 5 Offset 56
MemberDecorate 18(roblock) 6 NonWritable
MemberDecorate 18(roblock) 6 Offset 64
MemberDecorate 18(roblock) 7 NonWritable
MemberDecorate 18(roblock) 7 Offset 80
MemberDecorate 18(roblock) 8 NonWritable
MemberDecorate 18(roblock) 8 Offset 96
MemberDecorate 18(roblock) 9 NonWritable
MemberDecorate 18(roblock) 9 Offset 104
MemberDecorate 18(roblock) 10 NonWritable
MemberDecorate 18(roblock) 10 Offset 112
MemberDecorate 18(roblock) 11 NonWritable
MemberDecorate 18(roblock) 11 Offset 128
Decorate 20(ro) NonWritable
Decorate 20(ro) Binding 0
Decorate 20(ro) DescriptorSet 0
Decorate 177 BuiltIn WorkgroupSize
2: TypeVoid
3: TypeFunction 2
6: TypeInt 32 1
7: TypePointer Function 6(int)
9: 6(int) Constant 0
10: TypeBool
11: TypeInt 32 0
12: TypeVector 11(int) 2
13: TypeVector 11(int) 3
14: TypeVector 11(int) 4
15: TypeVector 6(int) 2
16: TypeVector 6(int) 3
17: TypeVector 6(int) 4
18(roblock): TypeStruct 11(int) 12(ivec2) 13(ivec3) 14(ivec4) 6(int) 15(ivec2) 16(ivec3) 17(ivec4) 11(int) 12(ivec2) 13(ivec3) 14(ivec4)
19: TypePointer Uniform 18(roblock)
20(ro): 19(ptr) Variable Uniform
21: TypePointer Uniform 11(int)
24: 11(int) Constant 0
26: 10(bool) ConstantTrue
32: 6(int) Constant 1
33: TypePointer Uniform 12(ivec2)
36: TypeVector 10(bool) 2
37: 12(ivec2) ConstantComposite 24 24
39: 10(bool) ConstantFalse
40: 36(bvec2) ConstantComposite 26 39
48: 6(int) Constant 2
49: TypePointer Uniform 13(ivec3)
52: TypeVector 10(bool) 3
53: 13(ivec3) ConstantComposite 24 24 24
55: 52(bvec3) ConstantComposite 26 39 26
63: 6(int) Constant 3
64: TypePointer Uniform 14(ivec4)
67: TypeVector 10(bool) 4
68: 14(ivec4) ConstantComposite 24 24 24 24
70: 67(bvec4) ConstantComposite 39 26 39 26
79: 6(int) Constant 4
80: TypePointer Uniform 6(int)
83: 6(int) Constant 10
89: 6(int) Constant 5
90: TypePointer Uniform 15(ivec2)
93: 6(int) Constant 11
94: 6(int) Constant 4294967274
95: 15(ivec2) ConstantComposite 93 94
103: 6(int) Constant 6
104: TypePointer Uniform 16(ivec3)
107: 6(int) Constant 33
108: 16(ivec3) ConstantComposite 93 94 107
116: 6(int) Constant 7
117: TypePointer Uniform 17(ivec4)
120: 6(int) Constant 44
121: 17(ivec4) ConstantComposite 93 94 107 120
130: 6(int) Constant 8
133: 11(int) Constant 10
139: 6(int) Constant 9
142: 11(int) Constant 11
143: 11(int) Constant 22
144: 12(ivec2) ConstantComposite 142 143
154: 11(int) Constant 33
155: 13(ivec3) ConstantComposite 142 143 154
165: 11(int) Constant 44
166: 14(ivec4) ConstantComposite 142 143 154 165
175: 11(int) Constant 8
176: 11(int) Constant 1
177: 13(ivec3) ConstantComposite 175 176 176
4(main): 2 Function None 3
5: Label
8(x): 7(ptr) Variable Function
Store 8(x) 9
22: 21(ptr) AccessChain 20(ro) 9
23: 11(int) Load 22
25: 10(bool) INotEqual 23 24
27: 10(bool) ExpectKHR 25 26
28: 10(bool) LogicalEqual 27 26
29: 10(bool) LogicalNot 28
SelectionMerge 31 None
BranchConditional 29 30 31
30: Label
34: 33(ptr) AccessChain 20(ro) 32
35: 12(ivec2) Load 34
38: 36(bvec2) INotEqual 35 37
41: 36(bvec2) ExpectKHR 38 40
42: 36(bvec2) LogicalEqual 41 40
43: 10(bool) All 42
Branch 31
31: Label
44: 10(bool) Phi 28 5 43 30
45: 10(bool) LogicalNot 44
SelectionMerge 47 None
BranchConditional 45 46 47
46: Label
50: 49(ptr) AccessChain 20(ro) 48
51: 13(ivec3) Load 50
54: 52(bvec3) INotEqual 51 53
56: 52(bvec3) ExpectKHR 54 55
57: 52(bvec3) LogicalEqual 56 55
58: 10(bool) All 57
Branch 47
47: Label
59: 10(bool) Phi 44 31 58 46
60: 10(bool) LogicalNot 59
SelectionMerge 62 None
BranchConditional 60 61 62
61: Label
65: 64(ptr) AccessChain 20(ro) 63
66: 14(ivec4) Load 65
69: 67(bvec4) INotEqual 66 68
71: 67(bvec4) ExpectKHR 69 70
72: 67(bvec4) LogicalEqual 71 70
73: 10(bool) All 72
Branch 62
62: Label
74: 10(bool) Phi 59 47 73 61
SelectionMerge 76 None
BranchConditional 74 75 76
75: Label
77: 6(int) Load 8(x)
78: 6(int) IAdd 77 32
Store 8(x) 78
Branch 76
76: Label
81: 80(ptr) AccessChain 20(ro) 79
82: 6(int) Load 81
84: 6(int) ExpectKHR 82 83
85: 10(bool) IEqual 84 83
86: 10(bool) LogicalNot 85
SelectionMerge 88 None
BranchConditional 86 87 88
87: Label
91: 90(ptr) AccessChain 20(ro) 89
92: 15(ivec2) Load 91
96: 15(ivec2) ExpectKHR 92 95
97: 36(bvec2) IEqual 96 95
98: 10(bool) All 97
Branch 88
88: Label
99: 10(bool) Phi 85 76 98 87
100: 10(bool) LogicalNot 99
SelectionMerge 102 None
BranchConditional 100 101 102
101: Label
105: 104(ptr) AccessChain 20(ro) 103
106: 16(ivec3) Load 105
109: 16(ivec3) ExpectKHR 106 108
110: 52(bvec3) IEqual 109 108
111: 10(bool) All 110
Branch 102
102: Label
112: 10(bool) Phi 99 88 111 101
113: 10(bool) LogicalNot 112
SelectionMerge 115 None
BranchConditional 113 114 115
114: Label
118: 117(ptr) AccessChain 20(ro) 116
119: 17(ivec4) Load 118
122: 17(ivec4) ExpectKHR 119 121
123: 67(bvec4) IEqual 122 121
124: 10(bool) All 123
Branch 115
115: Label
125: 10(bool) Phi 112 102 124 114
SelectionMerge 127 None
BranchConditional 125 126 127
126: Label
128: 6(int) Load 8(x)
129: 6(int) IAdd 128 32
Store 8(x) 129
Branch 127
127: Label
131: 21(ptr) AccessChain 20(ro) 130
132: 11(int) Load 131
134: 11(int) ExpectKHR 132 133
135: 10(bool) IEqual 134 133
136: 10(bool) LogicalNot 135
SelectionMerge 138 None
BranchConditional 136 137 138
137: Label
140: 33(ptr) AccessChain 20(ro) 139
141: 12(ivec2) Load 140
145: 12(ivec2) ExpectKHR 141 144
146: 36(bvec2) IEqual 145 144
147: 10(bool) All 146
Branch 138
138: Label
148: 10(bool) Phi 135 127 147 137
149: 10(bool) LogicalNot 148
SelectionMerge 151 None
BranchConditional 149 150 151
150: Label
152: 49(ptr) AccessChain 20(ro) 83
153: 13(ivec3) Load 152
156: 13(ivec3) ExpectKHR 153 155
157: 52(bvec3) IEqual 156 155
158: 10(bool) All 157
Branch 151
151: Label
159: 10(bool) Phi 148 138 158 150
160: 10(bool) LogicalNot 159
SelectionMerge 162 None
BranchConditional 160 161 162
161: Label
163: 64(ptr) AccessChain 20(ro) 93
164: 14(ivec4) Load 163
167: 14(ivec4) ExpectKHR 164 166
168: 67(bvec4) IEqual 167 166
169: 10(bool) All 168
Branch 162
162: Label
170: 10(bool) Phi 159 151 169 161
SelectionMerge 172 None
BranchConditional 170 171 172
171: Label
173: 6(int) Load 8(x)
174: 6(int) IAdd 173 32
Store 8(x) 174
Branch 172
172: Label
Return
FunctionEnd