Update rive-cpp to 2.0 version
[platform/core/uifw/rive-tizen.git] / submodule / skia / tests / sksl / intrinsics / MaxInt.asm.frag
1 OpCapability Shader
2 %1 = OpExtInstImport "GLSL.std.450"
3 OpMemoryModel Logical GLSL450
4 OpEntryPoint Fragment %_entrypoint_v "_entrypoint" %sk_FragColor %sk_Clockwise
5 OpExecutionMode %_entrypoint_v OriginUpperLeft
6 OpName %sk_FragColor "sk_FragColor"
7 OpName %sk_Clockwise "sk_Clockwise"
8 OpName %_UniformBuffer "_UniformBuffer"
9 OpMemberName %_UniformBuffer 0 "testInputs"
10 OpMemberName %_UniformBuffer 1 "colorGreen"
11 OpMemberName %_UniformBuffer 2 "colorRed"
12 OpName %_entrypoint_v "_entrypoint_v"
13 OpName %main "main"
14 OpName %intValues "intValues"
15 OpName %intGreen "intGreen"
16 OpName %expectedA "expectedA"
17 OpName %expectedB "expectedB"
18 OpDecorate %sk_FragColor RelaxedPrecision
19 OpDecorate %sk_FragColor Location 0
20 OpDecorate %sk_FragColor Index 0
21 OpDecorate %sk_Clockwise BuiltIn FrontFacing
22 OpMemberDecorate %_UniformBuffer 0 Offset 0
23 OpMemberDecorate %_UniformBuffer 0 RelaxedPrecision
24 OpMemberDecorate %_UniformBuffer 1 Offset 16
25 OpMemberDecorate %_UniformBuffer 1 RelaxedPrecision
26 OpMemberDecorate %_UniformBuffer 2 Offset 32
27 OpMemberDecorate %_UniformBuffer 2 RelaxedPrecision
28 OpDecorate %_UniformBuffer Block
29 OpDecorate %10 Binding 0
30 OpDecorate %10 DescriptorSet 0
31 OpDecorate %33 RelaxedPrecision
32 OpDecorate %35 RelaxedPrecision
33 OpDecorate %36 RelaxedPrecision
34 OpDecorate %38 RelaxedPrecision
35 OpDecorate %40 RelaxedPrecision
36 OpDecorate %42 RelaxedPrecision
37 OpDecorate %48 RelaxedPrecision
38 OpDecorate %49 RelaxedPrecision
39 OpDecorate %50 RelaxedPrecision
40 OpDecorate %52 RelaxedPrecision
41 OpDecorate %54 RelaxedPrecision
42 OpDecorate %56 RelaxedPrecision
43 OpDecorate %177 RelaxedPrecision
44 OpDecorate %180 RelaxedPrecision
45 OpDecorate %181 RelaxedPrecision
46 %float = OpTypeFloat 32
47 %v4float = OpTypeVector %float 4
48 %_ptr_Output_v4float = OpTypePointer Output %v4float
49 %sk_FragColor = OpVariable %_ptr_Output_v4float Output
50 %bool = OpTypeBool
51 %_ptr_Input_bool = OpTypePointer Input %bool
52 %sk_Clockwise = OpVariable %_ptr_Input_bool Input
53 %_UniformBuffer = OpTypeStruct %v4float %v4float %v4float
54 %_ptr_Uniform__UniformBuffer = OpTypePointer Uniform %_UniformBuffer
55 %10 = OpVariable %_ptr_Uniform__UniformBuffer Uniform
56 %void = OpTypeVoid
57 %15 = OpTypeFunction %void
58 %float_0 = OpConstant %float 0
59 %v2float = OpTypeVector %float 2
60 %19 = OpConstantComposite %v2float %float_0 %float_0
61 %_ptr_Function_v2float = OpTypePointer Function %v2float
62 %23 = OpTypeFunction %v4float %_ptr_Function_v2float
63 %int = OpTypeInt 32 1
64 %v4int = OpTypeVector %int 4
65 %_ptr_Function_v4int = OpTypePointer Function %v4int
66 %_ptr_Uniform_v4float = OpTypePointer Uniform %v4float
67 %int_0 = OpConstant %int 0
68 %float_100 = OpConstant %float 100
69 %int_1 = OpConstant %int 1
70 %int_50 = OpConstant %int 50
71 %int_75 = OpConstant %int 75
72 %int_225 = OpConstant %int 225
73 %63 = OpConstantComposite %v4int %int_50 %int_50 %int_75 %int_225
74 %int_100 = OpConstant %int 100
75 %66 = OpConstantComposite %v4int %int_0 %int_100 %int_75 %int_225
76 %false = OpConstantFalse %bool
77 %v2int = OpTypeVector %int 2
78 %76 = OpConstantComposite %v2int %int_50 %int_50
79 %v2bool = OpTypeVector %bool 2
80 %v3int = OpTypeVector %int 3
81 %87 = OpConstantComposite %v3int %int_50 %int_50 %int_50
82 %v3bool = OpTypeVector %bool 3
83 %96 = OpConstantComposite %v4int %int_50 %int_50 %int_50 %int_50
84 %v4bool = OpTypeVector %bool 4
85 %true = OpConstantTrue %bool
86 %113 = OpConstantComposite %v3int %int_50 %int_50 %int_75
87 %156 = OpConstantComposite %v2int %int_0 %int_100
88 %163 = OpConstantComposite %v3int %int_0 %int_100 %int_75
89 %_ptr_Function_v4float = OpTypePointer Function %v4float
90 %int_2 = OpConstant %int 2
91 %_entrypoint_v = OpFunction %void None %15
92 %16 = OpLabel
93 %20 = OpVariable %_ptr_Function_v2float Function
94 OpStore %20 %19
95 %22 = OpFunctionCall %v4float %main %20
96 OpStore %sk_FragColor %22
97 OpReturn
98 OpFunctionEnd
99 %main = OpFunction %v4float None %23
100 %24 = OpFunctionParameter %_ptr_Function_v2float
101 %25 = OpLabel
102 %intValues = OpVariable %_ptr_Function_v4int Function
103 %intGreen = OpVariable %_ptr_Function_v4int Function
104 %expectedA = OpVariable %_ptr_Function_v4int Function
105 %expectedB = OpVariable %_ptr_Function_v4int Function
106 %171 = OpVariable %_ptr_Function_v4float Function
107 %30 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0
108 %33 = OpLoad %v4float %30
109 %35 = OpVectorTimesScalar %v4float %33 %float_100
110 %36 = OpCompositeExtract %float %35 0
111 %37 = OpConvertFToS %int %36
112 %38 = OpCompositeExtract %float %35 1
113 %39 = OpConvertFToS %int %38
114 %40 = OpCompositeExtract %float %35 2
115 %41 = OpConvertFToS %int %40
116 %42 = OpCompositeExtract %float %35 3
117 %43 = OpConvertFToS %int %42
118 %44 = OpCompositeConstruct %v4int %37 %39 %41 %43
119 OpStore %intValues %44
120 %46 = OpAccessChain %_ptr_Uniform_v4float %10 %int_1
121 %48 = OpLoad %v4float %46
122 %49 = OpVectorTimesScalar %v4float %48 %float_100
123 %50 = OpCompositeExtract %float %49 0
124 %51 = OpConvertFToS %int %50
125 %52 = OpCompositeExtract %float %49 1
126 %53 = OpConvertFToS %int %52
127 %54 = OpCompositeExtract %float %49 2
128 %55 = OpConvertFToS %int %54
129 %56 = OpCompositeExtract %float %49 3
130 %57 = OpConvertFToS %int %56
131 %58 = OpCompositeConstruct %v4int %51 %53 %55 %57
132 OpStore %intGreen %58
133 OpStore %expectedA %63
134 OpStore %expectedB %66
135 %69 = OpCompositeExtract %int %44 0
136 %68 = OpExtInst %int %1 SMax %69 %int_50
137 %70 = OpIEqual %bool %68 %int_50
138 OpSelectionMerge %72 None
139 OpBranchConditional %70 %71 %72
140 %71 = OpLabel
141 %74 = OpVectorShuffle %v2int %44 %44 0 1
142 %73 = OpExtInst %v2int %1 SMax %74 %76
143 %77 = OpVectorShuffle %v2int %63 %63 0 1
144 %78 = OpIEqual %v2bool %73 %77
145 %80 = OpAll %bool %78
146 OpBranch %72
147 %72 = OpLabel
148 %81 = OpPhi %bool %false %25 %80 %71
149 OpSelectionMerge %83 None
150 OpBranchConditional %81 %82 %83
151 %82 = OpLabel
152 %85 = OpVectorShuffle %v3int %44 %44 0 1 2
153 %84 = OpExtInst %v3int %1 SMax %85 %87
154 %88 = OpVectorShuffle %v3int %63 %63 0 1 2
155 %89 = OpIEqual %v3bool %84 %88
156 %91 = OpAll %bool %89
157 OpBranch %83
158 %83 = OpLabel
159 %92 = OpPhi %bool %false %72 %91 %82
160 OpSelectionMerge %94 None
161 OpBranchConditional %92 %93 %94
162 %93 = OpLabel
163 %95 = OpExtInst %v4int %1 SMax %44 %96
164 %97 = OpIEqual %v4bool %95 %63
165 %99 = OpAll %bool %97
166 OpBranch %94
167 %94 = OpLabel
168 %100 = OpPhi %bool %false %83 %99 %93
169 OpSelectionMerge %102 None
170 OpBranchConditional %100 %101 %102
171 %101 = OpLabel
172 OpBranch %102
173 %102 = OpLabel
174 %104 = OpPhi %bool %false %94 %true %101
175 OpSelectionMerge %106 None
176 OpBranchConditional %104 %105 %106
177 %105 = OpLabel
178 %107 = OpVectorShuffle %v2int %63 %63 0 1
179 %108 = OpIEqual %v2bool %76 %107
180 %109 = OpAll %bool %108
181 OpBranch %106
182 %106 = OpLabel
183 %110 = OpPhi %bool %false %102 %109 %105
184 OpSelectionMerge %112 None
185 OpBranchConditional %110 %111 %112
186 %111 = OpLabel
187 %114 = OpVectorShuffle %v3int %63 %63 0 1 2
188 %115 = OpIEqual %v3bool %113 %114
189 %116 = OpAll %bool %115
190 OpBranch %112
191 %112 = OpLabel
192 %117 = OpPhi %bool %false %106 %116 %111
193 OpSelectionMerge %119 None
194 OpBranchConditional %117 %118 %119
195 %118 = OpLabel
196 OpBranch %119
197 %119 = OpLabel
198 %120 = OpPhi %bool %false %112 %true %118
199 OpSelectionMerge %122 None
200 OpBranchConditional %120 %121 %122
201 %121 = OpLabel
202 %124 = OpCompositeExtract %int %58 0
203 %123 = OpExtInst %int %1 SMax %69 %124
204 %125 = OpIEqual %bool %123 %int_0
205 OpBranch %122
206 %122 = OpLabel
207 %126 = OpPhi %bool %false %119 %125 %121
208 OpSelectionMerge %128 None
209 OpBranchConditional %126 %127 %128
210 %127 = OpLabel
211 %130 = OpVectorShuffle %v2int %44 %44 0 1
212 %131 = OpVectorShuffle %v2int %58 %58 0 1
213 %129 = OpExtInst %v2int %1 SMax %130 %131
214 %132 = OpVectorShuffle %v2int %66 %66 0 1
215 %133 = OpIEqual %v2bool %129 %132
216 %134 = OpAll %bool %133
217 OpBranch %128
218 %128 = OpLabel
219 %135 = OpPhi %bool %false %122 %134 %127
220 OpSelectionMerge %137 None
221 OpBranchConditional %135 %136 %137
222 %136 = OpLabel
223 %139 = OpVectorShuffle %v3int %44 %44 0 1 2
224 %140 = OpVectorShuffle %v3int %58 %58 0 1 2
225 %138 = OpExtInst %v3int %1 SMax %139 %140
226 %141 = OpVectorShuffle %v3int %66 %66 0 1 2
227 %142 = OpIEqual %v3bool %138 %141
228 %143 = OpAll %bool %142
229 OpBranch %137
230 %137 = OpLabel
231 %144 = OpPhi %bool %false %128 %143 %136
232 OpSelectionMerge %146 None
233 OpBranchConditional %144 %145 %146
234 %145 = OpLabel
235 %147 = OpExtInst %v4int %1 SMax %44 %58
236 %148 = OpIEqual %v4bool %147 %66
237 %149 = OpAll %bool %148
238 OpBranch %146
239 %146 = OpLabel
240 %150 = OpPhi %bool %false %137 %149 %145
241 OpSelectionMerge %152 None
242 OpBranchConditional %150 %151 %152
243 %151 = OpLabel
244 OpBranch %152
245 %152 = OpLabel
246 %153 = OpPhi %bool %false %146 %true %151
247 OpSelectionMerge %155 None
248 OpBranchConditional %153 %154 %155
249 %154 = OpLabel
250 %157 = OpVectorShuffle %v2int %66 %66 0 1
251 %158 = OpIEqual %v2bool %156 %157
252 %159 = OpAll %bool %158
253 OpBranch %155
254 %155 = OpLabel
255 %160 = OpPhi %bool %false %152 %159 %154
256 OpSelectionMerge %162 None
257 OpBranchConditional %160 %161 %162
258 %161 = OpLabel
259 %164 = OpVectorShuffle %v3int %66 %66 0 1 2
260 %165 = OpIEqual %v3bool %163 %164
261 %166 = OpAll %bool %165
262 OpBranch %162
263 %162 = OpLabel
264 %167 = OpPhi %bool %false %155 %166 %161
265 OpSelectionMerge %169 None
266 OpBranchConditional %167 %168 %169
267 %168 = OpLabel
268 OpBranch %169
269 %169 = OpLabel
270 %170 = OpPhi %bool %false %162 %true %168
271 OpSelectionMerge %175 None
272 OpBranchConditional %170 %173 %174
273 %173 = OpLabel
274 %176 = OpAccessChain %_ptr_Uniform_v4float %10 %int_1
275 %177 = OpLoad %v4float %176
276 OpStore %171 %177
277 OpBranch %175
278 %174 = OpLabel
279 %178 = OpAccessChain %_ptr_Uniform_v4float %10 %int_2
280 %180 = OpLoad %v4float %178
281 OpStore %171 %180
282 OpBranch %175
283 %175 = OpLabel
284 %181 = OpLoad %v4float %171
285 OpReturnValue %181
286 OpFunctionEnd