1; SPIR-V
2; Version: 1.3
3; Generator: Google Tint Compiler; 0
4; Bound: 50
5; Schema: 0
6               OpCapability Shader
7               OpMemoryModel Logical GLSL450
8               OpEntryPoint Vertex %vtx_main "vtx_main" %VertexIndex_1 %value %vertex_point_size
9               OpEntryPoint Fragment %frag_main "frag_main" %value_1
10               OpExecutionMode %frag_main OriginUpperLeft
11               OpName %VertexIndex_1 "VertexIndex_1"
12               OpName %value "value"
13               OpName %vertex_point_size "vertex_point_size"
14               OpName %value_1 "value_1"
15               OpName %vtx_main_inner "vtx_main_inner"
16               OpName %VertexIndex "VertexIndex"
17               OpName %pos "pos"
18               OpName %vtx_main "vtx_main"
19               OpName %frag_main_inner "frag_main_inner"
20               OpName %frag_main "frag_main"
21               OpDecorate %VertexIndex_1 BuiltIn VertexIndex
22               OpDecorate %value BuiltIn Position
23               OpDecorate %vertex_point_size BuiltIn PointSize
24               OpDecorate %value_1 Location 0
25               OpDecorate %_arr_v2float_uint_3 ArrayStride 8
26       %uint = OpTypeInt 32 0
27%_ptr_Input_uint = OpTypePointer Input %uint
28%VertexIndex_1 = OpVariable %_ptr_Input_uint Input
29      %float = OpTypeFloat 32
30    %v4float = OpTypeVector %float 4
31%_ptr_Output_v4float = OpTypePointer Output %v4float
32          %8 = OpConstantNull %v4float
33      %value = OpVariable %_ptr_Output_v4float Output %8
34%_ptr_Output_float = OpTypePointer Output %float
35         %11 = OpConstantNull %float
36%vertex_point_size = OpVariable %_ptr_Output_float Output %11
37    %value_1 = OpVariable %_ptr_Output_v4float Output %8
38         %13 = OpTypeFunction %v4float %uint
39    %v2float = OpTypeVector %float 2
40     %uint_3 = OpConstant %uint 3
41%_arr_v2float_uint_3 = OpTypeArray %v2float %uint_3
42    %float_0 = OpConstant %float 0
43  %float_0_5 = OpConstant %float 0.5
44         %22 = OpConstantComposite %v2float %float_0 %float_0_5
45 %float_n0_5 = OpConstant %float -0.5
46         %24 = OpConstantComposite %v2float %float_n0_5 %float_n0_5
47         %25 = OpConstantComposite %v2float %float_0_5 %float_n0_5
48         %26 = OpConstantComposite %_arr_v2float_uint_3 %22 %24 %25
49%_ptr_Function__arr_v2float_uint_3 = OpTypePointer Function %_arr_v2float_uint_3
50         %29 = OpConstantNull %_arr_v2float_uint_3
51%_ptr_Function_v2float = OpTypePointer Function %v2float
52    %float_1 = OpConstant %float 1
53       %void = OpTypeVoid
54         %37 = OpTypeFunction %void
55         %43 = OpTypeFunction %v4float
56         %46 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
57%vtx_main_inner = OpFunction %v4float None %13
58%VertexIndex = OpFunctionParameter %uint
59         %16 = OpLabel
60        %pos = OpVariable %_ptr_Function__arr_v2float_uint_3 Function %29
61               OpStore %pos %26
62         %31 = OpAccessChain %_ptr_Function_v2float %pos %VertexIndex
63         %32 = OpLoad %v2float %31
64         %33 = OpCompositeExtract %float %32 0
65         %34 = OpCompositeExtract %float %32 1
66         %36 = OpCompositeConstruct %v4float %33 %34 %float_0 %float_1
67               OpReturnValue %36
68               OpFunctionEnd
69   %vtx_main = OpFunction %void None %37
70         %40 = OpLabel
71         %42 = OpLoad %uint %VertexIndex_1
72         %41 = OpFunctionCall %v4float %vtx_main_inner %42
73               OpStore %value %41
74               OpStore %vertex_point_size %float_1
75               OpReturn
76               OpFunctionEnd
77%frag_main_inner = OpFunction %v4float None %43
78         %45 = OpLabel
79               OpReturnValue %46
80               OpFunctionEnd
81  %frag_main = OpFunction %void None %37
82         %48 = OpLabel
83         %49 = OpFunctionCall %v4float %frag_main_inner
84               OpStore %value_1 %49
85               OpReturn
86               OpFunctionEnd
87