blob: 10753f997628948edc792179c774bd2069cbd737 [file] [log] [blame]
James Price88c231b2023-08-15 12:47:28 +00001; SPIR-V
2; Version: 1.3
3; Generator: Google Tint Compiler; 0
Natalie Chouinarde9027182024-06-13 18:50:19 +00004; Bound: 57
James Price88c231b2023-08-15 12:47:28 +00005; Schema: 0
6 OpCapability Shader
7 OpMemoryModel Logical GLSL450
James Price88c231b2023-08-15 12:47:28 +00008 OpEntryPoint Fragment %fragment_main "fragment_main"
9 OpEntryPoint GLCompute %compute_main "compute_main"
Natalie Chouinarde9027182024-06-13 18:50:19 +000010 OpEntryPoint Vertex %vertex_main "vertex_main" %pos_1 %prevent_dce_1 %vertex_point_size
James Price88c231b2023-08-15 12:47:28 +000011 OpExecutionMode %fragment_main OriginUpperLeft
12 OpExecutionMode %compute_main LocalSize 1 1 1
Natalie Chouinarde9027182024-06-13 18:50:19 +000013 OpName %pos_1 "pos_1"
14 OpName %prevent_dce_1 "prevent_dce_1"
James Price88c231b2023-08-15 12:47:28 +000015 OpName %vertex_point_size "vertex_point_size"
16 OpName %arg_0 "arg_0"
17 OpName %prevent_dce_block "prevent_dce_block"
18 OpMemberName %prevent_dce_block 0 "inner"
19 OpName %prevent_dce "prevent_dce"
20 OpName %textureLoad_46dbf5 "textureLoad_46dbf5"
21 OpName %res "res"
James Price88c231b2023-08-15 12:47:28 +000022 OpName %fragment_main "fragment_main"
23 OpName %compute_main "compute_main"
Natalie Chouinarde9027182024-06-13 18:50:19 +000024 OpName %VertexOutput "VertexOutput"
25 OpMemberName %VertexOutput 0 "pos"
26 OpMemberName %VertexOutput 1 "prevent_dce"
27 OpName %vertex_main_inner "vertex_main_inner"
28 OpName %out "out"
29 OpName %vertex_main "vertex_main"
30 OpDecorate %pos_1 BuiltIn Position
31 OpDecorate %prevent_dce_1 Location 0
32 OpDecorate %prevent_dce_1 Flat
James Price88c231b2023-08-15 12:47:28 +000033 OpDecorate %vertex_point_size BuiltIn PointSize
34 OpDecorate %arg_0 NonWritable
35 OpDecorate %arg_0 DescriptorSet 1
36 OpDecorate %arg_0 Binding 0
37 OpDecorate %prevent_dce_block Block
38 OpMemberDecorate %prevent_dce_block 0 Offset 0
Natalie Chouinarde9027182024-06-13 18:50:19 +000039 OpDecorate %prevent_dce DescriptorSet 0
James Price88c231b2023-08-15 12:47:28 +000040 OpDecorate %prevent_dce Binding 0
Natalie Chouinarde9027182024-06-13 18:50:19 +000041 OpMemberDecorate %VertexOutput 0 Offset 0
42 OpMemberDecorate %VertexOutput 1 Offset 16
James Price88c231b2023-08-15 12:47:28 +000043 %float = OpTypeFloat 32
44 %v4float = OpTypeVector %float 4
45%_ptr_Output_v4float = OpTypePointer Output %v4float
46 %5 = OpConstantNull %v4float
Natalie Chouinarde9027182024-06-13 18:50:19 +000047 %pos_1 = OpVariable %_ptr_Output_v4float Output %5
48%prevent_dce_1 = OpVariable %_ptr_Output_v4float Output %5
James Price88c231b2023-08-15 12:47:28 +000049%_ptr_Output_float = OpTypePointer Output %float
Natalie Chouinarde9027182024-06-13 18:50:19 +000050 %9 = OpConstantNull %float
51%vertex_point_size = OpVariable %_ptr_Output_float Output %9
52 %12 = OpTypeImage %float 3D 0 0 0 2 Rgba8
53%_ptr_UniformConstant_12 = OpTypePointer UniformConstant %12
54 %arg_0 = OpVariable %_ptr_UniformConstant_12 UniformConstant
James Price88c231b2023-08-15 12:47:28 +000055%prevent_dce_block = OpTypeStruct %v4float
56%_ptr_StorageBuffer_prevent_dce_block = OpTypePointer StorageBuffer %prevent_dce_block
57%prevent_dce = OpVariable %_ptr_StorageBuffer_prevent_dce_block StorageBuffer
Natalie Chouinarde9027182024-06-13 18:50:19 +000058 %16 = OpTypeFunction %v4float
James Price88c231b2023-08-15 12:47:28 +000059 %uint = OpTypeInt 32 0
60 %v3uint = OpTypeVector %uint 3
61 %uint_1 = OpConstant %uint 1
62 %24 = OpConstantComposite %v3uint %uint_1 %uint_1 %uint_1
63%_ptr_Function_v4float = OpTypePointer Function %v4float
Natalie Chouinarde9027182024-06-13 18:50:19 +000064 %void = OpTypeVoid
65 %28 = OpTypeFunction %void
James Price88c231b2023-08-15 12:47:28 +000066 %uint_0 = OpConstant %uint 0
67%_ptr_StorageBuffer_v4float = OpTypePointer StorageBuffer %v4float
Natalie Chouinarde9027182024-06-13 18:50:19 +000068%VertexOutput = OpTypeStruct %v4float %v4float
69 %40 = OpTypeFunction %VertexOutput
70%_ptr_Function_VertexOutput = OpTypePointer Function %VertexOutput
71 %46 = OpConstantNull %VertexOutput
James Price88c231b2023-08-15 12:47:28 +000072 %float_1 = OpConstant %float 1
Natalie Chouinarde9027182024-06-13 18:50:19 +000073%textureLoad_46dbf5 = OpFunction %v4float None %16
James Price88c231b2023-08-15 12:47:28 +000074 %18 = OpLabel
75 %res = OpVariable %_ptr_Function_v4float Function %5
Natalie Chouinarde9027182024-06-13 18:50:19 +000076 %20 = OpLoad %12 %arg_0
James Price88c231b2023-08-15 12:47:28 +000077 %19 = OpImageRead %v4float %20 %24
78 OpStore %res %19
Natalie Chouinarde9027182024-06-13 18:50:19 +000079 %27 = OpLoad %v4float %res
80 OpReturnValue %27
81 OpFunctionEnd
82%fragment_main = OpFunction %void None %28
83 %31 = OpLabel
84 %34 = OpAccessChain %_ptr_StorageBuffer_v4float %prevent_dce %uint_0
85 %35 = OpFunctionCall %v4float %textureLoad_46dbf5
86 OpStore %34 %35
James Price88c231b2023-08-15 12:47:28 +000087 OpReturn
88 OpFunctionEnd
Natalie Chouinarde9027182024-06-13 18:50:19 +000089%compute_main = OpFunction %void None %28
90 %37 = OpLabel
91 %38 = OpAccessChain %_ptr_StorageBuffer_v4float %prevent_dce %uint_0
92 %39 = OpFunctionCall %v4float %textureLoad_46dbf5
93 OpStore %38 %39
James Price88c231b2023-08-15 12:47:28 +000094 OpReturn
95 OpFunctionEnd
Natalie Chouinarde9027182024-06-13 18:50:19 +000096%vertex_main_inner = OpFunction %VertexOutput None %40
James Price88c231b2023-08-15 12:47:28 +000097 %43 = OpLabel
Natalie Chouinarde9027182024-06-13 18:50:19 +000098 %out = OpVariable %_ptr_Function_VertexOutput Function %46
99 %47 = OpAccessChain %_ptr_Function_v4float %out %uint_0
100 OpStore %47 %5
101 %48 = OpAccessChain %_ptr_Function_v4float %out %uint_1
102 %49 = OpFunctionCall %v4float %textureLoad_46dbf5
103 OpStore %48 %49
104 %50 = OpLoad %VertexOutput %out
105 OpReturnValue %50
106 OpFunctionEnd
107%vertex_main = OpFunction %void None %28
108 %52 = OpLabel
109 %53 = OpFunctionCall %VertexOutput %vertex_main_inner
110 %54 = OpCompositeExtract %v4float %53 0
111 OpStore %pos_1 %54
112 %55 = OpCompositeExtract %v4float %53 1
113 OpStore %prevent_dce_1 %55
114 OpStore %vertex_point_size %float_1
James Price88c231b2023-08-15 12:47:28 +0000115 OpReturn
116 OpFunctionEnd