blob: d7c605e71f344ba411f2c9ab1b3096402aab9f0f [file] [log] [blame]
Ben Claytonb07a7ce2021-06-03 11:26:17 +00001; SPIR-V
2; Version: 1.3
3; Generator: Google Tint Compiler; 0
Ben Clayton77a90cb2023-03-06 18:25:08 +00004; Bound: 52
Ben Claytonb07a7ce2021-06-03 11:26:17 +00005; Schema: 0
6 OpCapability Shader
7 OpMemoryModel Logical GLSL450
James Price11c6fcd2021-08-05 17:34:19 +00008 OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
Ben Claytonb07a7ce2021-06-03 11:26:17 +00009 OpEntryPoint Fragment %fragment_main "fragment_main"
10 OpEntryPoint GLCompute %compute_main "compute_main"
11 OpExecutionMode %fragment_main OriginUpperLeft
12 OpExecutionMode %compute_main LocalSize 1 1 1
James Price11c6fcd2021-08-05 17:34:19 +000013 OpName %value "value"
14 OpName %vertex_point_size "vertex_point_size"
Ben Claytonb07a7ce2021-06-03 11:26:17 +000015 OpName %arg_0 "arg_0"
Ben Clayton77a90cb2023-03-06 18:25:08 +000016 OpName %prevent_dce_block "prevent_dce_block"
17 OpMemberName %prevent_dce_block 0 "inner"
18 OpName %prevent_dce "prevent_dce"
Ben Claytonb07a7ce2021-06-03 11:26:17 +000019 OpName %textureLoad_7c90e5 "textureLoad_7c90e5"
20 OpName %res "res"
James Price11c6fcd2021-08-05 17:34:19 +000021 OpName %vertex_main_inner "vertex_main_inner"
Ben Claytonb07a7ce2021-06-03 11:26:17 +000022 OpName %vertex_main "vertex_main"
23 OpName %fragment_main "fragment_main"
24 OpName %compute_main "compute_main"
James Price11c6fcd2021-08-05 17:34:19 +000025 OpDecorate %value BuiltIn Position
26 OpDecorate %vertex_point_size BuiltIn PointSize
Ben Claytonb07a7ce2021-06-03 11:26:17 +000027 OpDecorate %arg_0 DescriptorSet 1
28 OpDecorate %arg_0 Binding 0
Ben Clayton77a90cb2023-03-06 18:25:08 +000029 OpDecorate %prevent_dce_block Block
30 OpMemberDecorate %prevent_dce_block 0 Offset 0
31 OpDecorate %prevent_dce DescriptorSet 2
32 OpDecorate %prevent_dce Binding 0
Ben Claytonb07a7ce2021-06-03 11:26:17 +000033 %float = OpTypeFloat 32
James Price9fd3bef2021-06-04 17:31:48 +000034 %v4float = OpTypeVector %float 4
35%_ptr_Output_v4float = OpTypePointer Output %v4float
James Price11c6fcd2021-08-05 17:34:19 +000036 %5 = OpConstantNull %v4float
37 %value = OpVariable %_ptr_Output_v4float Output %5
38%_ptr_Output_float = OpTypePointer Output %float
39 %8 = OpConstantNull %float
40%vertex_point_size = OpVariable %_ptr_Output_float Output %8
41 %uint = OpTypeInt 32 0
42 %11 = OpTypeImage %uint 2D 0 1 0 1 Unknown
43%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
44 %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
Ben Claytonb07a7ce2021-06-03 11:26:17 +000045 %v4uint = OpTypeVector %uint 4
Ben Clayton77a90cb2023-03-06 18:25:08 +000046%prevent_dce_block = OpTypeStruct %v4uint
47%_ptr_StorageBuffer_prevent_dce_block = OpTypePointer StorageBuffer %prevent_dce_block
48%prevent_dce = OpVariable %_ptr_StorageBuffer_prevent_dce_block StorageBuffer
49 %void = OpTypeVoid
50 %17 = OpTypeFunction %void
Ben Claytonb07a7ce2021-06-03 11:26:17 +000051 %int = OpTypeInt 32 1
52 %v3int = OpTypeVector %int 3
Ben Clayton4b606152022-11-04 17:06:03 +000053 %v2int = OpTypeVector %int 2
Ben Claytonb07a7ce2021-06-03 11:26:17 +000054 %int_1 = OpConstant %int 1
Ben Clayton77a90cb2023-03-06 18:25:08 +000055 %27 = OpConstantComposite %v2int %int_1 %int_1
Ben Claytonb07a7ce2021-06-03 11:26:17 +000056%_ptr_Function_v4uint = OpTypePointer Function %v4uint
Ben Clayton77a90cb2023-03-06 18:25:08 +000057 %33 = OpConstantNull %v4uint
58 %uint_0 = OpConstant %uint 0
59%_ptr_StorageBuffer_v4uint = OpTypePointer StorageBuffer %v4uint
60 %38 = OpTypeFunction %v4float
Ben Claytonb07a7ce2021-06-03 11:26:17 +000061 %float_1 = OpConstant %float 1
Ben Clayton77a90cb2023-03-06 18:25:08 +000062%textureLoad_7c90e5 = OpFunction %void None %17
63 %20 = OpLabel
64 %res = OpVariable %_ptr_Function_v4uint Function %33
65 %22 = OpLoad %11 %arg_0
66 %28 = OpCompositeExtract %int %27 0
67 %29 = OpCompositeExtract %int %27 1
68 %30 = OpCompositeConstruct %v3int %28 %29 %int_1
69 %21 = OpImageFetch %v4uint %22 %30 Lod %int_1
70 OpStore %res %21
71 %36 = OpAccessChain %_ptr_StorageBuffer_v4uint %prevent_dce %uint_0
72 %37 = OpLoad %v4uint %res
73 OpStore %36 %37
Ben Claytonb07a7ce2021-06-03 11:26:17 +000074 OpReturn
75 OpFunctionEnd
Ben Clayton77a90cb2023-03-06 18:25:08 +000076%vertex_main_inner = OpFunction %v4float None %38
77 %40 = OpLabel
78 %41 = OpFunctionCall %void %textureLoad_7c90e5
James Price11c6fcd2021-08-05 17:34:19 +000079 OpReturnValue %5
James Price9fd3bef2021-06-04 17:31:48 +000080 OpFunctionEnd
Ben Clayton77a90cb2023-03-06 18:25:08 +000081%vertex_main = OpFunction %void None %17
82 %43 = OpLabel
83 %44 = OpFunctionCall %v4float %vertex_main_inner
84 OpStore %value %44
James Price11c6fcd2021-08-05 17:34:19 +000085 OpStore %vertex_point_size %float_1
Ben Claytonb07a7ce2021-06-03 11:26:17 +000086 OpReturn
87 OpFunctionEnd
Ben Clayton77a90cb2023-03-06 18:25:08 +000088%fragment_main = OpFunction %void None %17
89 %47 = OpLabel
90 %48 = OpFunctionCall %void %textureLoad_7c90e5
Ben Claytonb07a7ce2021-06-03 11:26:17 +000091 OpReturn
92 OpFunctionEnd
Ben Clayton77a90cb2023-03-06 18:25:08 +000093%compute_main = OpFunction %void None %17
94 %50 = OpLabel
95 %51 = OpFunctionCall %void %textureLoad_7c90e5
Ben Claytonb07a7ce2021-06-03 11:26:17 +000096 OpReturn
97 OpFunctionEnd