spv.bufferReference.memoryModel.block.comp // Module Version 10300 // Generated by (magic number): 8000b // Id's are bound by 58 Capability Shader Capability VulkanMemoryModelKHR Capability PhysicalStorageBufferAddressesEXT Extension "SPV_KHR_physical_storage_buffer" Extension "SPV_KHR_vulkan_memory_model" 1: ExtInstImport "GLSL.std.450" MemoryModel PhysicalStorageBuffer64EXT VulkanKHR EntryPoint GLCompute 4 "main" ExecutionMode 4 LocalSize 1 1 1 Source GLSL 450 SourceExtension "GL_EXT_buffer_reference" Name 4 "main" Name 8 "Result" MemberName 8(Result) 0 "value" Name 10 "result" Name 15 "Push" MemberName 15(Push) 0 "ref" MemberName 15(Push) 1 "members" Name 16 "Payload" MemberName 16(Payload) 0 "values" Name 18 "BlockQualifiedRef" MemberName 18(BlockQualifiedRef) 0 "data" Name 19 "MemberQualifiedRef" MemberName 19(MemberQualifiedRef) 0 "coherentValue" MemberName 19(MemberQualifiedRef) 1 "volatileValue" Name 21 "pc" Decorate 8(Result) Block MemberDecorate 8(Result) 0 Offset 0 Decorate 10(result) Binding 0 Decorate 10(result) DescriptorSet 0 Decorate 15(Push) Block MemberDecorate 15(Push) 0 Offset 0 MemberDecorate 15(Push) 1 Offset 8 MemberDecorate 16(Payload) 0 Offset 0 Decorate 17 ArrayStride 8 Decorate 18(BlockQualifiedRef) Block MemberDecorate 18(BlockQualifiedRef) 0 Offset 0 Decorate 19(MemberQualifiedRef) Block MemberDecorate 19(MemberQualifiedRef) 0 Offset 0 MemberDecorate 19(MemberQualifiedRef) 1 Offset 4 2: TypeVoid 3: TypeFunction 2 6: TypeInt 32 0 7: TypeVector 6(int) 2 8(Result): TypeStruct 7(ivec2) 9: TypePointer StorageBuffer 8(Result) 10(result): 9(ptr) Variable StorageBuffer 11: TypeInt 32 1 12: 11(int) Constant 0 TypeForwardPointer 13 PhysicalStorageBufferEXT TypeForwardPointer 14 PhysicalStorageBufferEXT 15(Push): TypeStruct 13 14 16(Payload): TypeStruct 7(ivec2) 17: TypeRuntimeArray 16(Payload) 18(BlockQualifiedRef): TypeStruct 17 13: TypePointer PhysicalStorageBufferEXT 18(BlockQualifiedRef) 19(MemberQualifiedRef): TypeStruct 6(int) 6(int) 14: TypePointer PhysicalStorageBufferEXT 19(MemberQualifiedRef) 20: TypePointer PushConstant 15(Push) 21(pc): 20(ptr) Variable PushConstant 22: TypePointer PushConstant 13(ptr) 25: TypePointer PhysicalStorageBufferEXT 7(ivec2) 28: 6(int) Constant 5 29: TypePointer StorageBuffer 7(ivec2) 33: 11(int) Constant 1 37: TypePointer PushConstant 14(ptr) 40: TypePointer PhysicalStorageBufferEXT 6(int) 48: 6(int) Constant 0 49: TypePointer StorageBuffer 6(int) 56: 6(int) Constant 6 4(main): 2 Function None 3 5: Label 23: 22(ptr) AccessChain 21(pc) 12 24: 13(ptr) Load 23 26: 25(ptr) AccessChain 24 12 12 12 27: 7(ivec2) Load 26 Volatile Aligned MakePointerVisibleKHR NonPrivatePointerKHR 8 28 30: 29(ptr) AccessChain 10(result) 12 Store 30 27 31: 22(ptr) AccessChain 21(pc) 12 32: 13(ptr) Load 31 34: 29(ptr) AccessChain 10(result) 12 35: 7(ivec2) Load 34 36: 25(ptr) AccessChain 32 12 33 12 Store 36 35 Volatile Aligned MakePointerAvailableKHR NonPrivatePointerKHR 8 28 38: 37(ptr) AccessChain 21(pc) 33 39: 14(ptr) Load 38 41: 40(ptr) AccessChain 39 12 42: 6(int) Load 41 Aligned MakePointerVisibleKHR NonPrivatePointerKHR 16 28 43: 37(ptr) AccessChain 21(pc) 33 44: 14(ptr) Load 43 45: 40(ptr) AccessChain 44 33 46: 6(int) Load 45 Volatile Aligned MakePointerVisibleKHR NonPrivatePointerKHR 4 28 47: 6(int) IAdd 42 46 50: 49(ptr) AccessChain 10(result) 12 48 Store 50 47 51: 37(ptr) AccessChain 21(pc) 33 52: 14(ptr) Load 51 53: 40(ptr) AccessChain 52 12 Store 53 28 Aligned MakePointerAvailableKHR NonPrivatePointerKHR 16 28 54: 37(ptr) AccessChain 21(pc) 33 55: 14(ptr) Load 54 57: 40(ptr) AccessChain 55 33 Store 57 56 Volatile Aligned MakePointerAvailableKHR NonPrivatePointerKHR 4 28 Return FunctionEnd