blob: 0c7091cb1c1819cd45f6a3c106eddc9312f1639d [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 OpCapability StorageImageExtendedFormats
8 OpMemoryModel Logical GLSL450
James Price88c231b2023-08-15 12:47:28 +00009 OpEntryPoint Fragment %fragment_main "fragment_main"
10 OpEntryPoint GLCompute %compute_main "compute_main"
Natalie Chouinarde9027182024-06-13 18:50:19 +000011 OpEntryPoint Vertex %vertex_main "vertex_main" %pos_1 %prevent_dce_1 %vertex_point_size
James Price88c231b2023-08-15 12:47:28 +000012 OpExecutionMode %fragment_main OriginUpperLeft
13 OpExecutionMode %compute_main LocalSize 1 1 1
Natalie Chouinarde9027182024-06-13 18:50:19 +000014 OpName %pos_1 "pos_1"
15 OpName %prevent_dce_1 "prevent_dce_1"
James Price88c231b2023-08-15 12:47:28 +000016 OpName %vertex_point_size "vertex_point_size"
17 OpName %arg_0 "arg_0"
18 OpName %prevent_dce_block "prevent_dce_block"
19 OpMemberName %prevent_dce_block 0 "inner"
20 OpName %prevent_dce "prevent_dce"
21 OpName %textureLoad_83162f "textureLoad_83162f"
22 OpName %res "res"
James Price88c231b2023-08-15 12:47:28 +000023 OpName %fragment_main "fragment_main"
24 OpName %compute_main "compute_main"
Natalie Chouinarde9027182024-06-13 18:50:19 +000025 OpName %VertexOutput "VertexOutput"
26 OpMemberName %VertexOutput 0 "pos"
27 OpMemberName %VertexOutput 1 "prevent_dce"
28 OpName %vertex_main_inner "vertex_main_inner"
29 OpName %out "out"
30 OpName %vertex_main "vertex_main"
31 OpDecorate %pos_1 BuiltIn Position
32 OpDecorate %prevent_dce_1 Location 0
33 OpDecorate %prevent_dce_1 Flat
James Price88c231b2023-08-15 12:47:28 +000034 OpDecorate %vertex_point_size BuiltIn PointSize
35 OpDecorate %arg_0 NonWritable
36 OpDecorate %arg_0 DescriptorSet 1
37 OpDecorate %arg_0 Binding 0
38 OpDecorate %prevent_dce_block Block
39 OpMemberDecorate %prevent_dce_block 0 Offset 0
Natalie Chouinarde9027182024-06-13 18:50:19 +000040 OpDecorate %prevent_dce DescriptorSet 0
James Price88c231b2023-08-15 12:47:28 +000041 OpDecorate %prevent_dce Binding 0
Natalie Chouinarde9027182024-06-13 18:50:19 +000042 OpMemberDecorate %VertexOutput 0 Offset 0
43 OpMemberDecorate %VertexOutput 1 Offset 16
James Price88c231b2023-08-15 12:47:28 +000044 %float = OpTypeFloat 32
45 %v4float = OpTypeVector %float 4
46%_ptr_Output_v4float = OpTypePointer Output %v4float
47 %5 = OpConstantNull %v4float
Natalie Chouinarde9027182024-06-13 18:50:19 +000048 %pos_1 = OpVariable %_ptr_Output_v4float Output %5
49%prevent_dce_1 = OpVariable %_ptr_Output_v4float Output %5
James Price88c231b2023-08-15 12:47:28 +000050%_ptr_Output_float = OpTypePointer Output %float
Natalie Chouinarde9027182024-06-13 18:50:19 +000051 %9 = OpConstantNull %float
52%vertex_point_size = OpVariable %_ptr_Output_float Output %9
53 %12 = OpTypeImage %float 3D 0 0 0 2 Rg32f
54%_ptr_UniformConstant_12 = OpTypePointer UniformConstant %12
55 %arg_0 = OpVariable %_ptr_UniformConstant_12 UniformConstant
James Price88c231b2023-08-15 12:47:28 +000056%prevent_dce_block = OpTypeStruct %v4float
57%_ptr_StorageBuffer_prevent_dce_block = OpTypePointer StorageBuffer %prevent_dce_block
58%prevent_dce = OpVariable %_ptr_StorageBuffer_prevent_dce_block StorageBuffer
Natalie Chouinarde9027182024-06-13 18:50:19 +000059 %16 = OpTypeFunction %v4float
James Price88c231b2023-08-15 12:47:28 +000060 %uint = OpTypeInt 32 0
61 %v3uint = OpTypeVector %uint 3
62 %uint_1 = OpConstant %uint 1
63 %24 = OpConstantComposite %v3uint %uint_1 %uint_1 %uint_1
64%_ptr_Function_v4float = OpTypePointer Function %v4float
Natalie Chouinarde9027182024-06-13 18:50:19 +000065 %void = OpTypeVoid
66 %28 = OpTypeFunction %void
James Price88c231b2023-08-15 12:47:28 +000067 %uint_0 = OpConstant %uint 0
68%_ptr_StorageBuffer_v4float = OpTypePointer StorageBuffer %v4float
Natalie Chouinarde9027182024-06-13 18:50:19 +000069%VertexOutput = OpTypeStruct %v4float %v4float
70 %40 = OpTypeFunction %VertexOutput
71%_ptr_Function_VertexOutput = OpTypePointer Function %VertexOutput
72 %46 = OpConstantNull %VertexOutput
James Price88c231b2023-08-15 12:47:28 +000073 %float_1 = OpConstant %float 1
Natalie Chouinarde9027182024-06-13 18:50:19 +000074%textureLoad_83162f = OpFunction %v4float None %16
James Price88c231b2023-08-15 12:47:28 +000075 %18 = OpLabel
76 %res = OpVariable %_ptr_Function_v4float Function %5
Natalie Chouinarde9027182024-06-13 18:50:19 +000077 %20 = OpLoad %12 %arg_0
James Price88c231b2023-08-15 12:47:28 +000078 %19 = OpImageRead %v4float %20 %24
79 OpStore %res %19
Natalie Chouinarde9027182024-06-13 18:50:19 +000080 %27 = OpLoad %v4float %res
81 OpReturnValue %27
82 OpFunctionEnd
83%fragment_main = OpFunction %void None %28
84 %31 = OpLabel
85 %34 = OpAccessChain %_ptr_StorageBuffer_v4float %prevent_dce %uint_0
86 %35 = OpFunctionCall %v4float %textureLoad_83162f
87 OpStore %34 %35
James Price88c231b2023-08-15 12:47:28 +000088 OpReturn
89 OpFunctionEnd
Natalie Chouinarde9027182024-06-13 18:50:19 +000090%compute_main = OpFunction %void None %28
91 %37 = OpLabel
92 %38 = OpAccessChain %_ptr_StorageBuffer_v4float %prevent_dce %uint_0
93 %39 = OpFunctionCall %v4float %textureLoad_83162f
94 OpStore %38 %39
James Price88c231b2023-08-15 12:47:28 +000095 OpReturn
96 OpFunctionEnd
Natalie Chouinarde9027182024-06-13 18:50:19 +000097%vertex_main_inner = OpFunction %VertexOutput None %40
James Price88c231b2023-08-15 12:47:28 +000098 %43 = OpLabel
Natalie Chouinarde9027182024-06-13 18:50:19 +000099 %out = OpVariable %_ptr_Function_VertexOutput Function %46
100 %47 = OpAccessChain %_ptr_Function_v4float %out %uint_0
101 OpStore %47 %5
102 %48 = OpAccessChain %_ptr_Function_v4float %out %uint_1
103 %49 = OpFunctionCall %v4float %textureLoad_83162f
104 OpStore %48 %49
105 %50 = OpLoad %VertexOutput %out
106 OpReturnValue %50
107 OpFunctionEnd
108%vertex_main = OpFunction %void None %28
109 %52 = OpLabel
110 %53 = OpFunctionCall %VertexOutput %vertex_main_inner
111 %54 = OpCompositeExtract %v4float %53 0
112 OpStore %pos_1 %54
113 %55 = OpCompositeExtract %v4float %53 1
114 OpStore %prevent_dce_1 %55
115 OpStore %vertex_point_size %float_1
James Price88c231b2023-08-15 12:47:28 +0000116 OpReturn
117 OpFunctionEnd