1 spv.bufferhandle3.frag 2 // Module Version 10000 3 // Generated by (magic number): 80007 4 // Id's are bound by 50 5 6 Capability Shader 7 Capability CapabilityPhysicalStorageBufferAddressesEXT 8 Extension "SPV_EXT_physical_storage_buffer" 9 Extension "SPV_KHR_storage_buffer_storage_class" 10 1: ExtInstImport "GLSL.std.450" 11 MemoryModel PhysicalStorageBuffer64EXT GLSL450 12 EntryPoint Fragment 4 "main" 42 13 ExecutionMode 4 OriginUpperLeft 14 Source GLSL 450 15 SourceExtension "GL_EXT_buffer_reference" 16 Name 4 "main" 17 Name 9 "t4" 18 MemberName 9(t4) 0 "j" 19 MemberName 9(t4) 1 "k" 20 Name 10 "t3" 21 MemberName 10(t3) 0 "h" 22 Name 14 "foo(1;" 23 Name 13 "y" 24 Name 19 "t5" 25 MemberName 19(t5) 0 "m" 26 Name 21 "s5" 27 Name 23 "param" 28 Name 38 "t4" 29 MemberName 38(t4) 0 "j" 30 MemberName 38(t4) 1 "k" 31 Name 40 "x" 32 Name 42 "k" 33 MemberDecorate 9(t4) 0 Offset 0 34 MemberDecorate 9(t4) 1 Offset 8 35 Decorate 9(t4) Block 36 MemberDecorate 10(t3) 0 Offset 0 37 Decorate 10(t3) Block 38 Decorate 13(y) DecorationAliasedPointerEXT 39 MemberDecorate 19(t5) 0 Offset 0 40 Decorate 19(t5) Block 41 Decorate 21(s5) DescriptorSet 0 42 Decorate 21(s5) Binding 0 43 MemberDecorate 38(t4) 0 Offset 0 44 MemberDecorate 38(t4) 1 Offset 8 45 Decorate 38(t4) Block 46 Decorate 40(x) DescriptorSet 1 47 Decorate 40(x) Binding 2 48 Decorate 42(k) Flat 49 Decorate 42(k) DecorationAliasedPointerEXT 50 Decorate 23(param) DecorationAliasedPointerEXT 51 2: TypeVoid 52 3: TypeFunction 2 53 TypeForwardPointer 6 PhysicalStorageBufferEXT 54 7: TypeInt 32 1 55 TypeForwardPointer 8 PhysicalStorageBufferEXT 56 9(t4): TypeStruct 7(int) 8 57 10(t3): TypeStruct 7(int) 58 8: TypePointer PhysicalStorageBufferEXT 10(t3) 59 6: TypePointer PhysicalStorageBufferEXT 9(t4) 60 11: TypePointer Function 6(ptr) 61 12: TypeFunction 6(ptr) 11(ptr) 62 19(t5): TypeStruct 6(ptr) 63 20: TypePointer StorageBuffer 19(t5) 64 21(s5): 20(ptr) Variable StorageBuffer 65 22: 7(int) Constant 0 66 24: TypePointer StorageBuffer 6(ptr) 67 30: 7(int) Constant 1 68 31: TypePointer PhysicalStorageBufferEXT 8(ptr) 69 34: TypePointer PhysicalStorageBufferEXT 7(int) 70 38(t4): TypeStruct 7(int) 8(ptr) 71 39: TypePointer StorageBuffer 38(t4) 72 40(x): 39(ptr) Variable StorageBuffer 73 41: TypePointer Input 6(ptr) 74 42(k): 41(ptr) Variable Input 75 48: TypePointer StorageBuffer 7(int) 76 4(main): 2 Function None 3 77 5: Label 78 23(param): 11(ptr) Variable Function 79 25: 24(ptr) AccessChain 21(s5) 22 80 26: 6(ptr) Load 25 81 Store 23(param) 26 82 27: 6(ptr) FunctionCall 14(foo(1;) 23(param) 83 28: 24(ptr) AccessChain 21(s5) 22 84 29: 6(ptr) Load 28 85 32: 31(ptr) AccessChain 29 30 86 33: 8(ptr) Load 32 Aligned 8 87 35: 34(ptr) AccessChain 33 22 88 36: 7(int) Load 35 Aligned 16 89 37: 34(ptr) AccessChain 27 22 90 Store 37 36 Aligned 16 91 43: 6(ptr) Load 42(k) 92 44: 31(ptr) AccessChain 43 30 93 45: 8(ptr) Load 44 Aligned 8 94 46: 34(ptr) AccessChain 45 22 95 47: 7(int) Load 46 Aligned 16 96 49: 48(ptr) AccessChain 40(x) 22 97 Store 49 47 98 Return 99 FunctionEnd 100 14(foo(1;): 6(ptr) Function None 12 101 13(y): 11(ptr) FunctionParameter 102 15: Label 103 16: 6(ptr) Load 13(y) 104 ReturnValue 16 105 FunctionEnd 106