xref: /aosp_15_r20/external/skia/tests/sksl/shared/ReservedInGLSLButAllowedInSkSL.asm.frag (revision c8dee2aa9b3f27cf6c858bd81872bdeb2c07ed17)
1               OpCapability Shader
2          %1 = OpExtInstImport "GLSL.std.450"
3               OpMemoryModel Logical GLSL450
4               OpEntryPoint Fragment %_entrypoint_v "_entrypoint" %sk_FragColor
5               OpExecutionMode %_entrypoint_v OriginUpperLeft
6               OpName %sk_FragColor "sk_FragColor"
7               OpName %_UniformBuffer "_UniformBuffer"
8               OpMemberName %_UniformBuffer 0 "colorGreen"
9               OpName %_entrypoint_v "_entrypoint_v"
10               OpName %main "main"
11               OpName %active "active"
12               OpName %centroid "centroid"
13               OpName %coherent "coherent"
14               OpName %common "common"
15               OpName %filter "filter"
16               OpName %partition "partition"
17               OpName %patch "patch"
18               OpName %precise "precise"
19               OpName %resource "resource"
20               OpName %restrict "restrict"
21               OpName %shared "shared"
22               OpName %smooth "smooth"
23               OpName %subroutine "subroutine"
24               OpDecorate %sk_FragColor RelaxedPrecision
25               OpDecorate %sk_FragColor Location 0
26               OpDecorate %sk_FragColor Index 0
27               OpMemberDecorate %_UniformBuffer 0 Offset 0
28               OpMemberDecorate %_UniformBuffer 0 RelaxedPrecision
29               OpDecorate %_UniformBuffer Block
30               OpDecorate %7 Binding 0
31               OpDecorate %7 DescriptorSet 0
32               OpDecorate %active RelaxedPrecision
33               OpDecorate %29 RelaxedPrecision
34               OpDecorate %centroid RelaxedPrecision
35               OpDecorate %32 RelaxedPrecision
36               OpDecorate %coherent RelaxedPrecision
37               OpDecorate %35 RelaxedPrecision
38               OpDecorate %common RelaxedPrecision
39               OpDecorate %38 RelaxedPrecision
40               OpDecorate %filter RelaxedPrecision
41               OpDecorate %41 RelaxedPrecision
42               OpDecorate %partition RelaxedPrecision
43               OpDecorate %44 RelaxedPrecision
44               OpDecorate %patch RelaxedPrecision
45               OpDecorate %47 RelaxedPrecision
46               OpDecorate %precise RelaxedPrecision
47               OpDecorate %50 RelaxedPrecision
48               OpDecorate %resource RelaxedPrecision
49               OpDecorate %53 RelaxedPrecision
50               OpDecorate %restrict RelaxedPrecision
51               OpDecorate %56 RelaxedPrecision
52               OpDecorate %shared RelaxedPrecision
53               OpDecorate %59 RelaxedPrecision
54               OpDecorate %smooth RelaxedPrecision
55               OpDecorate %62 RelaxedPrecision
56               OpDecorate %subroutine RelaxedPrecision
57               OpDecorate %65 RelaxedPrecision
58               OpDecorate %66 RelaxedPrecision
59               OpDecorate %67 RelaxedPrecision
60               OpDecorate %68 RelaxedPrecision
61               OpDecorate %69 RelaxedPrecision
62               OpDecorate %70 RelaxedPrecision
63               OpDecorate %71 RelaxedPrecision
64               OpDecorate %72 RelaxedPrecision
65               OpDecorate %73 RelaxedPrecision
66               OpDecorate %74 RelaxedPrecision
67               OpDecorate %75 RelaxedPrecision
68               OpDecorate %76 RelaxedPrecision
69               OpDecorate %77 RelaxedPrecision
70      %float = OpTypeFloat 32
71    %v4float = OpTypeVector %float 4
72%_ptr_Output_v4float = OpTypePointer Output %v4float
73%sk_FragColor = OpVariable %_ptr_Output_v4float Output
74%_UniformBuffer = OpTypeStruct %v4float
75%_ptr_Uniform__UniformBuffer = OpTypePointer Uniform %_UniformBuffer
76          %7 = OpVariable %_ptr_Uniform__UniformBuffer Uniform
77       %void = OpTypeVoid
78         %12 = OpTypeFunction %void
79    %float_0 = OpConstant %float 0
80    %v2float = OpTypeVector %float 2
81         %16 = OpConstantComposite %v2float %float_0 %float_0
82%_ptr_Function_v2float = OpTypePointer Function %v2float
83         %20 = OpTypeFunction %v4float %_ptr_Function_v2float
84%_ptr_Function_v4float = OpTypePointer Function %v4float
85%_ptr_Uniform_v4float = OpTypePointer Uniform %v4float
86        %int = OpTypeInt 32 1
87      %int_0 = OpConstant %int 0
88%_entrypoint_v = OpFunction %void None %12
89         %13 = OpLabel
90         %17 = OpVariable %_ptr_Function_v2float Function
91               OpStore %17 %16
92         %19 = OpFunctionCall %v4float %main %17
93               OpStore %sk_FragColor %19
94               OpReturn
95               OpFunctionEnd
96       %main = OpFunction %v4float None %20
97         %21 = OpFunctionParameter %_ptr_Function_v2float
98         %22 = OpLabel
99     %active = OpVariable %_ptr_Function_v4float Function
100   %centroid = OpVariable %_ptr_Function_v4float Function
101   %coherent = OpVariable %_ptr_Function_v4float Function
102     %common = OpVariable %_ptr_Function_v4float Function
103     %filter = OpVariable %_ptr_Function_v4float Function
104  %partition = OpVariable %_ptr_Function_v4float Function
105      %patch = OpVariable %_ptr_Function_v4float Function
106    %precise = OpVariable %_ptr_Function_v4float Function
107   %resource = OpVariable %_ptr_Function_v4float Function
108   %restrict = OpVariable %_ptr_Function_v4float Function
109     %shared = OpVariable %_ptr_Function_v4float Function
110     %smooth = OpVariable %_ptr_Function_v4float Function
111 %subroutine = OpVariable %_ptr_Function_v4float Function
112         %25 = OpAccessChain %_ptr_Uniform_v4float %7 %int_0
113         %29 = OpLoad %v4float %25
114               OpStore %active %29
115         %31 = OpAccessChain %_ptr_Uniform_v4float %7 %int_0
116         %32 = OpLoad %v4float %31
117               OpStore %centroid %32
118         %34 = OpAccessChain %_ptr_Uniform_v4float %7 %int_0
119         %35 = OpLoad %v4float %34
120               OpStore %coherent %35
121         %37 = OpAccessChain %_ptr_Uniform_v4float %7 %int_0
122         %38 = OpLoad %v4float %37
123               OpStore %common %38
124         %40 = OpAccessChain %_ptr_Uniform_v4float %7 %int_0
125         %41 = OpLoad %v4float %40
126               OpStore %filter %41
127         %43 = OpAccessChain %_ptr_Uniform_v4float %7 %int_0
128         %44 = OpLoad %v4float %43
129               OpStore %partition %44
130         %46 = OpAccessChain %_ptr_Uniform_v4float %7 %int_0
131         %47 = OpLoad %v4float %46
132               OpStore %patch %47
133         %49 = OpAccessChain %_ptr_Uniform_v4float %7 %int_0
134         %50 = OpLoad %v4float %49
135               OpStore %precise %50
136         %52 = OpAccessChain %_ptr_Uniform_v4float %7 %int_0
137         %53 = OpLoad %v4float %52
138               OpStore %resource %53
139         %55 = OpAccessChain %_ptr_Uniform_v4float %7 %int_0
140         %56 = OpLoad %v4float %55
141               OpStore %restrict %56
142         %58 = OpAccessChain %_ptr_Uniform_v4float %7 %int_0
143         %59 = OpLoad %v4float %58
144               OpStore %shared %59
145         %61 = OpAccessChain %_ptr_Uniform_v4float %7 %int_0
146         %62 = OpLoad %v4float %61
147               OpStore %smooth %62
148         %64 = OpAccessChain %_ptr_Uniform_v4float %7 %int_0
149         %65 = OpLoad %v4float %64
150               OpStore %subroutine %65
151         %66 = OpFMul %v4float %29 %32
152         %67 = OpFMul %v4float %66 %35
153         %68 = OpFMul %v4float %67 %38
154         %69 = OpFMul %v4float %68 %41
155         %70 = OpFMul %v4float %69 %44
156         %71 = OpFMul %v4float %70 %47
157         %72 = OpFMul %v4float %71 %50
158         %73 = OpFMul %v4float %72 %53
159         %74 = OpFMul %v4float %73 %56
160         %75 = OpFMul %v4float %74 %59
161         %76 = OpFMul %v4float %75 %62
162         %77 = OpFMul %v4float %76 %65
163               OpReturnValue %77
164               OpFunctionEnd
165