Add test cases for redundant type conversions

These redundant type conversions were generating illegal SPIR-V when
only the 8-bit/16-bit storage extensions and not the corresponding
arithmetic extensions were enabled.
This commit is contained in:
Arcady Goldmints-Orlov 2024-06-20 17:13:09 -04:00 committed by arcady-lunarg
parent a05c4eca74
commit 2d8b71fc63
10 changed files with 120 additions and 5 deletions

View file

@ -1,9 +1,10 @@
spv.8bitstorage-int.frag
// Module Version 10000
// Generated by (magic number): 8000b
// Id's are bound by 171
// Id's are bound by 187
Capability Shader
Capability Int8
Capability UniformAndStorageBuffer8BitAccess
Extension "SPV_KHR_8bit_storage"
1: ExtInstImport "GLSL.std.450"
@ -334,5 +335,24 @@ spv.8bitstorage-int.frag
169: 6(int8_t) SConvert 58
170: 28(ptr) AccessChain 19(b2) 21
Store 170 169
171: 28(ptr) AccessChain 27(b1) 21
172: 6(int8_t) Load 171
173: 28(ptr) AccessChain 19(b2) 21
Store 173 172
174: 42(ptr) AccessChain 27(b1) 32
175: 7(i8vec2) Load 174
176: 6(int8_t) CompositeExtract 175 0
177: 6(int8_t) CompositeExtract 175 1
178: 7(i8vec2) CompositeConstruct 176 177
179: 42(ptr) AccessChain 19(b2) 32
Store 179 178
180: 34(ptr) AccessChain 27(b1) 33
181: 8(i8vec3) Load 180
182: 6(int8_t) CompositeExtract 181 0
183: 6(int8_t) CompositeExtract 181 1
184: 6(int8_t) CompositeExtract 181 2
185: 8(i8vec3) CompositeConstruct 182 183 184
186: 34(ptr) AccessChain 19(b2) 33
Store 186 185
Return
FunctionEnd