The KHR form comes along as part of 1.5, and otherwise should require another form of request to emit it.
120 lines
5.9 KiB
Plaintext
120 lines
5.9 KiB
Plaintext
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;"
|
|
|
|
// Module Version 10000
|
|
// Generated by (magic number): 80007
|
|
// Id's are bound by 61
|
|
|
|
Capability Shader
|
|
Capability StorageBuffer8BitAccess
|
|
Capability PhysicalStorageBufferAddressesEXT
|
|
Extension "SPV_EXT_physical_storage_buffer"
|
|
Extension "SPV_KHR_8bit_storage"
|
|
Extension "SPV_KHR_storage_buffer_storage_class"
|
|
1: ExtInstImport "GLSL.std.450"
|
|
MemoryModel PhysicalStorageBuffer64EXT GLSL450
|
|
EntryPoint Fragment 4 "main"
|
|
ExecutionMode 4 OriginUpperLeft
|
|
Source GLSL 450
|
|
SourceExtension "GL_EXT_buffer_reference"
|
|
SourceExtension "GL_EXT_shader_16bit_storage"
|
|
SourceExtension "GL_EXT_shader_8bit_storage"
|
|
Name 4 "main"
|
|
Name 12 "compare_uint8_t(u1;u1;"
|
|
Name 10 "a"
|
|
Name 11 "b"
|
|
Name 20 "allOk"
|
|
Name 26 "PC"
|
|
MemberName 26(PC) 0 "block"
|
|
Name 28 "Block"
|
|
MemberName 28(Block) 0 "var"
|
|
Name 30 ""
|
|
Name 41 "param"
|
|
Name 42 "param"
|
|
Name 48 "AcBlock"
|
|
MemberName 48(AcBlock) 0 "ac_numPassed"
|
|
Name 50 ""
|
|
MemberDecorate 26(PC) 0 Offset 0
|
|
Decorate 26(PC) Block
|
|
MemberDecorate 28(Block) 0 Offset 0
|
|
Decorate 28(Block) Block
|
|
MemberDecorate 48(AcBlock) 0 Offset 0
|
|
Decorate 48(AcBlock) Block
|
|
Decorate 50 DescriptorSet 0
|
|
Decorate 50 Binding 0
|
|
2: TypeVoid
|
|
3: TypeFunction 2
|
|
6: TypeInt 32 0
|
|
7: TypePointer Function 6(int)
|
|
8: TypeBool
|
|
9: TypeFunction 8(bool) 7(ptr) 7(ptr)
|
|
19: TypePointer Function 8(bool)
|
|
21: 8(bool) ConstantTrue
|
|
TypeForwardPointer 25 PhysicalStorageBufferEXT
|
|
26(PC): TypeStruct 25
|
|
27: TypeInt 8 0
|
|
28(Block): TypeStruct 27(int8_t)
|
|
25: TypePointer PhysicalStorageBufferEXT 28(Block)
|
|
29: TypePointer PushConstant 26(PC)
|
|
30: 29(ptr) Variable PushConstant
|
|
31: TypeInt 32 1
|
|
32: 31(int) Constant 0
|
|
33: TypePointer PushConstant 25(ptr)
|
|
36: TypePointer PhysicalStorageBufferEXT 27(int8_t)
|
|
40: 6(int) Constant 7
|
|
48(AcBlock): TypeStruct 6(int)
|
|
49: TypePointer StorageBuffer 48(AcBlock)
|
|
50: 49(ptr) Variable StorageBuffer
|
|
51: TypePointer StorageBuffer 6(int)
|
|
54: 31(int) Constant 1
|
|
58: 6(int) Constant 9
|
|
4(main): 2 Function None 3
|
|
5: Label
|
|
20(allOk): 19(ptr) Variable Function
|
|
41(param): 7(ptr) Variable Function
|
|
42(param): 7(ptr) Variable Function
|
|
Store 20(allOk) 21
|
|
22: 8(bool) Load 20(allOk)
|
|
SelectionMerge 24 None
|
|
BranchConditional 22 23 24
|
|
23: Label
|
|
34: 33(ptr) AccessChain 30 32
|
|
35: 25(ptr) Load 34
|
|
37: 36(ptr) AccessChain 35 32
|
|
38: 27(int8_t) Load 37 Aligned 16
|
|
39: 6(int) UConvert 38
|
|
Store 41(param) 39
|
|
Store 42(param) 40
|
|
43: 8(bool) FunctionCall 12(compare_uint8_t(u1;u1;) 41(param) 42(param)
|
|
Branch 24
|
|
24: Label
|
|
44: 8(bool) Phi 22 5 43 23
|
|
Store 20(allOk) 44
|
|
45: 8(bool) Load 20(allOk)
|
|
SelectionMerge 47 None
|
|
BranchConditional 45 46 47
|
|
46: Label
|
|
52: 51(ptr) AccessChain 50 32
|
|
53: 6(int) Load 52
|
|
55: 6(int) IAdd 53 54
|
|
Store 52 55
|
|
Branch 47
|
|
47: Label
|
|
56: 33(ptr) AccessChain 30 32
|
|
57: 25(ptr) Load 56
|
|
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
|
|
10(a): 7(ptr) FunctionParameter
|
|
11(b): 7(ptr) FunctionParameter
|
|
13: Label
|
|
14: 6(int) Load 10(a)
|
|
15: 6(int) Load 11(b)
|
|
16: 8(bool) IEqual 14 15
|
|
ReturnValue 16
|
|
FunctionEnd
|