The KHR form comes along as part of 1.5, and otherwise should require another form of request to emit it.
95 lines
4.8 KiB
Plaintext
95 lines
4.8 KiB
Plaintext
spv.bufferhandle2.frag
|
|
// Module Version 10000
|
|
// Generated by (magic number): 80007
|
|
// Id's are bound by 45
|
|
|
|
Capability Shader
|
|
Capability PhysicalStorageBufferAddressesEXT
|
|
Extension "SPV_EXT_physical_storage_buffer"
|
|
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"
|
|
Name 4 "main"
|
|
Name 8 "blockType"
|
|
MemberName 8(blockType) 0 "a"
|
|
MemberName 8(blockType) 1 "b"
|
|
MemberName 8(blockType) 2 "c"
|
|
MemberName 8(blockType) 3 "d"
|
|
MemberName 8(blockType) 4 "e"
|
|
Name 13 "b1"
|
|
Name 14 "t2"
|
|
MemberName 14(t2) 0 "f"
|
|
MemberName 14(t2) 1 "g"
|
|
Name 16 "t"
|
|
Name 34 "b2"
|
|
Name 37 "b3"
|
|
MemberDecorate 8(blockType) 0 Offset 0
|
|
MemberDecorate 8(blockType) 1 Offset 4
|
|
MemberDecorate 8(blockType) 2 Offset 8
|
|
MemberDecorate 8(blockType) 3 Offset 12
|
|
MemberDecorate 8(blockType) 4 Offset 16
|
|
Decorate 8(blockType) Block
|
|
Decorate 13(b1) DecorationAliasedPointerEXT
|
|
MemberDecorate 14(t2) 0 Offset 0
|
|
MemberDecorate 14(t2) 1 Offset 8
|
|
Decorate 14(t2) Block
|
|
Decorate 16(t) DescriptorSet 0
|
|
Decorate 16(t) Binding 0
|
|
Decorate 34(b2) DecorationAliasedPointerEXT
|
|
Decorate 37(b3) DecorationAliasedPointerEXT
|
|
2: TypeVoid
|
|
3: TypeFunction 2
|
|
TypeForwardPointer 6 PhysicalStorageBufferEXT
|
|
7: TypeInt 32 1
|
|
8(blockType): TypeStruct 7(int) 7(int) 7(int) 7(int) 7(int)
|
|
6: TypePointer PhysicalStorageBufferEXT 8(blockType)
|
|
9: TypeInt 32 0
|
|
10: 9(int) Constant 2
|
|
11: TypeArray 6(ptr) 10
|
|
12: TypePointer Function 11
|
|
14(t2): TypeStruct 6(ptr) 6(ptr)
|
|
15: TypePointer StorageBuffer 14(t2)
|
|
16(t): 15(ptr) Variable StorageBuffer
|
|
17: 7(int) Constant 0
|
|
18: TypePointer StorageBuffer 6(ptr)
|
|
21: 7(int) Constant 1
|
|
25: TypePointer Function 6(ptr)
|
|
30: TypePointer PhysicalStorageBufferEXT 7(int)
|
|
4(main): 2 Function None 3
|
|
5: Label
|
|
13(b1): 12(ptr) Variable Function
|
|
34(b2): 25(ptr) Variable Function
|
|
37(b3): 25(ptr) Variable Function
|
|
19: 18(ptr) AccessChain 16(t) 17
|
|
20: 6(ptr) Load 19
|
|
22: 18(ptr) AccessChain 16(t) 21
|
|
23: 6(ptr) Load 22
|
|
24: 11 CompositeConstruct 20 23
|
|
Store 13(b1) 24
|
|
26: 25(ptr) AccessChain 13(b1) 17
|
|
27: 6(ptr) Load 26
|
|
28: 25(ptr) AccessChain 13(b1) 21
|
|
29: 6(ptr) Load 28
|
|
31: 30(ptr) AccessChain 29 21
|
|
32: 7(int) Load 31 Aligned 4
|
|
33: 30(ptr) AccessChain 27 17
|
|
Store 33 32 Aligned 16
|
|
35: 18(ptr) AccessChain 16(t) 17
|
|
36: 6(ptr) Load 35
|
|
Store 34(b2) 36
|
|
38: 18(ptr) AccessChain 16(t) 21
|
|
39: 6(ptr) Load 38
|
|
Store 37(b3) 39
|
|
40: 6(ptr) Load 34(b2)
|
|
41: 6(ptr) Load 37(b3)
|
|
42: 30(ptr) AccessChain 41 21
|
|
43: 7(int) Load 42 Aligned 4
|
|
44: 30(ptr) AccessChain 40 17
|
|
Store 44 43 Aligned 16
|
|
Return
|
|
FunctionEnd
|