xref: /aosp_15_r20/external/skia/tests/sksl/shared/Matrices.asm.frag (revision c8dee2aa9b3f27cf6c858bd81872bdeb2c07ed17)
1*c8dee2aaSAndroid Build Coastguard Worker               OpCapability Shader
2*c8dee2aaSAndroid Build Coastguard Worker          %1 = OpExtInstImport "GLSL.std.450"
3*c8dee2aaSAndroid Build Coastguard Worker               OpMemoryModel Logical GLSL450
4*c8dee2aaSAndroid Build Coastguard Worker               OpEntryPoint Fragment %_entrypoint_v "_entrypoint" %sk_FragColor
5*c8dee2aaSAndroid Build Coastguard Worker               OpExecutionMode %_entrypoint_v OriginUpperLeft
6*c8dee2aaSAndroid Build Coastguard Worker               OpName %sk_FragColor "sk_FragColor"
7*c8dee2aaSAndroid Build Coastguard Worker               OpName %_UniformBuffer "_UniformBuffer"
8*c8dee2aaSAndroid Build Coastguard Worker               OpMemberName %_UniformBuffer 0 "colorGreen"
9*c8dee2aaSAndroid Build Coastguard Worker               OpMemberName %_UniformBuffer 1 "colorRed"
10*c8dee2aaSAndroid Build Coastguard Worker               OpName %_entrypoint_v "_entrypoint_v"
11*c8dee2aaSAndroid Build Coastguard Worker               OpName %test_half_b "test_half_b"
12*c8dee2aaSAndroid Build Coastguard Worker               OpName %ok "ok"
13*c8dee2aaSAndroid Build Coastguard Worker               OpName %m1 "m1"
14*c8dee2aaSAndroid Build Coastguard Worker               OpName %m3 "m3"
15*c8dee2aaSAndroid Build Coastguard Worker               OpName %m4 "m4"
16*c8dee2aaSAndroid Build Coastguard Worker               OpName %m5 "m5"
17*c8dee2aaSAndroid Build Coastguard Worker               OpName %m7 "m7"
18*c8dee2aaSAndroid Build Coastguard Worker               OpName %m9 "m9"
19*c8dee2aaSAndroid Build Coastguard Worker               OpName %m10 "m10"
20*c8dee2aaSAndroid Build Coastguard Worker               OpName %m11 "m11"
21*c8dee2aaSAndroid Build Coastguard Worker               OpName %test_comma_b "test_comma_b"
22*c8dee2aaSAndroid Build Coastguard Worker               OpName %x "x"
23*c8dee2aaSAndroid Build Coastguard Worker               OpName %y "y"
24*c8dee2aaSAndroid Build Coastguard Worker               OpName %main "main"
25*c8dee2aaSAndroid Build Coastguard Worker               OpName %_0_ok "_0_ok"
26*c8dee2aaSAndroid Build Coastguard Worker               OpName %_1_m1 "_1_m1"
27*c8dee2aaSAndroid Build Coastguard Worker               OpName %_2_m3 "_2_m3"
28*c8dee2aaSAndroid Build Coastguard Worker               OpName %_3_m4 "_3_m4"
29*c8dee2aaSAndroid Build Coastguard Worker               OpName %_4_m5 "_4_m5"
30*c8dee2aaSAndroid Build Coastguard Worker               OpName %_7_m10 "_7_m10"
31*c8dee2aaSAndroid Build Coastguard Worker               OpName %_8_m11 "_8_m11"
32*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %sk_FragColor RelaxedPrecision
33*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %sk_FragColor Location 0
34*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %sk_FragColor Index 0
35*c8dee2aaSAndroid Build Coastguard Worker               OpMemberDecorate %_UniformBuffer 0 Offset 0
36*c8dee2aaSAndroid Build Coastguard Worker               OpMemberDecorate %_UniformBuffer 0 RelaxedPrecision
37*c8dee2aaSAndroid Build Coastguard Worker               OpMemberDecorate %_UniformBuffer 1 Offset 16
38*c8dee2aaSAndroid Build Coastguard Worker               OpMemberDecorate %_UniformBuffer 1 RelaxedPrecision
39*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %_UniformBuffer Block
40*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %9 Binding 0
41*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %9 DescriptorSet 0
42*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %m1 RelaxedPrecision
43*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %42 RelaxedPrecision
44*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %44 RelaxedPrecision
45*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %m3 RelaxedPrecision
46*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %51 RelaxedPrecision
47*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %53 RelaxedPrecision
48*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %m4 RelaxedPrecision
49*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %64 RelaxedPrecision
50*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %66 RelaxedPrecision
51*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %70 RelaxedPrecision
52*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %79 RelaxedPrecision
53*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %80 RelaxedPrecision
54*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %82 RelaxedPrecision
55*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %83 RelaxedPrecision
56*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %m5 RelaxedPrecision
57*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %91 RelaxedPrecision
58*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %92 RelaxedPrecision
59*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %93 RelaxedPrecision
60*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %94 RelaxedPrecision
61*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %95 RelaxedPrecision
62*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %101 RelaxedPrecision
63*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %103 RelaxedPrecision
64*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %107 RelaxedPrecision
65*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %108 RelaxedPrecision
66*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %109 RelaxedPrecision
67*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %117 RelaxedPrecision
68*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %119 RelaxedPrecision
69*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %m7 RelaxedPrecision
70*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %130 RelaxedPrecision
71*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %132 RelaxedPrecision
72*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %m9 RelaxedPrecision
73*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %148 RelaxedPrecision
74*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %150 RelaxedPrecision
75*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %153 RelaxedPrecision
76*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %m10 RelaxedPrecision
77*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %169 RelaxedPrecision
78*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %171 RelaxedPrecision
79*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %174 RelaxedPrecision
80*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %177 RelaxedPrecision
81*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %m11 RelaxedPrecision
82*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %185 RelaxedPrecision
83*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %186 RelaxedPrecision
84*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %187 RelaxedPrecision
85*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %188 RelaxedPrecision
86*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %189 RelaxedPrecision
87*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %197 RelaxedPrecision
88*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %199 RelaxedPrecision
89*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %202 RelaxedPrecision
90*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %205 RelaxedPrecision
91*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %314 RelaxedPrecision
92*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %316 RelaxedPrecision
93*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %317 RelaxedPrecision
94*c8dee2aaSAndroid Build Coastguard Worker      %float = OpTypeFloat 32
95*c8dee2aaSAndroid Build Coastguard Worker    %v4float = OpTypeVector %float 4
96*c8dee2aaSAndroid Build Coastguard Worker%_ptr_Output_v4float = OpTypePointer Output %v4float
97*c8dee2aaSAndroid Build Coastguard Worker%sk_FragColor = OpVariable %_ptr_Output_v4float Output
98*c8dee2aaSAndroid Build Coastguard Worker%_UniformBuffer = OpTypeStruct %v4float %v4float
99*c8dee2aaSAndroid Build Coastguard Worker%_ptr_Uniform__UniformBuffer = OpTypePointer Uniform %_UniformBuffer
100*c8dee2aaSAndroid Build Coastguard Worker          %9 = OpVariable %_ptr_Uniform__UniformBuffer Uniform
101*c8dee2aaSAndroid Build Coastguard Worker       %void = OpTypeVoid
102*c8dee2aaSAndroid Build Coastguard Worker         %14 = OpTypeFunction %void
103*c8dee2aaSAndroid Build Coastguard Worker    %float_0 = OpConstant %float 0
104*c8dee2aaSAndroid Build Coastguard Worker    %v2float = OpTypeVector %float 2
105*c8dee2aaSAndroid Build Coastguard Worker         %18 = OpConstantComposite %v2float %float_0 %float_0
106*c8dee2aaSAndroid Build Coastguard Worker%_ptr_Function_v2float = OpTypePointer Function %v2float
107*c8dee2aaSAndroid Build Coastguard Worker       %bool = OpTypeBool
108*c8dee2aaSAndroid Build Coastguard Worker         %23 = OpTypeFunction %bool
109*c8dee2aaSAndroid Build Coastguard Worker%_ptr_Function_bool = OpTypePointer Function %bool
110*c8dee2aaSAndroid Build Coastguard Worker       %true = OpConstantTrue %bool
111*c8dee2aaSAndroid Build Coastguard Worker%mat2v2float = OpTypeMatrix %v2float 2
112*c8dee2aaSAndroid Build Coastguard Worker%_ptr_Function_mat2v2float = OpTypePointer Function %mat2v2float
113*c8dee2aaSAndroid Build Coastguard Worker    %float_1 = OpConstant %float 1
114*c8dee2aaSAndroid Build Coastguard Worker    %float_2 = OpConstant %float 2
115*c8dee2aaSAndroid Build Coastguard Worker    %float_3 = OpConstant %float 3
116*c8dee2aaSAndroid Build Coastguard Worker    %float_4 = OpConstant %float 4
117*c8dee2aaSAndroid Build Coastguard Worker         %35 = OpConstantComposite %v2float %float_1 %float_2
118*c8dee2aaSAndroid Build Coastguard Worker         %36 = OpConstantComposite %v2float %float_3 %float_4
119*c8dee2aaSAndroid Build Coastguard Worker         %37 = OpConstantComposite %mat2v2float %35 %36
120*c8dee2aaSAndroid Build Coastguard Worker      %false = OpConstantFalse %bool
121*c8dee2aaSAndroid Build Coastguard Worker     %v2bool = OpTypeVector %bool 2
122*c8dee2aaSAndroid Build Coastguard Worker    %float_6 = OpConstant %float 6
123*c8dee2aaSAndroid Build Coastguard Worker         %59 = OpConstantComposite %v2float %float_6 %float_0
124*c8dee2aaSAndroid Build Coastguard Worker         %60 = OpConstantComposite %v2float %float_0 %float_6
125*c8dee2aaSAndroid Build Coastguard Worker         %61 = OpConstantComposite %mat2v2float %59 %60
126*c8dee2aaSAndroid Build Coastguard Worker   %float_12 = OpConstant %float 12
127*c8dee2aaSAndroid Build Coastguard Worker   %float_18 = OpConstant %float 18
128*c8dee2aaSAndroid Build Coastguard Worker   %float_24 = OpConstant %float 24
129*c8dee2aaSAndroid Build Coastguard Worker         %76 = OpConstantComposite %v2float %float_6 %float_12
130*c8dee2aaSAndroid Build Coastguard Worker         %77 = OpConstantComposite %v2float %float_18 %float_24
131*c8dee2aaSAndroid Build Coastguard Worker         %78 = OpConstantComposite %mat2v2float %76 %77
132*c8dee2aaSAndroid Build Coastguard Worker        %int = OpTypeInt 32 1
133*c8dee2aaSAndroid Build Coastguard Worker      %int_1 = OpConstant %int 1
134*c8dee2aaSAndroid Build Coastguard Worker         %98 = OpConstantComposite %v2float %float_4 %float_0
135*c8dee2aaSAndroid Build Coastguard Worker         %99 = OpConstantComposite %v2float %float_0 %float_4
136*c8dee2aaSAndroid Build Coastguard Worker        %100 = OpConstantComposite %mat2v2float %98 %99
137*c8dee2aaSAndroid Build Coastguard Worker    %float_5 = OpConstant %float 5
138*c8dee2aaSAndroid Build Coastguard Worker    %float_8 = OpConstant %float 8
139*c8dee2aaSAndroid Build Coastguard Worker        %114 = OpConstantComposite %v2float %float_5 %float_2
140*c8dee2aaSAndroid Build Coastguard Worker        %115 = OpConstantComposite %v2float %float_3 %float_8
141*c8dee2aaSAndroid Build Coastguard Worker        %116 = OpConstantComposite %mat2v2float %114 %115
142*c8dee2aaSAndroid Build Coastguard Worker    %float_7 = OpConstant %float 7
143*c8dee2aaSAndroid Build Coastguard Worker        %125 = OpConstantComposite %v2float %float_5 %float_6
144*c8dee2aaSAndroid Build Coastguard Worker        %126 = OpConstantComposite %v2float %float_7 %float_8
145*c8dee2aaSAndroid Build Coastguard Worker        %127 = OpConstantComposite %mat2v2float %125 %126
146*c8dee2aaSAndroid Build Coastguard Worker    %v3float = OpTypeVector %float 3
147*c8dee2aaSAndroid Build Coastguard Worker%mat3v3float = OpTypeMatrix %v3float 3
148*c8dee2aaSAndroid Build Coastguard Worker%_ptr_Function_mat3v3float = OpTypePointer Function %mat3v3float
149*c8dee2aaSAndroid Build Coastguard Worker    %float_9 = OpConstant %float 9
150*c8dee2aaSAndroid Build Coastguard Worker        %141 = OpConstantComposite %v3float %float_9 %float_0 %float_0
151*c8dee2aaSAndroid Build Coastguard Worker        %142 = OpConstantComposite %v3float %float_0 %float_9 %float_0
152*c8dee2aaSAndroid Build Coastguard Worker        %143 = OpConstantComposite %v3float %float_0 %float_0 %float_9
153*c8dee2aaSAndroid Build Coastguard Worker        %144 = OpConstantComposite %mat3v3float %141 %142 %143
154*c8dee2aaSAndroid Build Coastguard Worker     %v3bool = OpTypeVector %bool 3
155*c8dee2aaSAndroid Build Coastguard Worker%mat4v4float = OpTypeMatrix %v4float 4
156*c8dee2aaSAndroid Build Coastguard Worker%_ptr_Function_mat4v4float = OpTypePointer Function %mat4v4float
157*c8dee2aaSAndroid Build Coastguard Worker   %float_11 = OpConstant %float 11
158*c8dee2aaSAndroid Build Coastguard Worker        %161 = OpConstantComposite %v4float %float_11 %float_0 %float_0 %float_0
159*c8dee2aaSAndroid Build Coastguard Worker        %162 = OpConstantComposite %v4float %float_0 %float_11 %float_0 %float_0
160*c8dee2aaSAndroid Build Coastguard Worker        %163 = OpConstantComposite %v4float %float_0 %float_0 %float_11 %float_0
161*c8dee2aaSAndroid Build Coastguard Worker        %164 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_11
162*c8dee2aaSAndroid Build Coastguard Worker        %165 = OpConstantComposite %mat4v4float %161 %162 %163 %164
163*c8dee2aaSAndroid Build Coastguard Worker     %v4bool = OpTypeVector %bool 4
164*c8dee2aaSAndroid Build Coastguard Worker   %float_20 = OpConstant %float 20
165*c8dee2aaSAndroid Build Coastguard Worker        %183 = OpConstantComposite %v4float %float_20 %float_20 %float_20 %float_20
166*c8dee2aaSAndroid Build Coastguard Worker        %184 = OpConstantComposite %mat4v4float %183 %183 %183 %183
167*c8dee2aaSAndroid Build Coastguard Worker        %192 = OpConstantComposite %v4float %float_9 %float_20 %float_20 %float_20
168*c8dee2aaSAndroid Build Coastguard Worker        %193 = OpConstantComposite %v4float %float_20 %float_9 %float_20 %float_20
169*c8dee2aaSAndroid Build Coastguard Worker        %194 = OpConstantComposite %v4float %float_20 %float_20 %float_9 %float_20
170*c8dee2aaSAndroid Build Coastguard Worker        %195 = OpConstantComposite %v4float %float_20 %float_20 %float_20 %float_9
171*c8dee2aaSAndroid Build Coastguard Worker        %196 = OpConstantComposite %mat4v4float %192 %193 %194 %195
172*c8dee2aaSAndroid Build Coastguard Worker        %217 = OpTypeFunction %v4float %_ptr_Function_v2float
173*c8dee2aaSAndroid Build Coastguard Worker%_ptr_Function_v4float = OpTypePointer Function %v4float
174*c8dee2aaSAndroid Build Coastguard Worker%_ptr_Uniform_v4float = OpTypePointer Uniform %v4float
175*c8dee2aaSAndroid Build Coastguard Worker      %int_0 = OpConstant %int 0
176*c8dee2aaSAndroid Build Coastguard Worker%_entrypoint_v = OpFunction %void None %14
177*c8dee2aaSAndroid Build Coastguard Worker         %15 = OpLabel
178*c8dee2aaSAndroid Build Coastguard Worker         %19 = OpVariable %_ptr_Function_v2float Function
179*c8dee2aaSAndroid Build Coastguard Worker               OpStore %19 %18
180*c8dee2aaSAndroid Build Coastguard Worker         %21 = OpFunctionCall %v4float %main %19
181*c8dee2aaSAndroid Build Coastguard Worker               OpStore %sk_FragColor %21
182*c8dee2aaSAndroid Build Coastguard Worker               OpReturn
183*c8dee2aaSAndroid Build Coastguard Worker               OpFunctionEnd
184*c8dee2aaSAndroid Build Coastguard Worker%test_half_b = OpFunction %bool None %23
185*c8dee2aaSAndroid Build Coastguard Worker         %24 = OpLabel
186*c8dee2aaSAndroid Build Coastguard Worker         %ok = OpVariable %_ptr_Function_bool Function
187*c8dee2aaSAndroid Build Coastguard Worker         %m1 = OpVariable %_ptr_Function_mat2v2float Function
188*c8dee2aaSAndroid Build Coastguard Worker         %m3 = OpVariable %_ptr_Function_mat2v2float Function
189*c8dee2aaSAndroid Build Coastguard Worker         %m4 = OpVariable %_ptr_Function_mat2v2float Function
190*c8dee2aaSAndroid Build Coastguard Worker         %m5 = OpVariable %_ptr_Function_mat2v2float Function
191*c8dee2aaSAndroid Build Coastguard Worker         %m7 = OpVariable %_ptr_Function_mat2v2float Function
192*c8dee2aaSAndroid Build Coastguard Worker         %m9 = OpVariable %_ptr_Function_mat3v3float Function
193*c8dee2aaSAndroid Build Coastguard Worker        %m10 = OpVariable %_ptr_Function_mat4v4float Function
194*c8dee2aaSAndroid Build Coastguard Worker        %m11 = OpVariable %_ptr_Function_mat4v4float Function
195*c8dee2aaSAndroid Build Coastguard Worker               OpStore %ok %true
196*c8dee2aaSAndroid Build Coastguard Worker               OpStore %m1 %37
197*c8dee2aaSAndroid Build Coastguard Worker               OpSelectionMerge %40 None
198*c8dee2aaSAndroid Build Coastguard Worker               OpBranchConditional %true %39 %40
199*c8dee2aaSAndroid Build Coastguard Worker         %39 = OpLabel
200*c8dee2aaSAndroid Build Coastguard Worker         %42 = OpFOrdEqual %v2bool %35 %35
201*c8dee2aaSAndroid Build Coastguard Worker         %43 = OpAll %bool %42
202*c8dee2aaSAndroid Build Coastguard Worker         %44 = OpFOrdEqual %v2bool %36 %36
203*c8dee2aaSAndroid Build Coastguard Worker         %45 = OpAll %bool %44
204*c8dee2aaSAndroid Build Coastguard Worker         %46 = OpLogicalAnd %bool %43 %45
205*c8dee2aaSAndroid Build Coastguard Worker               OpBranch %40
206*c8dee2aaSAndroid Build Coastguard Worker         %40 = OpLabel
207*c8dee2aaSAndroid Build Coastguard Worker         %47 = OpPhi %bool %false %24 %46 %39
208*c8dee2aaSAndroid Build Coastguard Worker               OpStore %ok %47
209*c8dee2aaSAndroid Build Coastguard Worker               OpStore %m3 %37
210*c8dee2aaSAndroid Build Coastguard Worker               OpSelectionMerge %50 None
211*c8dee2aaSAndroid Build Coastguard Worker               OpBranchConditional %47 %49 %50
212*c8dee2aaSAndroid Build Coastguard Worker         %49 = OpLabel
213*c8dee2aaSAndroid Build Coastguard Worker         %51 = OpFOrdEqual %v2bool %35 %35
214*c8dee2aaSAndroid Build Coastguard Worker         %52 = OpAll %bool %51
215*c8dee2aaSAndroid Build Coastguard Worker         %53 = OpFOrdEqual %v2bool %36 %36
216*c8dee2aaSAndroid Build Coastguard Worker         %54 = OpAll %bool %53
217*c8dee2aaSAndroid Build Coastguard Worker         %55 = OpLogicalAnd %bool %52 %54
218*c8dee2aaSAndroid Build Coastguard Worker               OpBranch %50
219*c8dee2aaSAndroid Build Coastguard Worker         %50 = OpLabel
220*c8dee2aaSAndroid Build Coastguard Worker         %56 = OpPhi %bool %false %40 %55 %49
221*c8dee2aaSAndroid Build Coastguard Worker               OpStore %ok %56
222*c8dee2aaSAndroid Build Coastguard Worker               OpStore %m4 %61
223*c8dee2aaSAndroid Build Coastguard Worker               OpSelectionMerge %63 None
224*c8dee2aaSAndroid Build Coastguard Worker               OpBranchConditional %56 %62 %63
225*c8dee2aaSAndroid Build Coastguard Worker         %62 = OpLabel
226*c8dee2aaSAndroid Build Coastguard Worker         %64 = OpFOrdEqual %v2bool %59 %59
227*c8dee2aaSAndroid Build Coastguard Worker         %65 = OpAll %bool %64
228*c8dee2aaSAndroid Build Coastguard Worker         %66 = OpFOrdEqual %v2bool %60 %60
229*c8dee2aaSAndroid Build Coastguard Worker         %67 = OpAll %bool %66
230*c8dee2aaSAndroid Build Coastguard Worker         %68 = OpLogicalAnd %bool %65 %67
231*c8dee2aaSAndroid Build Coastguard Worker               OpBranch %63
232*c8dee2aaSAndroid Build Coastguard Worker         %63 = OpLabel
233*c8dee2aaSAndroid Build Coastguard Worker         %69 = OpPhi %bool %false %50 %68 %62
234*c8dee2aaSAndroid Build Coastguard Worker               OpStore %ok %69
235*c8dee2aaSAndroid Build Coastguard Worker         %70 = OpMatrixTimesMatrix %mat2v2float %37 %61
236*c8dee2aaSAndroid Build Coastguard Worker               OpStore %m3 %70
237*c8dee2aaSAndroid Build Coastguard Worker               OpSelectionMerge %72 None
238*c8dee2aaSAndroid Build Coastguard Worker               OpBranchConditional %69 %71 %72
239*c8dee2aaSAndroid Build Coastguard Worker         %71 = OpLabel
240*c8dee2aaSAndroid Build Coastguard Worker         %79 = OpCompositeExtract %v2float %70 0
241*c8dee2aaSAndroid Build Coastguard Worker         %80 = OpFOrdEqual %v2bool %79 %76
242*c8dee2aaSAndroid Build Coastguard Worker         %81 = OpAll %bool %80
243*c8dee2aaSAndroid Build Coastguard Worker         %82 = OpCompositeExtract %v2float %70 1
244*c8dee2aaSAndroid Build Coastguard Worker         %83 = OpFOrdEqual %v2bool %82 %77
245*c8dee2aaSAndroid Build Coastguard Worker         %84 = OpAll %bool %83
246*c8dee2aaSAndroid Build Coastguard Worker         %85 = OpLogicalAnd %bool %81 %84
247*c8dee2aaSAndroid Build Coastguard Worker               OpBranch %72
248*c8dee2aaSAndroid Build Coastguard Worker         %72 = OpLabel
249*c8dee2aaSAndroid Build Coastguard Worker         %86 = OpPhi %bool %false %63 %85 %71
250*c8dee2aaSAndroid Build Coastguard Worker               OpStore %ok %86
251*c8dee2aaSAndroid Build Coastguard Worker         %90 = OpAccessChain %_ptr_Function_v2float %m1 %int_1
252*c8dee2aaSAndroid Build Coastguard Worker         %91 = OpLoad %v2float %90
253*c8dee2aaSAndroid Build Coastguard Worker         %92 = OpCompositeExtract %float %91 1
254*c8dee2aaSAndroid Build Coastguard Worker         %93 = OpCompositeConstruct %v2float %92 %float_0
255*c8dee2aaSAndroid Build Coastguard Worker         %94 = OpCompositeConstruct %v2float %float_0 %92
256*c8dee2aaSAndroid Build Coastguard Worker         %95 = OpCompositeConstruct %mat2v2float %93 %94
257*c8dee2aaSAndroid Build Coastguard Worker               OpStore %m5 %95
258*c8dee2aaSAndroid Build Coastguard Worker               OpSelectionMerge %97 None
259*c8dee2aaSAndroid Build Coastguard Worker               OpBranchConditional %86 %96 %97
260*c8dee2aaSAndroid Build Coastguard Worker         %96 = OpLabel
261*c8dee2aaSAndroid Build Coastguard Worker        %101 = OpFOrdEqual %v2bool %93 %98
262*c8dee2aaSAndroid Build Coastguard Worker        %102 = OpAll %bool %101
263*c8dee2aaSAndroid Build Coastguard Worker        %103 = OpFOrdEqual %v2bool %94 %99
264*c8dee2aaSAndroid Build Coastguard Worker        %104 = OpAll %bool %103
265*c8dee2aaSAndroid Build Coastguard Worker        %105 = OpLogicalAnd %bool %102 %104
266*c8dee2aaSAndroid Build Coastguard Worker               OpBranch %97
267*c8dee2aaSAndroid Build Coastguard Worker         %97 = OpLabel
268*c8dee2aaSAndroid Build Coastguard Worker        %106 = OpPhi %bool %false %72 %105 %96
269*c8dee2aaSAndroid Build Coastguard Worker               OpStore %ok %106
270*c8dee2aaSAndroid Build Coastguard Worker        %107 = OpFAdd %v2float %35 %93
271*c8dee2aaSAndroid Build Coastguard Worker        %108 = OpFAdd %v2float %36 %94
272*c8dee2aaSAndroid Build Coastguard Worker        %109 = OpCompositeConstruct %mat2v2float %107 %108
273*c8dee2aaSAndroid Build Coastguard Worker               OpStore %m1 %109
274*c8dee2aaSAndroid Build Coastguard Worker               OpSelectionMerge %111 None
275*c8dee2aaSAndroid Build Coastguard Worker               OpBranchConditional %106 %110 %111
276*c8dee2aaSAndroid Build Coastguard Worker        %110 = OpLabel
277*c8dee2aaSAndroid Build Coastguard Worker        %117 = OpFOrdEqual %v2bool %107 %114
278*c8dee2aaSAndroid Build Coastguard Worker        %118 = OpAll %bool %117
279*c8dee2aaSAndroid Build Coastguard Worker        %119 = OpFOrdEqual %v2bool %108 %115
280*c8dee2aaSAndroid Build Coastguard Worker        %120 = OpAll %bool %119
281*c8dee2aaSAndroid Build Coastguard Worker        %121 = OpLogicalAnd %bool %118 %120
282*c8dee2aaSAndroid Build Coastguard Worker               OpBranch %111
283*c8dee2aaSAndroid Build Coastguard Worker        %111 = OpLabel
284*c8dee2aaSAndroid Build Coastguard Worker        %122 = OpPhi %bool %false %97 %121 %110
285*c8dee2aaSAndroid Build Coastguard Worker               OpStore %ok %122
286*c8dee2aaSAndroid Build Coastguard Worker               OpStore %m7 %127
287*c8dee2aaSAndroid Build Coastguard Worker               OpSelectionMerge %129 None
288*c8dee2aaSAndroid Build Coastguard Worker               OpBranchConditional %122 %128 %129
289*c8dee2aaSAndroid Build Coastguard Worker        %128 = OpLabel
290*c8dee2aaSAndroid Build Coastguard Worker        %130 = OpFOrdEqual %v2bool %125 %125
291*c8dee2aaSAndroid Build Coastguard Worker        %131 = OpAll %bool %130
292*c8dee2aaSAndroid Build Coastguard Worker        %132 = OpFOrdEqual %v2bool %126 %126
293*c8dee2aaSAndroid Build Coastguard Worker        %133 = OpAll %bool %132
294*c8dee2aaSAndroid Build Coastguard Worker        %134 = OpLogicalAnd %bool %131 %133
295*c8dee2aaSAndroid Build Coastguard Worker               OpBranch %129
296*c8dee2aaSAndroid Build Coastguard Worker        %129 = OpLabel
297*c8dee2aaSAndroid Build Coastguard Worker        %135 = OpPhi %bool %false %111 %134 %128
298*c8dee2aaSAndroid Build Coastguard Worker               OpStore %ok %135
299*c8dee2aaSAndroid Build Coastguard Worker               OpStore %m9 %144
300*c8dee2aaSAndroid Build Coastguard Worker               OpSelectionMerge %146 None
301*c8dee2aaSAndroid Build Coastguard Worker               OpBranchConditional %135 %145 %146
302*c8dee2aaSAndroid Build Coastguard Worker        %145 = OpLabel
303*c8dee2aaSAndroid Build Coastguard Worker        %148 = OpFOrdEqual %v3bool %141 %141
304*c8dee2aaSAndroid Build Coastguard Worker        %149 = OpAll %bool %148
305*c8dee2aaSAndroid Build Coastguard Worker        %150 = OpFOrdEqual %v3bool %142 %142
306*c8dee2aaSAndroid Build Coastguard Worker        %151 = OpAll %bool %150
307*c8dee2aaSAndroid Build Coastguard Worker        %152 = OpLogicalAnd %bool %149 %151
308*c8dee2aaSAndroid Build Coastguard Worker        %153 = OpFOrdEqual %v3bool %143 %143
309*c8dee2aaSAndroid Build Coastguard Worker        %154 = OpAll %bool %153
310*c8dee2aaSAndroid Build Coastguard Worker        %155 = OpLogicalAnd %bool %152 %154
311*c8dee2aaSAndroid Build Coastguard Worker               OpBranch %146
312*c8dee2aaSAndroid Build Coastguard Worker        %146 = OpLabel
313*c8dee2aaSAndroid Build Coastguard Worker        %156 = OpPhi %bool %false %129 %155 %145
314*c8dee2aaSAndroid Build Coastguard Worker               OpStore %ok %156
315*c8dee2aaSAndroid Build Coastguard Worker               OpStore %m10 %165
316*c8dee2aaSAndroid Build Coastguard Worker               OpSelectionMerge %167 None
317*c8dee2aaSAndroid Build Coastguard Worker               OpBranchConditional %156 %166 %167
318*c8dee2aaSAndroid Build Coastguard Worker        %166 = OpLabel
319*c8dee2aaSAndroid Build Coastguard Worker        %169 = OpFOrdEqual %v4bool %161 %161
320*c8dee2aaSAndroid Build Coastguard Worker        %170 = OpAll %bool %169
321*c8dee2aaSAndroid Build Coastguard Worker        %171 = OpFOrdEqual %v4bool %162 %162
322*c8dee2aaSAndroid Build Coastguard Worker        %172 = OpAll %bool %171
323*c8dee2aaSAndroid Build Coastguard Worker        %173 = OpLogicalAnd %bool %170 %172
324*c8dee2aaSAndroid Build Coastguard Worker        %174 = OpFOrdEqual %v4bool %163 %163
325*c8dee2aaSAndroid Build Coastguard Worker        %175 = OpAll %bool %174
326*c8dee2aaSAndroid Build Coastguard Worker        %176 = OpLogicalAnd %bool %173 %175
327*c8dee2aaSAndroid Build Coastguard Worker        %177 = OpFOrdEqual %v4bool %164 %164
328*c8dee2aaSAndroid Build Coastguard Worker        %178 = OpAll %bool %177
329*c8dee2aaSAndroid Build Coastguard Worker        %179 = OpLogicalAnd %bool %176 %178
330*c8dee2aaSAndroid Build Coastguard Worker               OpBranch %167
331*c8dee2aaSAndroid Build Coastguard Worker        %167 = OpLabel
332*c8dee2aaSAndroid Build Coastguard Worker        %180 = OpPhi %bool %false %146 %179 %166
333*c8dee2aaSAndroid Build Coastguard Worker               OpStore %ok %180
334*c8dee2aaSAndroid Build Coastguard Worker               OpStore %m11 %184
335*c8dee2aaSAndroid Build Coastguard Worker        %185 = OpFSub %v4float %183 %161
336*c8dee2aaSAndroid Build Coastguard Worker        %186 = OpFSub %v4float %183 %162
337*c8dee2aaSAndroid Build Coastguard Worker        %187 = OpFSub %v4float %183 %163
338*c8dee2aaSAndroid Build Coastguard Worker        %188 = OpFSub %v4float %183 %164
339*c8dee2aaSAndroid Build Coastguard Worker        %189 = OpCompositeConstruct %mat4v4float %185 %186 %187 %188
340*c8dee2aaSAndroid Build Coastguard Worker               OpStore %m11 %189
341*c8dee2aaSAndroid Build Coastguard Worker               OpSelectionMerge %191 None
342*c8dee2aaSAndroid Build Coastguard Worker               OpBranchConditional %180 %190 %191
343*c8dee2aaSAndroid Build Coastguard Worker        %190 = OpLabel
344*c8dee2aaSAndroid Build Coastguard Worker        %197 = OpFOrdEqual %v4bool %185 %192
345*c8dee2aaSAndroid Build Coastguard Worker        %198 = OpAll %bool %197
346*c8dee2aaSAndroid Build Coastguard Worker        %199 = OpFOrdEqual %v4bool %186 %193
347*c8dee2aaSAndroid Build Coastguard Worker        %200 = OpAll %bool %199
348*c8dee2aaSAndroid Build Coastguard Worker        %201 = OpLogicalAnd %bool %198 %200
349*c8dee2aaSAndroid Build Coastguard Worker        %202 = OpFOrdEqual %v4bool %187 %194
350*c8dee2aaSAndroid Build Coastguard Worker        %203 = OpAll %bool %202
351*c8dee2aaSAndroid Build Coastguard Worker        %204 = OpLogicalAnd %bool %201 %203
352*c8dee2aaSAndroid Build Coastguard Worker        %205 = OpFOrdEqual %v4bool %188 %195
353*c8dee2aaSAndroid Build Coastguard Worker        %206 = OpAll %bool %205
354*c8dee2aaSAndroid Build Coastguard Worker        %207 = OpLogicalAnd %bool %204 %206
355*c8dee2aaSAndroid Build Coastguard Worker               OpBranch %191
356*c8dee2aaSAndroid Build Coastguard Worker        %191 = OpLabel
357*c8dee2aaSAndroid Build Coastguard Worker        %208 = OpPhi %bool %false %167 %207 %190
358*c8dee2aaSAndroid Build Coastguard Worker               OpStore %ok %208
359*c8dee2aaSAndroid Build Coastguard Worker               OpReturnValue %208
360*c8dee2aaSAndroid Build Coastguard Worker               OpFunctionEnd
361*c8dee2aaSAndroid Build Coastguard Worker%test_comma_b = OpFunction %bool None %23
362*c8dee2aaSAndroid Build Coastguard Worker        %209 = OpLabel
363*c8dee2aaSAndroid Build Coastguard Worker          %x = OpVariable %_ptr_Function_mat2v2float Function
364*c8dee2aaSAndroid Build Coastguard Worker          %y = OpVariable %_ptr_Function_mat2v2float Function
365*c8dee2aaSAndroid Build Coastguard Worker               OpStore %x %37
366*c8dee2aaSAndroid Build Coastguard Worker               OpStore %y %37
367*c8dee2aaSAndroid Build Coastguard Worker        %212 = OpFOrdEqual %v2bool %35 %35
368*c8dee2aaSAndroid Build Coastguard Worker        %213 = OpAll %bool %212
369*c8dee2aaSAndroid Build Coastguard Worker        %214 = OpFOrdEqual %v2bool %36 %36
370*c8dee2aaSAndroid Build Coastguard Worker        %215 = OpAll %bool %214
371*c8dee2aaSAndroid Build Coastguard Worker        %216 = OpLogicalAnd %bool %213 %215
372*c8dee2aaSAndroid Build Coastguard Worker               OpReturnValue %216
373*c8dee2aaSAndroid Build Coastguard Worker               OpFunctionEnd
374*c8dee2aaSAndroid Build Coastguard Worker       %main = OpFunction %v4float None %217
375*c8dee2aaSAndroid Build Coastguard Worker        %218 = OpFunctionParameter %_ptr_Function_v2float
376*c8dee2aaSAndroid Build Coastguard Worker        %219 = OpLabel
377*c8dee2aaSAndroid Build Coastguard Worker      %_0_ok = OpVariable %_ptr_Function_bool Function
378*c8dee2aaSAndroid Build Coastguard Worker      %_1_m1 = OpVariable %_ptr_Function_mat2v2float Function
379*c8dee2aaSAndroid Build Coastguard Worker      %_2_m3 = OpVariable %_ptr_Function_mat2v2float Function
380*c8dee2aaSAndroid Build Coastguard Worker      %_3_m4 = OpVariable %_ptr_Function_mat2v2float Function
381*c8dee2aaSAndroid Build Coastguard Worker      %_4_m5 = OpVariable %_ptr_Function_mat2v2float Function
382*c8dee2aaSAndroid Build Coastguard Worker     %_7_m10 = OpVariable %_ptr_Function_mat4v4float Function
383*c8dee2aaSAndroid Build Coastguard Worker     %_8_m11 = OpVariable %_ptr_Function_mat4v4float Function
384*c8dee2aaSAndroid Build Coastguard Worker        %306 = OpVariable %_ptr_Function_v4float Function
385*c8dee2aaSAndroid Build Coastguard Worker               OpStore %_0_ok %true
386*c8dee2aaSAndroid Build Coastguard Worker               OpStore %_1_m1 %37
387*c8dee2aaSAndroid Build Coastguard Worker               OpSelectionMerge %223 None
388*c8dee2aaSAndroid Build Coastguard Worker               OpBranchConditional %true %222 %223
389*c8dee2aaSAndroid Build Coastguard Worker        %222 = OpLabel
390*c8dee2aaSAndroid Build Coastguard Worker        %224 = OpFOrdEqual %v2bool %35 %35
391*c8dee2aaSAndroid Build Coastguard Worker        %225 = OpAll %bool %224
392*c8dee2aaSAndroid Build Coastguard Worker        %226 = OpFOrdEqual %v2bool %36 %36
393*c8dee2aaSAndroid Build Coastguard Worker        %227 = OpAll %bool %226
394*c8dee2aaSAndroid Build Coastguard Worker        %228 = OpLogicalAnd %bool %225 %227
395*c8dee2aaSAndroid Build Coastguard Worker               OpBranch %223
396*c8dee2aaSAndroid Build Coastguard Worker        %223 = OpLabel
397*c8dee2aaSAndroid Build Coastguard Worker        %229 = OpPhi %bool %false %219 %228 %222
398*c8dee2aaSAndroid Build Coastguard Worker               OpStore %_0_ok %229
399*c8dee2aaSAndroid Build Coastguard Worker               OpStore %_2_m3 %37
400*c8dee2aaSAndroid Build Coastguard Worker               OpSelectionMerge %232 None
401*c8dee2aaSAndroid Build Coastguard Worker               OpBranchConditional %229 %231 %232
402*c8dee2aaSAndroid Build Coastguard Worker        %231 = OpLabel
403*c8dee2aaSAndroid Build Coastguard Worker        %233 = OpFOrdEqual %v2bool %35 %35
404*c8dee2aaSAndroid Build Coastguard Worker        %234 = OpAll %bool %233
405*c8dee2aaSAndroid Build Coastguard Worker        %235 = OpFOrdEqual %v2bool %36 %36
406*c8dee2aaSAndroid Build Coastguard Worker        %236 = OpAll %bool %235
407*c8dee2aaSAndroid Build Coastguard Worker        %237 = OpLogicalAnd %bool %234 %236
408*c8dee2aaSAndroid Build Coastguard Worker               OpBranch %232
409*c8dee2aaSAndroid Build Coastguard Worker        %232 = OpLabel
410*c8dee2aaSAndroid Build Coastguard Worker        %238 = OpPhi %bool %false %223 %237 %231
411*c8dee2aaSAndroid Build Coastguard Worker               OpStore %_0_ok %238
412*c8dee2aaSAndroid Build Coastguard Worker               OpStore %_3_m4 %61
413*c8dee2aaSAndroid Build Coastguard Worker        %240 = OpMatrixTimesMatrix %mat2v2float %37 %61
414*c8dee2aaSAndroid Build Coastguard Worker               OpStore %_2_m3 %240
415*c8dee2aaSAndroid Build Coastguard Worker               OpSelectionMerge %242 None
416*c8dee2aaSAndroid Build Coastguard Worker               OpBranchConditional %238 %241 %242
417*c8dee2aaSAndroid Build Coastguard Worker        %241 = OpLabel
418*c8dee2aaSAndroid Build Coastguard Worker        %243 = OpCompositeExtract %v2float %240 0
419*c8dee2aaSAndroid Build Coastguard Worker        %244 = OpFOrdEqual %v2bool %243 %76
420*c8dee2aaSAndroid Build Coastguard Worker        %245 = OpAll %bool %244
421*c8dee2aaSAndroid Build Coastguard Worker        %246 = OpCompositeExtract %v2float %240 1
422*c8dee2aaSAndroid Build Coastguard Worker        %247 = OpFOrdEqual %v2bool %246 %77
423*c8dee2aaSAndroid Build Coastguard Worker        %248 = OpAll %bool %247
424*c8dee2aaSAndroid Build Coastguard Worker        %249 = OpLogicalAnd %bool %245 %248
425*c8dee2aaSAndroid Build Coastguard Worker               OpBranch %242
426*c8dee2aaSAndroid Build Coastguard Worker        %242 = OpLabel
427*c8dee2aaSAndroid Build Coastguard Worker        %250 = OpPhi %bool %false %232 %249 %241
428*c8dee2aaSAndroid Build Coastguard Worker               OpStore %_0_ok %250
429*c8dee2aaSAndroid Build Coastguard Worker        %252 = OpAccessChain %_ptr_Function_v2float %_1_m1 %int_1
430*c8dee2aaSAndroid Build Coastguard Worker        %253 = OpLoad %v2float %252
431*c8dee2aaSAndroid Build Coastguard Worker        %254 = OpCompositeExtract %float %253 1
432*c8dee2aaSAndroid Build Coastguard Worker        %255 = OpCompositeConstruct %v2float %254 %float_0
433*c8dee2aaSAndroid Build Coastguard Worker        %256 = OpCompositeConstruct %v2float %float_0 %254
434*c8dee2aaSAndroid Build Coastguard Worker        %257 = OpCompositeConstruct %mat2v2float %255 %256
435*c8dee2aaSAndroid Build Coastguard Worker               OpStore %_4_m5 %257
436*c8dee2aaSAndroid Build Coastguard Worker               OpSelectionMerge %259 None
437*c8dee2aaSAndroid Build Coastguard Worker               OpBranchConditional %250 %258 %259
438*c8dee2aaSAndroid Build Coastguard Worker        %258 = OpLabel
439*c8dee2aaSAndroid Build Coastguard Worker        %260 = OpFOrdEqual %v2bool %255 %98
440*c8dee2aaSAndroid Build Coastguard Worker        %261 = OpAll %bool %260
441*c8dee2aaSAndroid Build Coastguard Worker        %262 = OpFOrdEqual %v2bool %256 %99
442*c8dee2aaSAndroid Build Coastguard Worker        %263 = OpAll %bool %262
443*c8dee2aaSAndroid Build Coastguard Worker        %264 = OpLogicalAnd %bool %261 %263
444*c8dee2aaSAndroid Build Coastguard Worker               OpBranch %259
445*c8dee2aaSAndroid Build Coastguard Worker        %259 = OpLabel
446*c8dee2aaSAndroid Build Coastguard Worker        %265 = OpPhi %bool %false %242 %264 %258
447*c8dee2aaSAndroid Build Coastguard Worker               OpStore %_0_ok %265
448*c8dee2aaSAndroid Build Coastguard Worker        %266 = OpFAdd %v2float %35 %255
449*c8dee2aaSAndroid Build Coastguard Worker        %267 = OpFAdd %v2float %36 %256
450*c8dee2aaSAndroid Build Coastguard Worker        %268 = OpCompositeConstruct %mat2v2float %266 %267
451*c8dee2aaSAndroid Build Coastguard Worker               OpStore %_1_m1 %268
452*c8dee2aaSAndroid Build Coastguard Worker               OpSelectionMerge %270 None
453*c8dee2aaSAndroid Build Coastguard Worker               OpBranchConditional %265 %269 %270
454*c8dee2aaSAndroid Build Coastguard Worker        %269 = OpLabel
455*c8dee2aaSAndroid Build Coastguard Worker        %271 = OpFOrdEqual %v2bool %266 %114
456*c8dee2aaSAndroid Build Coastguard Worker        %272 = OpAll %bool %271
457*c8dee2aaSAndroid Build Coastguard Worker        %273 = OpFOrdEqual %v2bool %267 %115
458*c8dee2aaSAndroid Build Coastguard Worker        %274 = OpAll %bool %273
459*c8dee2aaSAndroid Build Coastguard Worker        %275 = OpLogicalAnd %bool %272 %274
460*c8dee2aaSAndroid Build Coastguard Worker               OpBranch %270
461*c8dee2aaSAndroid Build Coastguard Worker        %270 = OpLabel
462*c8dee2aaSAndroid Build Coastguard Worker        %276 = OpPhi %bool %false %259 %275 %269
463*c8dee2aaSAndroid Build Coastguard Worker               OpStore %_0_ok %276
464*c8dee2aaSAndroid Build Coastguard Worker               OpStore %_7_m10 %165
465*c8dee2aaSAndroid Build Coastguard Worker               OpStore %_8_m11 %184
466*c8dee2aaSAndroid Build Coastguard Worker        %279 = OpFSub %v4float %183 %161
467*c8dee2aaSAndroid Build Coastguard Worker        %280 = OpFSub %v4float %183 %162
468*c8dee2aaSAndroid Build Coastguard Worker        %281 = OpFSub %v4float %183 %163
469*c8dee2aaSAndroid Build Coastguard Worker        %282 = OpFSub %v4float %183 %164
470*c8dee2aaSAndroid Build Coastguard Worker        %283 = OpCompositeConstruct %mat4v4float %279 %280 %281 %282
471*c8dee2aaSAndroid Build Coastguard Worker               OpStore %_8_m11 %283
472*c8dee2aaSAndroid Build Coastguard Worker               OpSelectionMerge %285 None
473*c8dee2aaSAndroid Build Coastguard Worker               OpBranchConditional %276 %284 %285
474*c8dee2aaSAndroid Build Coastguard Worker        %284 = OpLabel
475*c8dee2aaSAndroid Build Coastguard Worker        %286 = OpFOrdEqual %v4bool %279 %192
476*c8dee2aaSAndroid Build Coastguard Worker        %287 = OpAll %bool %286
477*c8dee2aaSAndroid Build Coastguard Worker        %288 = OpFOrdEqual %v4bool %280 %193
478*c8dee2aaSAndroid Build Coastguard Worker        %289 = OpAll %bool %288
479*c8dee2aaSAndroid Build Coastguard Worker        %290 = OpLogicalAnd %bool %287 %289
480*c8dee2aaSAndroid Build Coastguard Worker        %291 = OpFOrdEqual %v4bool %281 %194
481*c8dee2aaSAndroid Build Coastguard Worker        %292 = OpAll %bool %291
482*c8dee2aaSAndroid Build Coastguard Worker        %293 = OpLogicalAnd %bool %290 %292
483*c8dee2aaSAndroid Build Coastguard Worker        %294 = OpFOrdEqual %v4bool %282 %195
484*c8dee2aaSAndroid Build Coastguard Worker        %295 = OpAll %bool %294
485*c8dee2aaSAndroid Build Coastguard Worker        %296 = OpLogicalAnd %bool %293 %295
486*c8dee2aaSAndroid Build Coastguard Worker               OpBranch %285
487*c8dee2aaSAndroid Build Coastguard Worker        %285 = OpLabel
488*c8dee2aaSAndroid Build Coastguard Worker        %297 = OpPhi %bool %false %270 %296 %284
489*c8dee2aaSAndroid Build Coastguard Worker               OpStore %_0_ok %297
490*c8dee2aaSAndroid Build Coastguard Worker               OpSelectionMerge %299 None
491*c8dee2aaSAndroid Build Coastguard Worker               OpBranchConditional %297 %298 %299
492*c8dee2aaSAndroid Build Coastguard Worker        %298 = OpLabel
493*c8dee2aaSAndroid Build Coastguard Worker        %300 = OpFunctionCall %bool %test_half_b
494*c8dee2aaSAndroid Build Coastguard Worker               OpBranch %299
495*c8dee2aaSAndroid Build Coastguard Worker        %299 = OpLabel
496*c8dee2aaSAndroid Build Coastguard Worker        %301 = OpPhi %bool %false %285 %300 %298
497*c8dee2aaSAndroid Build Coastguard Worker               OpSelectionMerge %303 None
498*c8dee2aaSAndroid Build Coastguard Worker               OpBranchConditional %301 %302 %303
499*c8dee2aaSAndroid Build Coastguard Worker        %302 = OpLabel
500*c8dee2aaSAndroid Build Coastguard Worker        %304 = OpFunctionCall %bool %test_comma_b
501*c8dee2aaSAndroid Build Coastguard Worker               OpBranch %303
502*c8dee2aaSAndroid Build Coastguard Worker        %303 = OpLabel
503*c8dee2aaSAndroid Build Coastguard Worker        %305 = OpPhi %bool %false %299 %304 %302
504*c8dee2aaSAndroid Build Coastguard Worker               OpSelectionMerge %310 None
505*c8dee2aaSAndroid Build Coastguard Worker               OpBranchConditional %305 %308 %309
506*c8dee2aaSAndroid Build Coastguard Worker        %308 = OpLabel
507*c8dee2aaSAndroid Build Coastguard Worker        %311 = OpAccessChain %_ptr_Uniform_v4float %9 %int_0
508*c8dee2aaSAndroid Build Coastguard Worker        %314 = OpLoad %v4float %311
509*c8dee2aaSAndroid Build Coastguard Worker               OpStore %306 %314
510*c8dee2aaSAndroid Build Coastguard Worker               OpBranch %310
511*c8dee2aaSAndroid Build Coastguard Worker        %309 = OpLabel
512*c8dee2aaSAndroid Build Coastguard Worker        %315 = OpAccessChain %_ptr_Uniform_v4float %9 %int_1
513*c8dee2aaSAndroid Build Coastguard Worker        %316 = OpLoad %v4float %315
514*c8dee2aaSAndroid Build Coastguard Worker               OpStore %306 %316
515*c8dee2aaSAndroid Build Coastguard Worker               OpBranch %310
516*c8dee2aaSAndroid Build Coastguard Worker        %310 = OpLabel
517*c8dee2aaSAndroid Build Coastguard Worker        %317 = OpLoad %v4float %306
518*c8dee2aaSAndroid Build Coastguard Worker               OpReturnValue %317
519*c8dee2aaSAndroid Build Coastguard Worker               OpFunctionEnd
520