Avoid generating 8/16-bit constants when 8/16-bit arithmetic extensions aren't enabled

This commit is contained in:
Jeff Bolz
2019-07-10 13:06:15 -05:00
parent f970253a5d
commit c1ad396258
10 changed files with 136 additions and 80 deletions

View File

@@ -2,10 +2,9 @@ spv.bufferhandle11.frag
WARNING: 0:6: '' : all default precisions are highp; use precision statements to quiet warning, e.g.:
"precision mediump int; precision highp float;"
Validation failed
// Module Version 10000
// Generated by (magic number): 80007
// Id's are bound by 60
// Id's are bound by 61
Capability Shader
Capability StorageBuffer8BitAccess
@@ -69,7 +68,7 @@ Validation failed
50: 49(ptr) Variable StorageBuffer
51: TypePointer StorageBuffer 6(int)
54: 31(int) Constant 1
58: 27(int8_t) Constant 9
58: 6(int) Constant 9
4(main): 2 Function None 3
5: Label
20(allOk): 19(ptr) Variable Function
@@ -104,8 +103,9 @@ Validation failed
47: Label
56: 33(ptr) AccessChain 30 32
57: 25(ptr) Load 56
59: 36(ptr) AccessChain 57 32
Store 59 58 Aligned 16
59: 27(int8_t) UConvert 58
60: 36(ptr) AccessChain 57 32
Store 60 59 Aligned 16
Return
FunctionEnd
12(compare_uint8_t(u1;u1;): 8(bool) Function None 9