blob: 159a990c9f62a7122331bf2d66b3f5fe7dc65cd9 [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: 46
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 Clayton77a90cb2023-03-06 18:25:08 +000015 OpName %prevent_dce_block "prevent_dce_block"
16 OpMemberName %prevent_dce_block 0 "inner"
17 OpName %prevent_dce "prevent_dce"
Ben Claytonb07a7ce2021-06-03 11:26:17 +000018 OpName %all_f46790 "all_f46790"
19 OpName %res "res"
James Price11c6fcd2021-08-05 17:34:19 +000020 OpName %vertex_main_inner "vertex_main_inner"
Ben Claytonb07a7ce2021-06-03 11:26:17 +000021 OpName %vertex_main "vertex_main"
22 OpName %fragment_main "fragment_main"
23 OpName %compute_main "compute_main"
James Price11c6fcd2021-08-05 17:34:19 +000024 OpDecorate %value BuiltIn Position
25 OpDecorate %vertex_point_size BuiltIn PointSize
Ben Clayton77a90cb2023-03-06 18:25:08 +000026 OpDecorate %prevent_dce_block Block
27 OpMemberDecorate %prevent_dce_block 0 Offset 0
28 OpDecorate %prevent_dce DescriptorSet 2
29 OpDecorate %prevent_dce Binding 0
Ben Claytonb07a7ce2021-06-03 11:26:17 +000030 %float = OpTypeFloat 32
James Price9fd3bef2021-06-04 17:31:48 +000031 %v4float = OpTypeVector %float 4
32%_ptr_Output_v4float = OpTypePointer Output %v4float
James Price11c6fcd2021-08-05 17:34:19 +000033 %5 = OpConstantNull %v4float
34 %value = OpVariable %_ptr_Output_v4float Output %5
35%_ptr_Output_float = OpTypePointer Output %float
36 %8 = OpConstantNull %float
37%vertex_point_size = OpVariable %_ptr_Output_float Output %8
Ben Clayton77a90cb2023-03-06 18:25:08 +000038 %int = OpTypeInt 32 1
39%prevent_dce_block = OpTypeStruct %int
40%_ptr_StorageBuffer_prevent_dce_block = OpTypePointer StorageBuffer %prevent_dce_block
41%prevent_dce = OpVariable %_ptr_StorageBuffer_prevent_dce_block StorageBuffer
Ben Claytonb07a7ce2021-06-03 11:26:17 +000042 %void = OpTypeVoid
Ben Clayton77a90cb2023-03-06 18:25:08 +000043 %13 = OpTypeFunction %void
Ben Claytonb07a7ce2021-06-03 11:26:17 +000044 %bool = OpTypeBool
Ben Claytonee36e392022-07-26 14:27:25 +000045 %true = OpConstantTrue %bool
Ben Claytonb07a7ce2021-06-03 11:26:17 +000046%_ptr_Function_bool = OpTypePointer Function %bool
Ben Clayton77a90cb2023-03-06 18:25:08 +000047 %21 = OpConstantNull %bool
48 %uint = OpTypeInt 32 0
49 %uint_0 = OpConstant %uint 0
50%_ptr_StorageBuffer_int = OpTypePointer StorageBuffer %int
51 %int_1 = OpConstant %int 1
52 %31 = OpConstantNull %int
53 %32 = OpTypeFunction %v4float
Ben Claytonb07a7ce2021-06-03 11:26:17 +000054 %float_1 = OpConstant %float 1
Ben Clayton77a90cb2023-03-06 18:25:08 +000055 %all_f46790 = OpFunction %void None %13
56 %16 = OpLabel
57 %res = OpVariable %_ptr_Function_bool Function %21
dan sinclair58eca192022-11-03 12:07:49 +000058 OpStore %res %true
Ben Clayton77a90cb2023-03-06 18:25:08 +000059 %25 = OpAccessChain %_ptr_StorageBuffer_int %prevent_dce %uint_0
60 %28 = OpLoad %bool %res
61 %29 = OpLogicalEqual %bool %28 %21
62 %26 = OpSelect %int %29 %int_1 %31
63 OpStore %25 %26
Ben Claytonb07a7ce2021-06-03 11:26:17 +000064 OpReturn
65 OpFunctionEnd
Ben Clayton77a90cb2023-03-06 18:25:08 +000066%vertex_main_inner = OpFunction %v4float None %32
67 %34 = OpLabel
68 %35 = OpFunctionCall %void %all_f46790
James Price11c6fcd2021-08-05 17:34:19 +000069 OpReturnValue %5
James Price9fd3bef2021-06-04 17:31:48 +000070 OpFunctionEnd
Ben Clayton77a90cb2023-03-06 18:25:08 +000071%vertex_main = OpFunction %void None %13
72 %37 = OpLabel
73 %38 = OpFunctionCall %v4float %vertex_main_inner
74 OpStore %value %38
James Price11c6fcd2021-08-05 17:34:19 +000075 OpStore %vertex_point_size %float_1
Ben Claytonb07a7ce2021-06-03 11:26:17 +000076 OpReturn
77 OpFunctionEnd
Ben Clayton77a90cb2023-03-06 18:25:08 +000078%fragment_main = OpFunction %void None %13
79 %41 = OpLabel
80 %42 = OpFunctionCall %void %all_f46790
Ben Claytonb07a7ce2021-06-03 11:26:17 +000081 OpReturn
82 OpFunctionEnd
Ben Clayton77a90cb2023-03-06 18:25:08 +000083%compute_main = OpFunction %void None %13
84 %44 = OpLabel
85 %45 = OpFunctionCall %void %all_f46790
Ben Claytonb07a7ce2021-06-03 11:26:17 +000086 OpReturn
87 OpFunctionEnd