| spv.structuredDescriptorHeap.BufferReference.comp |
| // Module Version 10400 |
| // Generated by (magic number): 8000b |
| // Id's are bound by 67 |
| |
| Capability Shader |
| Capability Int8 |
| Capability UntypedPointersKHR |
| Capability DescriptorHeapEXT |
| Capability PhysicalStorageBufferAddressesEXT |
| Extension "SPV_EXT_descriptor_heap" |
| Extension "SPV_KHR_physical_storage_buffer" |
| Extension "SPV_KHR_untyped_pointers" |
| 1: ExtInstImport "GLSL.std.450" |
| MemoryModel PhysicalStorageBuffer64EXT GLSL450 |
| EntryPoint GLCompute 4 "main" 15 11 |
| ExecutionMode 4 LocalSize 1 1 1 |
| Source GLSL 460 |
| SourceExtension "GL_EXT_buffer_reference" |
| SourceExtension "GL_EXT_buffer_reference2" |
| SourceExtension "GL_EXT_descriptor_heap" |
| SourceExtension "GL_EXT_structured_descriptor_heap" |
| Name 4 "main" |
| Name 9 "Output" |
| MemberName 9(Output) 0 "position" |
| MemberName 9(Output) 1 "count" |
| MemberName 9(Output) 2 "inlineData" |
| MemberName 9(Output) 3 "inlineData2" |
| Name 11 "outputBuffer" |
| Name 15 "resource_heap" |
| Name 20 "RefHeap" |
| MemberName 20(RefHeap) 0 "vertexBuffer" |
| MemberName 20(RefHeap) 1 "inlineRef" |
| MemberName 20(RefHeap) 2 "forwardRef" |
| MemberName 20(RefHeap) 3 "inlineRef2" |
| Name 22 "VertexBuffer" |
| MemberName 22(VertexBuffer) 0 "positions" |
| Name 23 "" |
| MemberName 23 0 "data" |
| Name 24 "ForwardRefType" |
| MemberName 24(ForwardRefType) 0 "value" |
| MemberName 24(ForwardRefType) 1 "count" |
| Name 25 "" |
| MemberName 25 0 "data" |
| Decorate 9(Output) Block |
| MemberDecorate 9(Output) 0 Offset 0 |
| MemberDecorate 9(Output) 1 Offset 16 |
| MemberDecorate 9(Output) 2 Offset 20 |
| MemberDecorate 9(Output) 3 Offset 24 |
| Decorate 11(outputBuffer) Binding 0 |
| Decorate 11(outputBuffer) DescriptorSet 0 |
| Decorate 15(resource_heap) BuiltIn ResourceHeapEXT |
| Decorate 20(RefHeap) Block |
| MemberDecorate 20(RefHeap) 0 Offset 0 |
| MemberDecorate 20(RefHeap) 1 Offset 8 |
| MemberDecorate 20(RefHeap) 2 Offset 16 |
| MemberDecorate 20(RefHeap) 3 Offset 24 |
| Decorate 21 ArrayStride 16 |
| Decorate 22(VertexBuffer) Block |
| MemberDecorate 22(VertexBuffer) 0 Offset 0 |
| Decorate 23 Block |
| MemberDecorate 23 0 Offset 0 |
| Decorate 24(ForwardRefType) Block |
| MemberDecorate 24(ForwardRefType) 0 Offset 0 |
| MemberDecorate 24(ForwardRefType) 1 Offset 4 |
| Decorate 25 Block |
| MemberDecorate 25 0 Offset 0 |
| Decorate 29 ArrayStride 1 |
| Decorate 66 BuiltIn WorkgroupSize |
| 2: TypeVoid |
| 3: TypeFunction 2 |
| 6: TypeFloat 32 |
| 7: TypeVector 6(float) 4 |
| 8: TypeInt 32 0 |
| 9(Output): TypeStruct 7(fvec4) 8(int) 8(int) 8(int) |
| 10: TypePointer StorageBuffer 9(Output) |
| 11(outputBuffer): 10(ptr) Variable StorageBuffer |
| 12: TypeInt 32 1 |
| 13: 12(int) Constant 0 |
| 14: TypeUntypedPointerKHR UniformConstant |
| 15(resource_heap): 14(ptr) UntypedVariableKHR UniformConstant |
| TypeForwardPointer 16 PhysicalStorageBufferEXT |
| TypeForwardPointer 17 PhysicalStorageBufferEXT |
| TypeForwardPointer 18 PhysicalStorageBufferEXT |
| TypeForwardPointer 19 PhysicalStorageBufferEXT |
| 20(RefHeap): TypeStruct 16 17 18 19 |
| 21: TypeRuntimeArray 7(fvec4) |
| 22(VertexBuffer): TypeStruct 21 |
| 16: TypePointer PhysicalStorageBufferEXT 22(VertexBuffer) |
| 23: TypeStruct 8(int) |
| 17: TypePointer PhysicalStorageBufferEXT 23(struct) |
| 24(ForwardRefType): TypeStruct 6(float) 8(int) |
| 18: TypePointer PhysicalStorageBufferEXT 24(ForwardRefType) |
| 25: TypeStruct 8(int) |
| 19: TypePointer PhysicalStorageBufferEXT 25(struct) |
| 26: 8(int) Constant 256 |
| 28: TypeInt 8 0 |
| 29: TypeRuntimeArray 28(int8_t) |
| 32: TypePointer PhysicalStorageBufferEXT 7(fvec4) |
| 35: TypePointer StorageBuffer 7(fvec4) |
| 37: 12(int) Constant 1 |
| 38: 12(int) Constant 2 |
| 41: TypePointer PhysicalStorageBufferEXT 8(int) |
| 46: TypePointer PhysicalStorageBufferEXT 6(float) |
| 51: TypePointer StorageBuffer 8(int) |
| 58: 12(int) Constant 3 |
| 64: TypeVector 8(int) 3 |
| 65: 8(int) Constant 1 |
| 66: 64(ivec3) ConstantComposite 65 65 65 |
| 4(main): 2 Function None 3 |
| 5: Label |
| 27: 14(ptr) UntypedAccessChainKHR 29 15(resource_heap) 26 |
| 30: 14(ptr) UntypedAccessChainKHR 20(RefHeap) 27 13 |
| 31: 16(ptr) Load 30 |
| 33: 32(ptr) AccessChain 31 13 13 |
| 34: 7(fvec4) Load 33 Aligned 16 |
| 36: 35(ptr) AccessChain 11(outputBuffer) 13 |
| Store 36 34 |
| 39: 14(ptr) UntypedAccessChainKHR 20(RefHeap) 27 38 |
| 40: 18(ptr) Load 39 |
| 42: 41(ptr) AccessChain 40 37 |
| 43: 8(int) Load 42 Aligned 4 |
| 44: 14(ptr) UntypedAccessChainKHR 20(RefHeap) 27 38 |
| 45: 18(ptr) Load 44 |
| 47: 46(ptr) AccessChain 45 13 |
| 48: 6(float) Load 47 Aligned 16 |
| 49: 8(int) ConvertFToU 48 |
| 50: 8(int) IAdd 43 49 |
| 52: 51(ptr) AccessChain 11(outputBuffer) 37 |
| Store 52 50 |
| 53: 14(ptr) UntypedAccessChainKHR 20(RefHeap) 27 37 |
| 54: 17(ptr) Load 53 |
| 55: 41(ptr) AccessChain 54 13 |
| 56: 8(int) Load 55 Aligned 16 |
| 57: 51(ptr) AccessChain 11(outputBuffer) 38 |
| Store 57 56 |
| 59: 14(ptr) UntypedAccessChainKHR 20(RefHeap) 27 58 |
| 60: 19(ptr) Load 59 |
| 61: 41(ptr) AccessChain 60 13 |
| 62: 8(int) Load 61 Aligned 4 |
| 63: 51(ptr) AccessChain 11(outputBuffer) 58 |
| Store 63 62 |
| Return |
| FunctionEnd |