Generate separate stores for partially swizzled memory stores
Full vector and fully specified vector swizzle stores are not affected by this change, only partial swizzles ie swizzles with fewer components than the vector being stored to. Previously the vector being stored to loaded and any components not specified in the swizzle were used to create a full store to the vector. While this change generates more SPIR-V instructions, it is necessary for correctness. Fixes #2518.
This commit is contained in:
parent
9158061398
commit
6d5b40f051
50 changed files with 31343 additions and 26594 deletions
|
|
@ -2323,7 +2323,7 @@ local_size = (32, 16, 1)
|
|||
|
||||
// Module Version 10300
|
||||
// Generated by (magic number): 8000a
|
||||
// Id's are bound by 369
|
||||
// Id's are bound by 403
|
||||
|
||||
Capability Shader
|
||||
Capability Float64
|
||||
|
|
@ -2332,7 +2332,7 @@ local_size = (32, 16, 1)
|
|||
Capability GroupNonUniformBallot
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint GLCompute 4 "CSMain" 364
|
||||
EntryPoint GLCompute 4 "CSMain" 398
|
||||
ExecutionMode 4 LocalSize 32 16 1
|
||||
Source HLSL 500
|
||||
Name 4 "CSMain"
|
||||
|
|
@ -2346,9 +2346,9 @@ local_size = (32, 16, 1)
|
|||
Name 22 "data"
|
||||
MemberName 22(data) 0 "@data"
|
||||
Name 24 "data"
|
||||
Name 362 "dti"
|
||||
Name 364 "dti"
|
||||
Name 366 "param"
|
||||
Name 396 "dti"
|
||||
Name 398 "dti"
|
||||
Name 400 "param"
|
||||
MemberDecorate 20(Types) 0 Offset 0
|
||||
MemberDecorate 20(Types) 1 Offset 16
|
||||
MemberDecorate 20(Types) 2 Offset 32
|
||||
|
|
@ -2358,7 +2358,7 @@ local_size = (32, 16, 1)
|
|||
Decorate 22(data) BufferBlock
|
||||
Decorate 24(data) DescriptorSet 0
|
||||
Decorate 24(data) Binding 0
|
||||
Decorate 364(dti) BuiltIn GlobalInvocationId
|
||||
Decorate 398(dti) BuiltIn GlobalInvocationId
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeInt 32 0
|
||||
|
|
@ -2384,33 +2384,35 @@ local_size = (32, 16, 1)
|
|||
35: 6(int) Constant 3
|
||||
42: TypePointer Uniform 6(int)
|
||||
51: TypeVector 6(int) 2
|
||||
72: 14(int) Constant 1
|
||||
75: TypePointer Uniform 15(ivec4)
|
||||
84: TypePointer Uniform 14(int)
|
||||
93: TypeVector 14(int) 2
|
||||
105: TypeVector 14(int) 3
|
||||
115: 14(int) Constant 2
|
||||
118: TypePointer Uniform 17(fvec4)
|
||||
127: TypePointer Uniform 16(float)
|
||||
136: TypeVector 16(float) 2
|
||||
148: TypeVector 16(float) 3
|
||||
158: 14(int) Constant 3
|
||||
161: TypePointer Uniform 19(f64vec4)
|
||||
170: TypePointer Uniform 18(float64_t)
|
||||
179: TypeVector 18(float64_t) 2
|
||||
191: TypeVector 18(float64_t) 3
|
||||
357: TypeBool
|
||||
363: TypePointer Input 7(ivec3)
|
||||
364(dti): 363(ptr) Variable Input
|
||||
58: 6(int) Constant 1
|
||||
73: 6(int) Constant 2
|
||||
78: 14(int) Constant 1
|
||||
81: TypePointer Uniform 15(ivec4)
|
||||
90: TypePointer Uniform 14(int)
|
||||
99: TypeVector 14(int) 2
|
||||
112: TypeVector 14(int) 3
|
||||
125: 14(int) Constant 2
|
||||
128: TypePointer Uniform 17(fvec4)
|
||||
137: TypePointer Uniform 16(float)
|
||||
146: TypeVector 16(float) 2
|
||||
159: TypeVector 16(float) 3
|
||||
172: 14(int) Constant 3
|
||||
175: TypePointer Uniform 19(f64vec4)
|
||||
184: TypePointer Uniform 18(float64_t)
|
||||
193: TypeVector 18(float64_t) 2
|
||||
206: TypeVector 18(float64_t) 3
|
||||
391: TypeBool
|
||||
397: TypePointer Input 7(ivec3)
|
||||
398(dti): 397(ptr) Variable Input
|
||||
4(CSMain): 2 Function None 3
|
||||
5: Label
|
||||
362(dti): 8(ptr) Variable Function
|
||||
366(param): 8(ptr) Variable Function
|
||||
365: 7(ivec3) Load 364(dti)
|
||||
Store 362(dti) 365
|
||||
367: 7(ivec3) Load 362(dti)
|
||||
Store 366(param) 367
|
||||
368: 2 FunctionCall 11(@CSMain(vu3;) 366(param)
|
||||
396(dti): 8(ptr) Variable Function
|
||||
400(param): 8(ptr) Variable Function
|
||||
399: 7(ivec3) Load 398(dti)
|
||||
Store 396(dti) 399
|
||||
401: 7(ivec3) Load 396(dti)
|
||||
Store 400(param) 401
|
||||
402: 2 FunctionCall 11(@CSMain(vu3;) 400(param)
|
||||
Return
|
||||
FunctionEnd
|
||||
11(@CSMain(vu3;): 2 Function None 9
|
||||
|
|
@ -2442,326 +2444,382 @@ local_size = (32, 16, 1)
|
|||
53: 13(ivec4) Load 52
|
||||
54: 51(ivec2) VectorShuffle 53 53 0 1
|
||||
55: 51(ivec2) GroupNonUniformIAdd 35 InclusiveScan 54
|
||||
56: 32(ptr) AccessChain 24(data) 25 48 25
|
||||
57: 13(ivec4) Load 56
|
||||
58: 13(ivec4) VectorShuffle 57 55 4 5 2 3
|
||||
Store 56 58
|
||||
59: 27(ptr) AccessChain 10(dti) 26
|
||||
60: 6(int) Load 59
|
||||
56: 42(ptr) AccessChain 24(data) 25 48 25 26
|
||||
57: 6(int) CompositeExtract 55 0
|
||||
Store 56 57
|
||||
59: 42(ptr) AccessChain 24(data) 25 48 25 58
|
||||
60: 6(int) CompositeExtract 55 1
|
||||
Store 59 60
|
||||
61: 27(ptr) AccessChain 10(dti) 26
|
||||
62: 6(int) Load 61
|
||||
63: 32(ptr) AccessChain 24(data) 25 62 25
|
||||
64: 13(ivec4) Load 63
|
||||
65: 7(ivec3) VectorShuffle 64 64 0 1 2
|
||||
66: 7(ivec3) GroupNonUniformIAdd 35 InclusiveScan 65
|
||||
67: 32(ptr) AccessChain 24(data) 25 60 25
|
||||
68: 13(ivec4) Load 67
|
||||
69: 13(ivec4) VectorShuffle 68 66 4 5 6 3
|
||||
Store 67 69
|
||||
70: 27(ptr) AccessChain 10(dti) 26
|
||||
71: 6(int) Load 70
|
||||
73: 27(ptr) AccessChain 10(dti) 26
|
||||
74: 6(int) Load 73
|
||||
76: 75(ptr) AccessChain 24(data) 25 74 72
|
||||
77: 15(ivec4) Load 76
|
||||
78: 15(ivec4) GroupNonUniformIAdd 35 InclusiveScan 77
|
||||
79: 75(ptr) AccessChain 24(data) 25 71 72
|
||||
Store 79 78
|
||||
80: 27(ptr) AccessChain 10(dti) 26
|
||||
81: 6(int) Load 80
|
||||
82: 27(ptr) AccessChain 10(dti) 26
|
||||
83: 6(int) Load 82
|
||||
85: 84(ptr) AccessChain 24(data) 25 83 72 26
|
||||
86: 14(int) Load 85
|
||||
87: 14(int) GroupNonUniformIAdd 35 InclusiveScan 86
|
||||
88: 84(ptr) AccessChain 24(data) 25 81 72 26
|
||||
Store 88 87
|
||||
89: 27(ptr) AccessChain 10(dti) 26
|
||||
90: 6(int) Load 89
|
||||
91: 27(ptr) AccessChain 10(dti) 26
|
||||
92: 6(int) Load 91
|
||||
94: 75(ptr) AccessChain 24(data) 25 92 72
|
||||
95: 15(ivec4) Load 94
|
||||
96: 93(ivec2) VectorShuffle 95 95 0 1
|
||||
97: 93(ivec2) GroupNonUniformIAdd 35 InclusiveScan 96
|
||||
98: 75(ptr) AccessChain 24(data) 25 90 72
|
||||
99: 15(ivec4) Load 98
|
||||
100: 15(ivec4) VectorShuffle 99 97 4 5 2 3
|
||||
Store 98 100
|
||||
101: 27(ptr) AccessChain 10(dti) 26
|
||||
102: 6(int) Load 101
|
||||
103: 27(ptr) AccessChain 10(dti) 26
|
||||
104: 6(int) Load 103
|
||||
106: 75(ptr) AccessChain 24(data) 25 104 72
|
||||
107: 15(ivec4) Load 106
|
||||
108: 105(ivec3) VectorShuffle 107 107 0 1 2
|
||||
109: 105(ivec3) GroupNonUniformIAdd 35 InclusiveScan 108
|
||||
110: 75(ptr) AccessChain 24(data) 25 102 72
|
||||
111: 15(ivec4) Load 110
|
||||
112: 15(ivec4) VectorShuffle 111 109 4 5 6 3
|
||||
Store 110 112
|
||||
113: 27(ptr) AccessChain 10(dti) 26
|
||||
114: 6(int) Load 113
|
||||
116: 27(ptr) AccessChain 10(dti) 26
|
||||
117: 6(int) Load 116
|
||||
119: 118(ptr) AccessChain 24(data) 25 117 115
|
||||
120: 17(fvec4) Load 119
|
||||
121: 17(fvec4) GroupNonUniformFAdd 35 InclusiveScan 120
|
||||
122: 118(ptr) AccessChain 24(data) 25 114 115
|
||||
Store 122 121
|
||||
63: 27(ptr) AccessChain 10(dti) 26
|
||||
64: 6(int) Load 63
|
||||
65: 32(ptr) AccessChain 24(data) 25 64 25
|
||||
66: 13(ivec4) Load 65
|
||||
67: 7(ivec3) VectorShuffle 66 66 0 1 2
|
||||
68: 7(ivec3) GroupNonUniformIAdd 35 InclusiveScan 67
|
||||
69: 42(ptr) AccessChain 24(data) 25 62 25 26
|
||||
70: 6(int) CompositeExtract 68 0
|
||||
Store 69 70
|
||||
71: 42(ptr) AccessChain 24(data) 25 62 25 58
|
||||
72: 6(int) CompositeExtract 68 1
|
||||
Store 71 72
|
||||
74: 42(ptr) AccessChain 24(data) 25 62 25 73
|
||||
75: 6(int) CompositeExtract 68 2
|
||||
Store 74 75
|
||||
76: 27(ptr) AccessChain 10(dti) 26
|
||||
77: 6(int) Load 76
|
||||
79: 27(ptr) AccessChain 10(dti) 26
|
||||
80: 6(int) Load 79
|
||||
82: 81(ptr) AccessChain 24(data) 25 80 78
|
||||
83: 15(ivec4) Load 82
|
||||
84: 15(ivec4) GroupNonUniformIAdd 35 InclusiveScan 83
|
||||
85: 81(ptr) AccessChain 24(data) 25 77 78
|
||||
Store 85 84
|
||||
86: 27(ptr) AccessChain 10(dti) 26
|
||||
87: 6(int) Load 86
|
||||
88: 27(ptr) AccessChain 10(dti) 26
|
||||
89: 6(int) Load 88
|
||||
91: 90(ptr) AccessChain 24(data) 25 89 78 26
|
||||
92: 14(int) Load 91
|
||||
93: 14(int) GroupNonUniformIAdd 35 InclusiveScan 92
|
||||
94: 90(ptr) AccessChain 24(data) 25 87 78 26
|
||||
Store 94 93
|
||||
95: 27(ptr) AccessChain 10(dti) 26
|
||||
96: 6(int) Load 95
|
||||
97: 27(ptr) AccessChain 10(dti) 26
|
||||
98: 6(int) Load 97
|
||||
100: 81(ptr) AccessChain 24(data) 25 98 78
|
||||
101: 15(ivec4) Load 100
|
||||
102: 99(ivec2) VectorShuffle 101 101 0 1
|
||||
103: 99(ivec2) GroupNonUniformIAdd 35 InclusiveScan 102
|
||||
104: 90(ptr) AccessChain 24(data) 25 96 78 26
|
||||
105: 14(int) CompositeExtract 103 0
|
||||
Store 104 105
|
||||
106: 90(ptr) AccessChain 24(data) 25 96 78 58
|
||||
107: 14(int) CompositeExtract 103 1
|
||||
Store 106 107
|
||||
108: 27(ptr) AccessChain 10(dti) 26
|
||||
109: 6(int) Load 108
|
||||
110: 27(ptr) AccessChain 10(dti) 26
|
||||
111: 6(int) Load 110
|
||||
113: 81(ptr) AccessChain 24(data) 25 111 78
|
||||
114: 15(ivec4) Load 113
|
||||
115: 112(ivec3) VectorShuffle 114 114 0 1 2
|
||||
116: 112(ivec3) GroupNonUniformIAdd 35 InclusiveScan 115
|
||||
117: 90(ptr) AccessChain 24(data) 25 109 78 26
|
||||
118: 14(int) CompositeExtract 116 0
|
||||
Store 117 118
|
||||
119: 90(ptr) AccessChain 24(data) 25 109 78 58
|
||||
120: 14(int) CompositeExtract 116 1
|
||||
Store 119 120
|
||||
121: 90(ptr) AccessChain 24(data) 25 109 78 73
|
||||
122: 14(int) CompositeExtract 116 2
|
||||
Store 121 122
|
||||
123: 27(ptr) AccessChain 10(dti) 26
|
||||
124: 6(int) Load 123
|
||||
125: 27(ptr) AccessChain 10(dti) 26
|
||||
126: 6(int) Load 125
|
||||
128: 127(ptr) AccessChain 24(data) 25 126 115 26
|
||||
129: 16(float) Load 128
|
||||
130: 16(float) GroupNonUniformFAdd 35 InclusiveScan 129
|
||||
131: 127(ptr) AccessChain 24(data) 25 124 115 26
|
||||
Store 131 130
|
||||
132: 27(ptr) AccessChain 10(dti) 26
|
||||
133: 6(int) Load 132
|
||||
134: 27(ptr) AccessChain 10(dti) 26
|
||||
135: 6(int) Load 134
|
||||
137: 118(ptr) AccessChain 24(data) 25 135 115
|
||||
138: 17(fvec4) Load 137
|
||||
139: 136(fvec2) VectorShuffle 138 138 0 1
|
||||
140: 136(fvec2) GroupNonUniformFAdd 35 InclusiveScan 139
|
||||
141: 118(ptr) AccessChain 24(data) 25 133 115
|
||||
142: 17(fvec4) Load 141
|
||||
143: 17(fvec4) VectorShuffle 142 140 4 5 2 3
|
||||
Store 141 143
|
||||
126: 27(ptr) AccessChain 10(dti) 26
|
||||
127: 6(int) Load 126
|
||||
129: 128(ptr) AccessChain 24(data) 25 127 125
|
||||
130: 17(fvec4) Load 129
|
||||
131: 17(fvec4) GroupNonUniformFAdd 35 InclusiveScan 130
|
||||
132: 128(ptr) AccessChain 24(data) 25 124 125
|
||||
Store 132 131
|
||||
133: 27(ptr) AccessChain 10(dti) 26
|
||||
134: 6(int) Load 133
|
||||
135: 27(ptr) AccessChain 10(dti) 26
|
||||
136: 6(int) Load 135
|
||||
138: 137(ptr) AccessChain 24(data) 25 136 125 26
|
||||
139: 16(float) Load 138
|
||||
140: 16(float) GroupNonUniformFAdd 35 InclusiveScan 139
|
||||
141: 137(ptr) AccessChain 24(data) 25 134 125 26
|
||||
Store 141 140
|
||||
142: 27(ptr) AccessChain 10(dti) 26
|
||||
143: 6(int) Load 142
|
||||
144: 27(ptr) AccessChain 10(dti) 26
|
||||
145: 6(int) Load 144
|
||||
146: 27(ptr) AccessChain 10(dti) 26
|
||||
147: 6(int) Load 146
|
||||
149: 118(ptr) AccessChain 24(data) 25 147 115
|
||||
150: 17(fvec4) Load 149
|
||||
151: 148(fvec3) VectorShuffle 150 150 0 1 2
|
||||
152: 148(fvec3) GroupNonUniformFAdd 35 InclusiveScan 151
|
||||
153: 118(ptr) AccessChain 24(data) 25 145 115
|
||||
154: 17(fvec4) Load 153
|
||||
155: 17(fvec4) VectorShuffle 154 152 4 5 6 3
|
||||
Store 153 155
|
||||
156: 27(ptr) AccessChain 10(dti) 26
|
||||
157: 6(int) Load 156
|
||||
159: 27(ptr) AccessChain 10(dti) 26
|
||||
160: 6(int) Load 159
|
||||
162: 161(ptr) AccessChain 24(data) 25 160 158
|
||||
163: 19(f64vec4) Load 162
|
||||
164: 19(f64vec4) GroupNonUniformFAdd 35 InclusiveScan 163
|
||||
165: 161(ptr) AccessChain 24(data) 25 157 158
|
||||
Store 165 164
|
||||
166: 27(ptr) AccessChain 10(dti) 26
|
||||
167: 6(int) Load 166
|
||||
168: 27(ptr) AccessChain 10(dti) 26
|
||||
169: 6(int) Load 168
|
||||
171: 170(ptr) AccessChain 24(data) 25 169 158 26
|
||||
172:18(float64_t) Load 171
|
||||
173:18(float64_t) GroupNonUniformFAdd 35 InclusiveScan 172
|
||||
174: 170(ptr) AccessChain 24(data) 25 167 158 26
|
||||
Store 174 173
|
||||
175: 27(ptr) AccessChain 10(dti) 26
|
||||
176: 6(int) Load 175
|
||||
177: 27(ptr) AccessChain 10(dti) 26
|
||||
178: 6(int) Load 177
|
||||
180: 161(ptr) AccessChain 24(data) 25 178 158
|
||||
181: 19(f64vec4) Load 180
|
||||
182:179(f64vec2) VectorShuffle 181 181 0 1
|
||||
183:179(f64vec2) GroupNonUniformFAdd 35 InclusiveScan 182
|
||||
184: 161(ptr) AccessChain 24(data) 25 176 158
|
||||
185: 19(f64vec4) Load 184
|
||||
186: 19(f64vec4) VectorShuffle 185 183 4 5 2 3
|
||||
Store 184 186
|
||||
187: 27(ptr) AccessChain 10(dti) 26
|
||||
188: 6(int) Load 187
|
||||
147: 128(ptr) AccessChain 24(data) 25 145 125
|
||||
148: 17(fvec4) Load 147
|
||||
149: 146(fvec2) VectorShuffle 148 148 0 1
|
||||
150: 146(fvec2) GroupNonUniformFAdd 35 InclusiveScan 149
|
||||
151: 137(ptr) AccessChain 24(data) 25 143 125 26
|
||||
152: 16(float) CompositeExtract 150 0
|
||||
Store 151 152
|
||||
153: 137(ptr) AccessChain 24(data) 25 143 125 58
|
||||
154: 16(float) CompositeExtract 150 1
|
||||
Store 153 154
|
||||
155: 27(ptr) AccessChain 10(dti) 26
|
||||
156: 6(int) Load 155
|
||||
157: 27(ptr) AccessChain 10(dti) 26
|
||||
158: 6(int) Load 157
|
||||
160: 128(ptr) AccessChain 24(data) 25 158 125
|
||||
161: 17(fvec4) Load 160
|
||||
162: 159(fvec3) VectorShuffle 161 161 0 1 2
|
||||
163: 159(fvec3) GroupNonUniformFAdd 35 InclusiveScan 162
|
||||
164: 137(ptr) AccessChain 24(data) 25 156 125 26
|
||||
165: 16(float) CompositeExtract 163 0
|
||||
Store 164 165
|
||||
166: 137(ptr) AccessChain 24(data) 25 156 125 58
|
||||
167: 16(float) CompositeExtract 163 1
|
||||
Store 166 167
|
||||
168: 137(ptr) AccessChain 24(data) 25 156 125 73
|
||||
169: 16(float) CompositeExtract 163 2
|
||||
Store 168 169
|
||||
170: 27(ptr) AccessChain 10(dti) 26
|
||||
171: 6(int) Load 170
|
||||
173: 27(ptr) AccessChain 10(dti) 26
|
||||
174: 6(int) Load 173
|
||||
176: 175(ptr) AccessChain 24(data) 25 174 172
|
||||
177: 19(f64vec4) Load 176
|
||||
178: 19(f64vec4) GroupNonUniformFAdd 35 InclusiveScan 177
|
||||
179: 175(ptr) AccessChain 24(data) 25 171 172
|
||||
Store 179 178
|
||||
180: 27(ptr) AccessChain 10(dti) 26
|
||||
181: 6(int) Load 180
|
||||
182: 27(ptr) AccessChain 10(dti) 26
|
||||
183: 6(int) Load 182
|
||||
185: 184(ptr) AccessChain 24(data) 25 183 172 26
|
||||
186:18(float64_t) Load 185
|
||||
187:18(float64_t) GroupNonUniformFAdd 35 InclusiveScan 186
|
||||
188: 184(ptr) AccessChain 24(data) 25 181 172 26
|
||||
Store 188 187
|
||||
189: 27(ptr) AccessChain 10(dti) 26
|
||||
190: 6(int) Load 189
|
||||
192: 161(ptr) AccessChain 24(data) 25 190 158
|
||||
193: 19(f64vec4) Load 192
|
||||
194:191(f64vec3) VectorShuffle 193 193 0 1 2
|
||||
195:191(f64vec3) GroupNonUniformFAdd 35 InclusiveScan 194
|
||||
196: 161(ptr) AccessChain 24(data) 25 188 158
|
||||
197: 19(f64vec4) Load 196
|
||||
198: 19(f64vec4) VectorShuffle 197 195 4 5 6 3
|
||||
Store 196 198
|
||||
199: 27(ptr) AccessChain 10(dti) 26
|
||||
200: 6(int) Load 199
|
||||
201: 27(ptr) AccessChain 10(dti) 26
|
||||
202: 6(int) Load 201
|
||||
203: 32(ptr) AccessChain 24(data) 25 202 25
|
||||
204: 13(ivec4) Load 203
|
||||
205: 13(ivec4) GroupNonUniformIMul 35 InclusiveScan 204
|
||||
206: 32(ptr) AccessChain 24(data) 25 200 25
|
||||
Store 206 205
|
||||
207: 27(ptr) AccessChain 10(dti) 26
|
||||
208: 6(int) Load 207
|
||||
209: 27(ptr) AccessChain 10(dti) 26
|
||||
210: 6(int) Load 209
|
||||
211: 42(ptr) AccessChain 24(data) 25 210 25 26
|
||||
212: 6(int) Load 211
|
||||
213: 6(int) GroupNonUniformIMul 35 InclusiveScan 212
|
||||
214: 42(ptr) AccessChain 24(data) 25 208 25 26
|
||||
Store 214 213
|
||||
215: 27(ptr) AccessChain 10(dti) 26
|
||||
216: 6(int) Load 215
|
||||
191: 27(ptr) AccessChain 10(dti) 26
|
||||
192: 6(int) Load 191
|
||||
194: 175(ptr) AccessChain 24(data) 25 192 172
|
||||
195: 19(f64vec4) Load 194
|
||||
196:193(f64vec2) VectorShuffle 195 195 0 1
|
||||
197:193(f64vec2) GroupNonUniformFAdd 35 InclusiveScan 196
|
||||
198: 184(ptr) AccessChain 24(data) 25 190 172 26
|
||||
199:18(float64_t) CompositeExtract 197 0
|
||||
Store 198 199
|
||||
200: 184(ptr) AccessChain 24(data) 25 190 172 58
|
||||
201:18(float64_t) CompositeExtract 197 1
|
||||
Store 200 201
|
||||
202: 27(ptr) AccessChain 10(dti) 26
|
||||
203: 6(int) Load 202
|
||||
204: 27(ptr) AccessChain 10(dti) 26
|
||||
205: 6(int) Load 204
|
||||
207: 175(ptr) AccessChain 24(data) 25 205 172
|
||||
208: 19(f64vec4) Load 207
|
||||
209:206(f64vec3) VectorShuffle 208 208 0 1 2
|
||||
210:206(f64vec3) GroupNonUniformFAdd 35 InclusiveScan 209
|
||||
211: 184(ptr) AccessChain 24(data) 25 203 172 26
|
||||
212:18(float64_t) CompositeExtract 210 0
|
||||
Store 211 212
|
||||
213: 184(ptr) AccessChain 24(data) 25 203 172 58
|
||||
214:18(float64_t) CompositeExtract 210 1
|
||||
Store 213 214
|
||||
215: 184(ptr) AccessChain 24(data) 25 203 172 73
|
||||
216:18(float64_t) CompositeExtract 210 2
|
||||
Store 215 216
|
||||
217: 27(ptr) AccessChain 10(dti) 26
|
||||
218: 6(int) Load 217
|
||||
219: 32(ptr) AccessChain 24(data) 25 218 25
|
||||
220: 13(ivec4) Load 219
|
||||
221: 51(ivec2) VectorShuffle 220 220 0 1
|
||||
222: 51(ivec2) GroupNonUniformIMul 35 InclusiveScan 221
|
||||
223: 32(ptr) AccessChain 24(data) 25 216 25
|
||||
224: 13(ivec4) Load 223
|
||||
225: 13(ivec4) VectorShuffle 224 222 4 5 2 3
|
||||
Store 223 225
|
||||
226: 27(ptr) AccessChain 10(dti) 26
|
||||
227: 6(int) Load 226
|
||||
228: 27(ptr) AccessChain 10(dti) 26
|
||||
229: 6(int) Load 228
|
||||
230: 32(ptr) AccessChain 24(data) 25 229 25
|
||||
231: 13(ivec4) Load 230
|
||||
232: 7(ivec3) VectorShuffle 231 231 0 1 2
|
||||
233: 7(ivec3) GroupNonUniformIMul 35 InclusiveScan 232
|
||||
234: 32(ptr) AccessChain 24(data) 25 227 25
|
||||
235: 13(ivec4) Load 234
|
||||
236: 13(ivec4) VectorShuffle 235 233 4 5 6 3
|
||||
Store 234 236
|
||||
237: 27(ptr) AccessChain 10(dti) 26
|
||||
238: 6(int) Load 237
|
||||
239: 27(ptr) AccessChain 10(dti) 26
|
||||
240: 6(int) Load 239
|
||||
241: 75(ptr) AccessChain 24(data) 25 240 72
|
||||
242: 15(ivec4) Load 241
|
||||
243: 15(ivec4) GroupNonUniformIMul 35 InclusiveScan 242
|
||||
244: 75(ptr) AccessChain 24(data) 25 238 72
|
||||
Store 244 243
|
||||
219: 27(ptr) AccessChain 10(dti) 26
|
||||
220: 6(int) Load 219
|
||||
221: 32(ptr) AccessChain 24(data) 25 220 25
|
||||
222: 13(ivec4) Load 221
|
||||
223: 13(ivec4) GroupNonUniformIMul 35 InclusiveScan 222
|
||||
224: 32(ptr) AccessChain 24(data) 25 218 25
|
||||
Store 224 223
|
||||
225: 27(ptr) AccessChain 10(dti) 26
|
||||
226: 6(int) Load 225
|
||||
227: 27(ptr) AccessChain 10(dti) 26
|
||||
228: 6(int) Load 227
|
||||
229: 42(ptr) AccessChain 24(data) 25 228 25 26
|
||||
230: 6(int) Load 229
|
||||
231: 6(int) GroupNonUniformIMul 35 InclusiveScan 230
|
||||
232: 42(ptr) AccessChain 24(data) 25 226 25 26
|
||||
Store 232 231
|
||||
233: 27(ptr) AccessChain 10(dti) 26
|
||||
234: 6(int) Load 233
|
||||
235: 27(ptr) AccessChain 10(dti) 26
|
||||
236: 6(int) Load 235
|
||||
237: 32(ptr) AccessChain 24(data) 25 236 25
|
||||
238: 13(ivec4) Load 237
|
||||
239: 51(ivec2) VectorShuffle 238 238 0 1
|
||||
240: 51(ivec2) GroupNonUniformIMul 35 InclusiveScan 239
|
||||
241: 42(ptr) AccessChain 24(data) 25 234 25 26
|
||||
242: 6(int) CompositeExtract 240 0
|
||||
Store 241 242
|
||||
243: 42(ptr) AccessChain 24(data) 25 234 25 58
|
||||
244: 6(int) CompositeExtract 240 1
|
||||
Store 243 244
|
||||
245: 27(ptr) AccessChain 10(dti) 26
|
||||
246: 6(int) Load 245
|
||||
247: 27(ptr) AccessChain 10(dti) 26
|
||||
248: 6(int) Load 247
|
||||
249: 84(ptr) AccessChain 24(data) 25 248 72 26
|
||||
250: 14(int) Load 249
|
||||
251: 14(int) GroupNonUniformIMul 35 InclusiveScan 250
|
||||
252: 84(ptr) AccessChain 24(data) 25 246 72 26
|
||||
Store 252 251
|
||||
253: 27(ptr) AccessChain 10(dti) 26
|
||||
254: 6(int) Load 253
|
||||
255: 27(ptr) AccessChain 10(dti) 26
|
||||
256: 6(int) Load 255
|
||||
257: 75(ptr) AccessChain 24(data) 25 256 72
|
||||
258: 15(ivec4) Load 257
|
||||
259: 93(ivec2) VectorShuffle 258 258 0 1
|
||||
260: 93(ivec2) GroupNonUniformIMul 35 InclusiveScan 259
|
||||
261: 75(ptr) AccessChain 24(data) 25 254 72
|
||||
262: 15(ivec4) Load 261
|
||||
263: 15(ivec4) VectorShuffle 262 260 4 5 2 3
|
||||
Store 261 263
|
||||
264: 27(ptr) AccessChain 10(dti) 26
|
||||
265: 6(int) Load 264
|
||||
266: 27(ptr) AccessChain 10(dti) 26
|
||||
267: 6(int) Load 266
|
||||
268: 75(ptr) AccessChain 24(data) 25 267 72
|
||||
269: 15(ivec4) Load 268
|
||||
270: 105(ivec3) VectorShuffle 269 269 0 1 2
|
||||
271: 105(ivec3) GroupNonUniformIMul 35 InclusiveScan 270
|
||||
272: 75(ptr) AccessChain 24(data) 25 265 72
|
||||
273: 15(ivec4) Load 272
|
||||
274: 15(ivec4) VectorShuffle 273 271 4 5 6 3
|
||||
Store 272 274
|
||||
249: 32(ptr) AccessChain 24(data) 25 248 25
|
||||
250: 13(ivec4) Load 249
|
||||
251: 7(ivec3) VectorShuffle 250 250 0 1 2
|
||||
252: 7(ivec3) GroupNonUniformIMul 35 InclusiveScan 251
|
||||
253: 42(ptr) AccessChain 24(data) 25 246 25 26
|
||||
254: 6(int) CompositeExtract 252 0
|
||||
Store 253 254
|
||||
255: 42(ptr) AccessChain 24(data) 25 246 25 58
|
||||
256: 6(int) CompositeExtract 252 1
|
||||
Store 255 256
|
||||
257: 42(ptr) AccessChain 24(data) 25 246 25 73
|
||||
258: 6(int) CompositeExtract 252 2
|
||||
Store 257 258
|
||||
259: 27(ptr) AccessChain 10(dti) 26
|
||||
260: 6(int) Load 259
|
||||
261: 27(ptr) AccessChain 10(dti) 26
|
||||
262: 6(int) Load 261
|
||||
263: 81(ptr) AccessChain 24(data) 25 262 78
|
||||
264: 15(ivec4) Load 263
|
||||
265: 15(ivec4) GroupNonUniformIMul 35 InclusiveScan 264
|
||||
266: 81(ptr) AccessChain 24(data) 25 260 78
|
||||
Store 266 265
|
||||
267: 27(ptr) AccessChain 10(dti) 26
|
||||
268: 6(int) Load 267
|
||||
269: 27(ptr) AccessChain 10(dti) 26
|
||||
270: 6(int) Load 269
|
||||
271: 90(ptr) AccessChain 24(data) 25 270 78 26
|
||||
272: 14(int) Load 271
|
||||
273: 14(int) GroupNonUniformIMul 35 InclusiveScan 272
|
||||
274: 90(ptr) AccessChain 24(data) 25 268 78 26
|
||||
Store 274 273
|
||||
275: 27(ptr) AccessChain 10(dti) 26
|
||||
276: 6(int) Load 275
|
||||
277: 27(ptr) AccessChain 10(dti) 26
|
||||
278: 6(int) Load 277
|
||||
279: 118(ptr) AccessChain 24(data) 25 278 115
|
||||
280: 17(fvec4) Load 279
|
||||
281: 17(fvec4) GroupNonUniformFMul 35 InclusiveScan 280
|
||||
282: 118(ptr) AccessChain 24(data) 25 276 115
|
||||
Store 282 281
|
||||
283: 27(ptr) AccessChain 10(dti) 26
|
||||
284: 6(int) Load 283
|
||||
285: 27(ptr) AccessChain 10(dti) 26
|
||||
286: 6(int) Load 285
|
||||
287: 127(ptr) AccessChain 24(data) 25 286 115 26
|
||||
288: 16(float) Load 287
|
||||
289: 16(float) GroupNonUniformFMul 35 InclusiveScan 288
|
||||
290: 127(ptr) AccessChain 24(data) 25 284 115 26
|
||||
Store 290 289
|
||||
291: 27(ptr) AccessChain 10(dti) 26
|
||||
292: 6(int) Load 291
|
||||
293: 27(ptr) AccessChain 10(dti) 26
|
||||
294: 6(int) Load 293
|
||||
295: 118(ptr) AccessChain 24(data) 25 294 115
|
||||
296: 17(fvec4) Load 295
|
||||
297: 136(fvec2) VectorShuffle 296 296 0 1
|
||||
298: 136(fvec2) GroupNonUniformFMul 35 InclusiveScan 297
|
||||
299: 118(ptr) AccessChain 24(data) 25 292 115
|
||||
300: 17(fvec4) Load 299
|
||||
301: 17(fvec4) VectorShuffle 300 298 4 5 2 3
|
||||
Store 299 301
|
||||
302: 27(ptr) AccessChain 10(dti) 26
|
||||
303: 6(int) Load 302
|
||||
304: 27(ptr) AccessChain 10(dti) 26
|
||||
305: 6(int) Load 304
|
||||
306: 118(ptr) AccessChain 24(data) 25 305 115
|
||||
307: 17(fvec4) Load 306
|
||||
308: 148(fvec3) VectorShuffle 307 307 0 1 2
|
||||
309: 148(fvec3) GroupNonUniformFMul 35 InclusiveScan 308
|
||||
310: 118(ptr) AccessChain 24(data) 25 303 115
|
||||
311: 17(fvec4) Load 310
|
||||
312: 17(fvec4) VectorShuffle 311 309 4 5 6 3
|
||||
Store 310 312
|
||||
313: 27(ptr) AccessChain 10(dti) 26
|
||||
314: 6(int) Load 313
|
||||
315: 27(ptr) AccessChain 10(dti) 26
|
||||
316: 6(int) Load 315
|
||||
317: 161(ptr) AccessChain 24(data) 25 316 158
|
||||
318: 19(f64vec4) Load 317
|
||||
319: 19(f64vec4) GroupNonUniformFMul 35 InclusiveScan 318
|
||||
320: 161(ptr) AccessChain 24(data) 25 314 158
|
||||
Store 320 319
|
||||
321: 27(ptr) AccessChain 10(dti) 26
|
||||
322: 6(int) Load 321
|
||||
323: 27(ptr) AccessChain 10(dti) 26
|
||||
324: 6(int) Load 323
|
||||
325: 170(ptr) AccessChain 24(data) 25 324 158 26
|
||||
326:18(float64_t) Load 325
|
||||
327:18(float64_t) GroupNonUniformFMul 35 InclusiveScan 326
|
||||
328: 170(ptr) AccessChain 24(data) 25 322 158 26
|
||||
Store 328 327
|
||||
279: 81(ptr) AccessChain 24(data) 25 278 78
|
||||
280: 15(ivec4) Load 279
|
||||
281: 99(ivec2) VectorShuffle 280 280 0 1
|
||||
282: 99(ivec2) GroupNonUniformIMul 35 InclusiveScan 281
|
||||
283: 90(ptr) AccessChain 24(data) 25 276 78 26
|
||||
284: 14(int) CompositeExtract 282 0
|
||||
Store 283 284
|
||||
285: 90(ptr) AccessChain 24(data) 25 276 78 58
|
||||
286: 14(int) CompositeExtract 282 1
|
||||
Store 285 286
|
||||
287: 27(ptr) AccessChain 10(dti) 26
|
||||
288: 6(int) Load 287
|
||||
289: 27(ptr) AccessChain 10(dti) 26
|
||||
290: 6(int) Load 289
|
||||
291: 81(ptr) AccessChain 24(data) 25 290 78
|
||||
292: 15(ivec4) Load 291
|
||||
293: 112(ivec3) VectorShuffle 292 292 0 1 2
|
||||
294: 112(ivec3) GroupNonUniformIMul 35 InclusiveScan 293
|
||||
295: 90(ptr) AccessChain 24(data) 25 288 78 26
|
||||
296: 14(int) CompositeExtract 294 0
|
||||
Store 295 296
|
||||
297: 90(ptr) AccessChain 24(data) 25 288 78 58
|
||||
298: 14(int) CompositeExtract 294 1
|
||||
Store 297 298
|
||||
299: 90(ptr) AccessChain 24(data) 25 288 78 73
|
||||
300: 14(int) CompositeExtract 294 2
|
||||
Store 299 300
|
||||
301: 27(ptr) AccessChain 10(dti) 26
|
||||
302: 6(int) Load 301
|
||||
303: 27(ptr) AccessChain 10(dti) 26
|
||||
304: 6(int) Load 303
|
||||
305: 128(ptr) AccessChain 24(data) 25 304 125
|
||||
306: 17(fvec4) Load 305
|
||||
307: 17(fvec4) GroupNonUniformFMul 35 InclusiveScan 306
|
||||
308: 128(ptr) AccessChain 24(data) 25 302 125
|
||||
Store 308 307
|
||||
309: 27(ptr) AccessChain 10(dti) 26
|
||||
310: 6(int) Load 309
|
||||
311: 27(ptr) AccessChain 10(dti) 26
|
||||
312: 6(int) Load 311
|
||||
313: 137(ptr) AccessChain 24(data) 25 312 125 26
|
||||
314: 16(float) Load 313
|
||||
315: 16(float) GroupNonUniformFMul 35 InclusiveScan 314
|
||||
316: 137(ptr) AccessChain 24(data) 25 310 125 26
|
||||
Store 316 315
|
||||
317: 27(ptr) AccessChain 10(dti) 26
|
||||
318: 6(int) Load 317
|
||||
319: 27(ptr) AccessChain 10(dti) 26
|
||||
320: 6(int) Load 319
|
||||
321: 128(ptr) AccessChain 24(data) 25 320 125
|
||||
322: 17(fvec4) Load 321
|
||||
323: 146(fvec2) VectorShuffle 322 322 0 1
|
||||
324: 146(fvec2) GroupNonUniformFMul 35 InclusiveScan 323
|
||||
325: 137(ptr) AccessChain 24(data) 25 318 125 26
|
||||
326: 16(float) CompositeExtract 324 0
|
||||
Store 325 326
|
||||
327: 137(ptr) AccessChain 24(data) 25 318 125 58
|
||||
328: 16(float) CompositeExtract 324 1
|
||||
Store 327 328
|
||||
329: 27(ptr) AccessChain 10(dti) 26
|
||||
330: 6(int) Load 329
|
||||
331: 27(ptr) AccessChain 10(dti) 26
|
||||
332: 6(int) Load 331
|
||||
333: 161(ptr) AccessChain 24(data) 25 332 158
|
||||
334: 19(f64vec4) Load 333
|
||||
335:179(f64vec2) VectorShuffle 334 334 0 1
|
||||
336:179(f64vec2) GroupNonUniformFMul 35 InclusiveScan 335
|
||||
337: 161(ptr) AccessChain 24(data) 25 330 158
|
||||
338: 19(f64vec4) Load 337
|
||||
339: 19(f64vec4) VectorShuffle 338 336 4 5 2 3
|
||||
Store 337 339
|
||||
340: 27(ptr) AccessChain 10(dti) 26
|
||||
341: 6(int) Load 340
|
||||
342: 27(ptr) AccessChain 10(dti) 26
|
||||
343: 6(int) Load 342
|
||||
344: 161(ptr) AccessChain 24(data) 25 343 158
|
||||
345: 19(f64vec4) Load 344
|
||||
346:191(f64vec3) VectorShuffle 345 345 0 1 2
|
||||
347:191(f64vec3) GroupNonUniformFMul 35 InclusiveScan 346
|
||||
348: 161(ptr) AccessChain 24(data) 25 341 158
|
||||
349: 19(f64vec4) Load 348
|
||||
350: 19(f64vec4) VectorShuffle 349 347 4 5 6 3
|
||||
Store 348 350
|
||||
333: 128(ptr) AccessChain 24(data) 25 332 125
|
||||
334: 17(fvec4) Load 333
|
||||
335: 159(fvec3) VectorShuffle 334 334 0 1 2
|
||||
336: 159(fvec3) GroupNonUniformFMul 35 InclusiveScan 335
|
||||
337: 137(ptr) AccessChain 24(data) 25 330 125 26
|
||||
338: 16(float) CompositeExtract 336 0
|
||||
Store 337 338
|
||||
339: 137(ptr) AccessChain 24(data) 25 330 125 58
|
||||
340: 16(float) CompositeExtract 336 1
|
||||
Store 339 340
|
||||
341: 137(ptr) AccessChain 24(data) 25 330 125 73
|
||||
342: 16(float) CompositeExtract 336 2
|
||||
Store 341 342
|
||||
343: 27(ptr) AccessChain 10(dti) 26
|
||||
344: 6(int) Load 343
|
||||
345: 27(ptr) AccessChain 10(dti) 26
|
||||
346: 6(int) Load 345
|
||||
347: 175(ptr) AccessChain 24(data) 25 346 172
|
||||
348: 19(f64vec4) Load 347
|
||||
349: 19(f64vec4) GroupNonUniformFMul 35 InclusiveScan 348
|
||||
350: 175(ptr) AccessChain 24(data) 25 344 172
|
||||
Store 350 349
|
||||
351: 27(ptr) AccessChain 10(dti) 26
|
||||
352: 6(int) Load 351
|
||||
353: 27(ptr) AccessChain 10(dti) 26
|
||||
354: 6(int) Load 353
|
||||
355: 42(ptr) AccessChain 24(data) 25 354 25 26
|
||||
356: 6(int) Load 355
|
||||
358: 357(bool) IEqual 356 26
|
||||
359: 13(ivec4) GroupNonUniformBallot 35 358
|
||||
360: 6(int) GroupNonUniformBallotBitCount 35 InclusiveScan 359
|
||||
361: 42(ptr) AccessChain 24(data) 25 352 25 26
|
||||
Store 361 360
|
||||
355: 184(ptr) AccessChain 24(data) 25 354 172 26
|
||||
356:18(float64_t) Load 355
|
||||
357:18(float64_t) GroupNonUniformFMul 35 InclusiveScan 356
|
||||
358: 184(ptr) AccessChain 24(data) 25 352 172 26
|
||||
Store 358 357
|
||||
359: 27(ptr) AccessChain 10(dti) 26
|
||||
360: 6(int) Load 359
|
||||
361: 27(ptr) AccessChain 10(dti) 26
|
||||
362: 6(int) Load 361
|
||||
363: 175(ptr) AccessChain 24(data) 25 362 172
|
||||
364: 19(f64vec4) Load 363
|
||||
365:193(f64vec2) VectorShuffle 364 364 0 1
|
||||
366:193(f64vec2) GroupNonUniformFMul 35 InclusiveScan 365
|
||||
367: 184(ptr) AccessChain 24(data) 25 360 172 26
|
||||
368:18(float64_t) CompositeExtract 366 0
|
||||
Store 367 368
|
||||
369: 184(ptr) AccessChain 24(data) 25 360 172 58
|
||||
370:18(float64_t) CompositeExtract 366 1
|
||||
Store 369 370
|
||||
371: 27(ptr) AccessChain 10(dti) 26
|
||||
372: 6(int) Load 371
|
||||
373: 27(ptr) AccessChain 10(dti) 26
|
||||
374: 6(int) Load 373
|
||||
375: 175(ptr) AccessChain 24(data) 25 374 172
|
||||
376: 19(f64vec4) Load 375
|
||||
377:206(f64vec3) VectorShuffle 376 376 0 1 2
|
||||
378:206(f64vec3) GroupNonUniformFMul 35 InclusiveScan 377
|
||||
379: 184(ptr) AccessChain 24(data) 25 372 172 26
|
||||
380:18(float64_t) CompositeExtract 378 0
|
||||
Store 379 380
|
||||
381: 184(ptr) AccessChain 24(data) 25 372 172 58
|
||||
382:18(float64_t) CompositeExtract 378 1
|
||||
Store 381 382
|
||||
383: 184(ptr) AccessChain 24(data) 25 372 172 73
|
||||
384:18(float64_t) CompositeExtract 378 2
|
||||
Store 383 384
|
||||
385: 27(ptr) AccessChain 10(dti) 26
|
||||
386: 6(int) Load 385
|
||||
387: 27(ptr) AccessChain 10(dti) 26
|
||||
388: 6(int) Load 387
|
||||
389: 42(ptr) AccessChain 24(data) 25 388 25 26
|
||||
390: 6(int) Load 389
|
||||
392: 391(bool) IEqual 390 26
|
||||
393: 13(ivec4) GroupNonUniformBallot 35 392
|
||||
394: 6(int) GroupNonUniformBallotBitCount 35 InclusiveScan 393
|
||||
395: 42(ptr) AccessChain 24(data) 25 386 25 26
|
||||
Store 395 394
|
||||
Return
|
||||
FunctionEnd
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue