blob: 2ffe76a7304ca9c956133317ebc22540d84ba086 [file] [log] [blame]
Ben Clayton37035222021-12-08 19:54:08 +00001; SPIR-V
2; Version: 1.3
3; Generator: Google Tint Compiler; 0
Ben Clayton4b606152022-11-04 17:06:03 +00004; Bound: 59
Ben Clayton37035222021-12-08 19:54:08 +00005; Schema: 0
6 OpCapability Shader
7 OpMemoryModel Logical GLSL450
8 OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
9 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
13 OpName %value "value"
14 OpName %vertex_point_size "vertex_point_size"
15 OpName %arg_1 "arg_1"
16 OpName %arg_2 "arg_2"
Ben Claytonc0af5c52022-06-02 14:36:10 +000017 OpName %textureGather_8b754c "textureGather_8b754c"
18 OpName %arg_3 "arg_3"
19 OpName %arg_4 "arg_4"
Ben Clayton37035222021-12-08 19:54:08 +000020 OpName %res "res"
21 OpName %vertex_main_inner "vertex_main_inner"
22 OpName %vertex_main "vertex_main"
23 OpName %fragment_main "fragment_main"
24 OpName %compute_main "compute_main"
25 OpDecorate %value BuiltIn Position
26 OpDecorate %vertex_point_size BuiltIn PointSize
27 OpDecorate %arg_1 DescriptorSet 1
28 OpDecorate %arg_1 Binding 1
29 OpDecorate %arg_2 DescriptorSet 1
30 OpDecorate %arg_2 Binding 2
31 %float = OpTypeFloat 32
32 %v4float = OpTypeVector %float 4
33%_ptr_Output_v4float = OpTypePointer Output %v4float
34 %5 = OpConstantNull %v4float
35 %value = OpVariable %_ptr_Output_v4float Output %5
36%_ptr_Output_float = OpTypePointer Output %float
37 %8 = OpConstantNull %float
38%vertex_point_size = OpVariable %_ptr_Output_float Output %8
39 %int = OpTypeInt 32 1
40 %11 = OpTypeImage %int 2D 0 1 0 1 Unknown
41%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
42 %arg_1 = OpVariable %_ptr_UniformConstant_11 UniformConstant
43 %15 = OpTypeSampler
44%_ptr_UniformConstant_15 = OpTypePointer UniformConstant %15
45 %arg_2 = OpVariable %_ptr_UniformConstant_15 UniformConstant
46 %void = OpTypeVoid
47 %16 = OpTypeFunction %void
Ben Claytonc0af5c52022-06-02 14:36:10 +000048 %v2float = OpTypeVector %float 2
Ben Clayton4b606152022-11-04 17:06:03 +000049 %float_1 = OpConstant %float 1
50 %22 = OpConstantComposite %v2float %float_1 %float_1
Ben Claytonc0af5c52022-06-02 14:36:10 +000051%_ptr_Function_v2float = OpTypePointer Function %v2float
Ben Clayton4b606152022-11-04 17:06:03 +000052 %25 = OpConstantNull %v2float
Ben Clayton37035222021-12-08 19:54:08 +000053 %int_1 = OpConstant %int 1
Ben Claytonc0af5c52022-06-02 14:36:10 +000054%_ptr_Function_int = OpTypePointer Function %int
Ben Clayton4b606152022-11-04 17:06:03 +000055 %29 = OpConstantNull %int
Ben Claytonc0af5c52022-06-02 14:36:10 +000056 %v4int = OpTypeVector %int 4
Ben Clayton4b606152022-11-04 17:06:03 +000057 %34 = OpTypeSampledImage %11
Ben Claytonc0af5c52022-06-02 14:36:10 +000058 %v3float = OpTypeVector %float 3
Ben Clayton37035222021-12-08 19:54:08 +000059%_ptr_Function_v4int = OpTypePointer Function %v4int
Ben Clayton4b606152022-11-04 17:06:03 +000060 %45 = OpConstantNull %v4int
61 %46 = OpTypeFunction %v4float
Ben Claytonc0af5c52022-06-02 14:36:10 +000062%textureGather_8b754c = OpFunction %void None %16
Ben Clayton37035222021-12-08 19:54:08 +000063 %19 = OpLabel
Ben Clayton4b606152022-11-04 17:06:03 +000064 %arg_3 = OpVariable %_ptr_Function_v2float Function %25
65 %arg_4 = OpVariable %_ptr_Function_int Function %29
66 %res = OpVariable %_ptr_Function_v4int Function %45
67 OpStore %arg_3 %22
Ben Claytonc0af5c52022-06-02 14:36:10 +000068 OpStore %arg_4 %int_1
Ben Clayton4b606152022-11-04 17:06:03 +000069 %32 = OpLoad %15 %arg_2
70 %33 = OpLoad %11 %arg_1
71 %35 = OpSampledImage %34 %33 %32
72 %37 = OpLoad %v2float %arg_3
73 %38 = OpCompositeExtract %float %37 0
74 %39 = OpCompositeExtract %float %37 1
75 %41 = OpLoad %int %arg_4
76 %40 = OpConvertSToF %float %41
77 %42 = OpCompositeConstruct %v3float %38 %39 %40
78 %30 = OpImageGather %v4int %35 %42 %int_1
79 OpStore %res %30
Ben Clayton37035222021-12-08 19:54:08 +000080 OpReturn
81 OpFunctionEnd
Ben Clayton4b606152022-11-04 17:06:03 +000082%vertex_main_inner = OpFunction %v4float None %46
83 %48 = OpLabel
84 %49 = OpFunctionCall %void %textureGather_8b754c
Ben Clayton37035222021-12-08 19:54:08 +000085 OpReturnValue %5
86 OpFunctionEnd
87%vertex_main = OpFunction %void None %16
Ben Clayton4b606152022-11-04 17:06:03 +000088 %51 = OpLabel
89 %52 = OpFunctionCall %v4float %vertex_main_inner
90 OpStore %value %52
Ben Clayton37035222021-12-08 19:54:08 +000091 OpStore %vertex_point_size %float_1
92 OpReturn
93 OpFunctionEnd
94%fragment_main = OpFunction %void None %16
Ben Clayton4b606152022-11-04 17:06:03 +000095 %54 = OpLabel
96 %55 = OpFunctionCall %void %textureGather_8b754c
Ben Clayton37035222021-12-08 19:54:08 +000097 OpReturn
98 OpFunctionEnd
99%compute_main = OpFunction %void None %16
Ben Clayton4b606152022-11-04 17:06:03 +0000100 %57 = OpLabel
101 %58 = OpFunctionCall %void %textureGather_8b754c
Ben Clayton37035222021-12-08 19:54:08 +0000102 OpReturn
103 OpFunctionEnd