• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1; SPIR-V
2; Version: 1.0
3; Generator: Khronos Glslang Reference Front End; 10
4; Bound: 59
5; Schema: 0
6               OpCapability Shader
7               OpCapability PhysicalStorageBufferAddresses
8               OpExtension "SPV_EXT_physical_storage_buffer"
9          %1 = OpExtInstImport "GLSL.std.450"
10               OpMemoryModel PhysicalStorageBuffer64 GLSL450
11               OpEntryPoint GLCompute %main "main" %gl_GlobalInvocationID
12               OpExecutionMode %main LocalSize 64 1 1
13               OpSource GLSL 450
14               OpSourceExtension "GL_EXT_buffer_reference"
15               OpName %main "main"
16               OpName %Registers "Registers"
17               OpMemberName %Registers 0 "ro"
18               OpMemberName %Registers 1 "rw"
19               OpMemberName %Registers 2 "wo"
20               OpName %RO "Alias"
21               OpMemberName %RO 0 "v"
22               OpName %RW "Alias"
23               OpMemberName %RW 0 "v"
24               OpName %WO "Alias"
25               OpMemberName %WO 0 "v"
26               OpName %registers "registers"
27               OpName %gl_GlobalInvocationID "gl_GlobalInvocationID"
28               OpMemberDecorate %Registers 0 Offset 0
29               OpMemberDecorate %Registers 1 Offset 8
30               OpMemberDecorate %Registers 2 Offset 16
31               OpDecorate %Registers Block
32               OpDecorate %_runtimearr_v4float ArrayStride 16
33               OpMemberDecorate %RO 0 NonWritable
34               OpMemberDecorate %RO 0 Offset 0
35               OpDecorate %RO Block
36               OpDecorate %_runtimearr_v4float_0 ArrayStride 16
37               OpMemberDecorate %RW 0 Restrict
38               OpMemberDecorate %RW 0 Offset 0
39               OpDecorate %RW Block
40               OpDecorate %_runtimearr_v4float_1 ArrayStride 16
41               OpMemberDecorate %WO 0 Coherent
42               OpMemberDecorate %WO 0 NonReadable
43               OpMemberDecorate %WO 0 Offset 0
44               OpDecorate %WO Block
45               OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
46               OpDecorate %gl_WorkGroupSize BuiltIn WorkgroupSize
47       %void = OpTypeVoid
48          %3 = OpTypeFunction %void
49               OpTypeForwardPointer %_ptr_PhysicalStorageBuffer_RO PhysicalStorageBuffer
50               OpTypeForwardPointer %_ptr_PhysicalStorageBuffer_RW PhysicalStorageBuffer
51               OpTypeForwardPointer %_ptr_PhysicalStorageBuffer_WO PhysicalStorageBuffer
52  %Registers = OpTypeStruct %_ptr_PhysicalStorageBuffer_RO %_ptr_PhysicalStorageBuffer_RW %_ptr_PhysicalStorageBuffer_WO
53      %float = OpTypeFloat 32
54    %v4float = OpTypeVector %float 4
55%_runtimearr_v4float = OpTypeRuntimeArray %v4float
56         %RO = OpTypeStruct %_runtimearr_v4float
57%_ptr_PhysicalStorageBuffer_RO = OpTypePointer PhysicalStorageBuffer %RO
58%_runtimearr_v4float_0 = OpTypeRuntimeArray %v4float
59         %RW = OpTypeStruct %_runtimearr_v4float_0
60%_ptr_PhysicalStorageBuffer_RW = OpTypePointer PhysicalStorageBuffer %RW
61%_runtimearr_v4float_1 = OpTypeRuntimeArray %v4float
62         %WO = OpTypeStruct %_runtimearr_v4float_1
63%_ptr_PhysicalStorageBuffer_WO = OpTypePointer PhysicalStorageBuffer %WO
64%_ptr_PushConstant_Registers = OpTypePointer PushConstant %Registers
65  %registers = OpVariable %_ptr_PushConstant_Registers PushConstant
66        %int = OpTypeInt 32 1
67      %int_1 = OpConstant %int 1
68%_ptr_PushConstant__ptr_PhysicalStorageBuffer_RW = OpTypePointer PushConstant %_ptr_PhysicalStorageBuffer_RW
69      %int_0 = OpConstant %int 0
70       %uint = OpTypeInt 32 0
71     %v3uint = OpTypeVector %uint 3
72%_ptr_Input_v3uint = OpTypePointer Input %v3uint
73%gl_GlobalInvocationID = OpVariable %_ptr_Input_v3uint Input
74     %uint_0 = OpConstant %uint 0
75%_ptr_Input_uint = OpTypePointer Input %uint
76%_ptr_PushConstant__ptr_PhysicalStorageBuffer_RO = OpTypePointer PushConstant %_ptr_PhysicalStorageBuffer_RO
77%_ptr_PhysicalStorageBuffer_v4float = OpTypePointer PhysicalStorageBuffer %v4float
78      %int_2 = OpConstant %int 2
79%_ptr_PushConstant__ptr_PhysicalStorageBuffer_WO = OpTypePointer PushConstant %_ptr_PhysicalStorageBuffer_WO
80    %uint_64 = OpConstant %uint 64
81     %uint_1 = OpConstant %uint 1
82%gl_WorkGroupSize = OpConstantComposite %v3uint %uint_64 %uint_1 %uint_1
83       %main = OpFunction %void None %3
84          %5 = OpLabel
85         %23 = OpAccessChain %_ptr_PushConstant__ptr_PhysicalStorageBuffer_RW %registers %int_1
86         %24 = OpLoad %_ptr_PhysicalStorageBuffer_RW %23
87         %32 = OpAccessChain %_ptr_Input_uint %gl_GlobalInvocationID %uint_0
88         %33 = OpLoad %uint %32
89         %35 = OpAccessChain %_ptr_PushConstant__ptr_PhysicalStorageBuffer_RO %registers %int_0
90         %36 = OpLoad %_ptr_PhysicalStorageBuffer_RO %35
91         %37 = OpAccessChain %_ptr_Input_uint %gl_GlobalInvocationID %uint_0
92         %38 = OpLoad %uint %37
93         %40 = OpAccessChain %_ptr_PhysicalStorageBuffer_v4float %36 %int_0 %38
94         %41 = OpLoad %v4float %40 Aligned 16
95         %42 = OpAccessChain %_ptr_PhysicalStorageBuffer_v4float %24 %int_0 %33
96               OpStore %42 %41 Aligned 16
97         %45 = OpAccessChain %_ptr_PushConstant__ptr_PhysicalStorageBuffer_WO %registers %int_2
98         %46 = OpLoad %_ptr_PhysicalStorageBuffer_WO %45
99         %47 = OpAccessChain %_ptr_Input_uint %gl_GlobalInvocationID %uint_0
100         %48 = OpLoad %uint %47
101         %49 = OpAccessChain %_ptr_PushConstant__ptr_PhysicalStorageBuffer_RO %registers %int_0
102         %50 = OpLoad %_ptr_PhysicalStorageBuffer_RO %49
103         %51 = OpAccessChain %_ptr_Input_uint %gl_GlobalInvocationID %uint_0
104         %52 = OpLoad %uint %51
105         %53 = OpAccessChain %_ptr_PhysicalStorageBuffer_v4float %50 %int_0 %52
106         %54 = OpLoad %v4float %53 Aligned 16
107         %55 = OpAccessChain %_ptr_PhysicalStorageBuffer_v4float %46 %int_0 %48
108               OpStore %55 %54 Aligned 16
109               OpReturn
110               OpFunctionEnd
111