|
1 | | -OpCapability Shader |
2 | | -OpCapability StorageBufferArrayDynamicIndexing |
3 | | -OpCapability ShaderNonUniform |
4 | | -OpCapability RuntimeDescriptorArray |
5 | | -OpCapability StorageBufferArrayNonUniformIndexing |
6 | | -OpMemoryModel Logical Simple |
7 | | -OpEntryPoint Vertex %1 "main" %2 %3 %4 |
8 | | -OpName %2 "index" |
9 | | -OpName %3 "buffers" |
10 | | -OpName %4 "out" |
11 | | -OpDecorate %8 Block |
12 | | -OpMemberDecorate %8 0 Offset 0 |
13 | | -OpDecorate %2 Location 0 |
14 | | -OpDecorate %3 NonWritable |
15 | | -OpDecorate %3 Binding 0 |
16 | | -OpDecorate %3 DescriptorSet 0 |
17 | | -OpDecorate %4 Location 0 |
18 | | -OpDecorate %9 NonUniform |
19 | | -%10 = OpTypeInt 32 0 |
20 | | -%11 = OpTypePointer Input %10 |
21 | | -%12 = OpTypeFloat 32 |
22 | | -%13 = OpTypeVector %12 4 |
23 | | -%8 = OpTypeStruct %13 |
24 | | -%14 = OpTypeRuntimeArray %8 |
25 | | -%15 = OpTypePointer StorageBuffer %14 |
26 | | -%16 = OpTypePointer Output %13 |
27 | | -%17 = OpTypeVoid |
28 | | -%18 = OpTypeFunction %17 |
29 | | -%2 = OpVariable %11 Input |
30 | | -%19 = OpTypePointer StorageBuffer %8 |
31 | | -%3 = OpVariable %15 StorageBuffer |
32 | | -%20 = OpTypePointer StorageBuffer %13 |
33 | | -%21 = OpConstant %10 0 |
34 | | -%4 = OpVariable %16 Output |
35 | | -%1 = OpFunction %17 None %18 |
36 | | -%22 = OpLabel |
37 | | -%23 = OpLoad %10 %2 |
38 | | -%9 = OpAccessChain %19 %3 %23 |
39 | | -%24 = OpAccessChain %20 %9 %21 |
40 | | -%25 = OpLoad %13 %24 |
41 | | -OpStore %4 %25 |
42 | | -OpNoLine |
43 | | -OpReturn |
44 | | -OpFunctionEnd |
| 1 | + OpCapability Shader |
| 2 | + OpCapability StorageBufferArrayDynamicIndexing |
| 3 | + OpCapability ShaderNonUniform |
| 4 | + OpCapability RuntimeDescriptorArray |
| 5 | + OpCapability StorageBufferArrayNonUniformIndexing |
| 6 | + OpMemoryModel Logical Simple |
| 7 | + OpEntryPoint Vertex %1 "main" %index %buffers %out |
| 8 | + OpName %index "index" |
| 9 | + OpName %buffers "buffers" |
| 10 | + OpName %out "out" |
| 11 | + OpDecorate %_struct_8 Block |
| 12 | + OpMemberDecorate %_struct_8 0 Offset 0 |
| 13 | + OpDecorate %index Location 0 |
| 14 | + OpDecorate %buffers NonWritable |
| 15 | + OpDecorate %buffers Binding 0 |
| 16 | + OpDecorate %buffers DescriptorSet 0 |
| 17 | + OpDecorate %out Location 0 |
| 18 | + OpDecorate %9 NonUniform |
| 19 | + %u32 = OpTypeInt 32 0 |
| 20 | +%_ptr_Input_u32 = OpTypePointer Input %u32 |
| 21 | + %f32 = OpTypeFloat 32 |
| 22 | + %v4f32 = OpTypeVector %f32 4 |
| 23 | + %_struct_8 = OpTypeStruct %v4f32 |
| 24 | +%_runtimearr__struct_8 = OpTypeRuntimeArray %_struct_8 |
| 25 | +%_ptr_StorageBuffer__runtimearr__struct_8 = OpTypePointer StorageBuffer %_runtimearr__struct_8 |
| 26 | +%_ptr_Output_v4f32 = OpTypePointer Output %v4f32 |
| 27 | + %void = OpTypeVoid |
| 28 | + %18 = OpTypeFunction %void |
| 29 | + %index = OpVariable %_ptr_Input_u32 Input |
| 30 | +%_ptr_StorageBuffer__struct_8 = OpTypePointer StorageBuffer %_struct_8 |
| 31 | + %buffers = OpVariable %_ptr_StorageBuffer__runtimearr__struct_8 StorageBuffer |
| 32 | +%_ptr_StorageBuffer_v4f32 = OpTypePointer StorageBuffer %v4f32 |
| 33 | + %u32_0 = OpConstant %u32 0 |
| 34 | + %out = OpVariable %_ptr_Output_v4f32 Output |
| 35 | + %1 = OpFunction %void None %18 |
| 36 | + %22 = OpLabel |
| 37 | + %23 = OpLoad %u32 %index |
| 38 | + %9 = OpAccessChain %_ptr_StorageBuffer__struct_8 %buffers %23 |
| 39 | + %24 = OpAccessChain %_ptr_StorageBuffer_v4f32 %9 %u32_0 |
| 40 | + %25 = OpLoad %v4f32 %24 |
| 41 | + OpStore %out %25 |
| 42 | + OpNoLine |
| 43 | + OpReturn |
| 44 | + OpFunctionEnd |
0 commit comments