xref: /aosp_15_r20/external/skia/tests/sksl/shared/MatrixOpEqualsES3.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 "colorRed"
9*c8dee2aaSAndroid Build Coastguard Worker               OpMemberName %_UniformBuffer 1 "colorGreen"
10*c8dee2aaSAndroid Build Coastguard Worker               OpName %_entrypoint_v "_entrypoint_v"
11*c8dee2aaSAndroid Build Coastguard Worker               OpName %test_matrix_op_matrix_half_b "test_matrix_op_matrix_half_b"
12*c8dee2aaSAndroid Build Coastguard Worker               OpName %ok "ok"
13*c8dee2aaSAndroid Build Coastguard Worker               OpName %splat_4 "splat_4"
14*c8dee2aaSAndroid Build Coastguard Worker               OpName %m "m"
15*c8dee2aaSAndroid Build Coastguard Worker               OpName %splat_4_0 "splat_4"
16*c8dee2aaSAndroid Build Coastguard Worker               OpName %m_0 "m"
17*c8dee2aaSAndroid Build Coastguard Worker               OpName %m_1 "m"
18*c8dee2aaSAndroid Build Coastguard Worker               OpName %m_2 "m"
19*c8dee2aaSAndroid Build Coastguard Worker               OpName %m_3 "m"
20*c8dee2aaSAndroid Build Coastguard Worker               OpName %m_4 "m"
21*c8dee2aaSAndroid Build Coastguard Worker               OpName %main "main"
22*c8dee2aaSAndroid Build Coastguard Worker               OpName %_0_ok "_0_ok"
23*c8dee2aaSAndroid Build Coastguard Worker               OpName %_1_splat_4 "_1_splat_4"
24*c8dee2aaSAndroid Build Coastguard Worker               OpName %_2_m "_2_m"
25*c8dee2aaSAndroid Build Coastguard Worker               OpName %_3_splat_4 "_3_splat_4"
26*c8dee2aaSAndroid Build Coastguard Worker               OpName %_4_m "_4_m"
27*c8dee2aaSAndroid Build Coastguard Worker               OpName %_5_m "_5_m"
28*c8dee2aaSAndroid Build Coastguard Worker               OpName %_6_m "_6_m"
29*c8dee2aaSAndroid Build Coastguard Worker               OpName %_7_m "_7_m"
30*c8dee2aaSAndroid Build Coastguard Worker               OpName %_8_m "_8_m"
31*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %sk_FragColor RelaxedPrecision
32*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %sk_FragColor Location 0
33*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %sk_FragColor Index 0
34*c8dee2aaSAndroid Build Coastguard Worker               OpMemberDecorate %_UniformBuffer 0 Offset 0
35*c8dee2aaSAndroid Build Coastguard Worker               OpMemberDecorate %_UniformBuffer 0 RelaxedPrecision
36*c8dee2aaSAndroid Build Coastguard Worker               OpMemberDecorate %_UniformBuffer 1 Offset 16
37*c8dee2aaSAndroid Build Coastguard Worker               OpMemberDecorate %_UniformBuffer 1 RelaxedPrecision
38*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %_UniformBuffer Block
39*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %8 Binding 0
40*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %8 DescriptorSet 0
41*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %splat_4 RelaxedPrecision
42*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %m RelaxedPrecision
43*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %38 RelaxedPrecision
44*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %39 RelaxedPrecision
45*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %40 RelaxedPrecision
46*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %41 RelaxedPrecision
47*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %50 RelaxedPrecision
48*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %52 RelaxedPrecision
49*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %55 RelaxedPrecision
50*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %59 RelaxedPrecision
51*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %60 RelaxedPrecision
52*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %61 RelaxedPrecision
53*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %62 RelaxedPrecision
54*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %71 RelaxedPrecision
55*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %73 RelaxedPrecision
56*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %76 RelaxedPrecision
57*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %80 RelaxedPrecision
58*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %81 RelaxedPrecision
59*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %82 RelaxedPrecision
60*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %83 RelaxedPrecision
61*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %90 RelaxedPrecision
62*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %92 RelaxedPrecision
63*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %95 RelaxedPrecision
64*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %splat_4_0 RelaxedPrecision
65*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %m_0 RelaxedPrecision
66*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %109 RelaxedPrecision
67*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %110 RelaxedPrecision
68*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %111 RelaxedPrecision
69*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %118 RelaxedPrecision
70*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %120 RelaxedPrecision
71*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %124 RelaxedPrecision
72*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %125 RelaxedPrecision
73*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %126 RelaxedPrecision
74*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %132 RelaxedPrecision
75*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %134 RelaxedPrecision
76*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %140 RelaxedPrecision
77*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %141 RelaxedPrecision
78*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %142 RelaxedPrecision
79*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %145 RelaxedPrecision
80*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %147 RelaxedPrecision
81*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %m_1 RelaxedPrecision
82*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %177 RelaxedPrecision
83*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %178 RelaxedPrecision
84*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %179 RelaxedPrecision
85*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %180 RelaxedPrecision
86*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %181 RelaxedPrecision
87*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %187 RelaxedPrecision
88*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %189 RelaxedPrecision
89*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %192 RelaxedPrecision
90*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %195 RelaxedPrecision
91*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %m_2 RelaxedPrecision
92*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %219 RelaxedPrecision
93*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %220 RelaxedPrecision
94*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %221 RelaxedPrecision
95*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %222 RelaxedPrecision
96*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %223 RelaxedPrecision
97*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %238 RelaxedPrecision
98*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %240 RelaxedPrecision
99*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %243 RelaxedPrecision
100*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %246 RelaxedPrecision
101*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %m_3 RelaxedPrecision
102*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %258 RelaxedPrecision
103*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %259 RelaxedPrecision
104*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %260 RelaxedPrecision
105*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %267 RelaxedPrecision
106*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %269 RelaxedPrecision
107*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %m_4 RelaxedPrecision
108*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %281 RelaxedPrecision
109*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %292 RelaxedPrecision
110*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %293 RelaxedPrecision
111*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %295 RelaxedPrecision
112*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %296 RelaxedPrecision
113*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %463 RelaxedPrecision
114*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %466 RelaxedPrecision
115*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %467 RelaxedPrecision
116*c8dee2aaSAndroid Build Coastguard Worker      %float = OpTypeFloat 32
117*c8dee2aaSAndroid Build Coastguard Worker    %v4float = OpTypeVector %float 4
118*c8dee2aaSAndroid Build Coastguard Worker%_ptr_Output_v4float = OpTypePointer Output %v4float
119*c8dee2aaSAndroid Build Coastguard Worker%sk_FragColor = OpVariable %_ptr_Output_v4float Output
120*c8dee2aaSAndroid Build Coastguard Worker%_UniformBuffer = OpTypeStruct %v4float %v4float
121*c8dee2aaSAndroid Build Coastguard Worker%_ptr_Uniform__UniformBuffer = OpTypePointer Uniform %_UniformBuffer
122*c8dee2aaSAndroid Build Coastguard Worker          %8 = OpVariable %_ptr_Uniform__UniformBuffer Uniform
123*c8dee2aaSAndroid Build Coastguard Worker       %void = OpTypeVoid
124*c8dee2aaSAndroid Build Coastguard Worker         %13 = OpTypeFunction %void
125*c8dee2aaSAndroid Build Coastguard Worker    %float_0 = OpConstant %float 0
126*c8dee2aaSAndroid Build Coastguard Worker    %v2float = OpTypeVector %float 2
127*c8dee2aaSAndroid Build Coastguard Worker         %17 = OpConstantComposite %v2float %float_0 %float_0
128*c8dee2aaSAndroid Build Coastguard Worker%_ptr_Function_v2float = OpTypePointer Function %v2float
129*c8dee2aaSAndroid Build Coastguard Worker       %bool = OpTypeBool
130*c8dee2aaSAndroid Build Coastguard Worker         %22 = OpTypeFunction %bool
131*c8dee2aaSAndroid Build Coastguard Worker%_ptr_Function_bool = OpTypePointer Function %bool
132*c8dee2aaSAndroid Build Coastguard Worker       %true = OpConstantTrue %bool
133*c8dee2aaSAndroid Build Coastguard Worker%mat3v2float = OpTypeMatrix %v2float 3
134*c8dee2aaSAndroid Build Coastguard Worker%_ptr_Function_mat3v2float = OpTypePointer Function %mat3v2float
135*c8dee2aaSAndroid Build Coastguard Worker    %float_4 = OpConstant %float 4
136*c8dee2aaSAndroid Build Coastguard Worker         %31 = OpConstantComposite %v2float %float_4 %float_4
137*c8dee2aaSAndroid Build Coastguard Worker         %32 = OpConstantComposite %mat3v2float %31 %31 %31
138*c8dee2aaSAndroid Build Coastguard Worker    %float_2 = OpConstant %float 2
139*c8dee2aaSAndroid Build Coastguard Worker         %35 = OpConstantComposite %v2float %float_2 %float_0
140*c8dee2aaSAndroid Build Coastguard Worker         %36 = OpConstantComposite %v2float %float_0 %float_2
141*c8dee2aaSAndroid Build Coastguard Worker         %37 = OpConstantComposite %mat3v2float %35 %36 %17
142*c8dee2aaSAndroid Build Coastguard Worker      %false = OpConstantFalse %bool
143*c8dee2aaSAndroid Build Coastguard Worker    %float_6 = OpConstant %float 6
144*c8dee2aaSAndroid Build Coastguard Worker         %46 = OpConstantComposite %v2float %float_6 %float_4
145*c8dee2aaSAndroid Build Coastguard Worker         %47 = OpConstantComposite %v2float %float_4 %float_6
146*c8dee2aaSAndroid Build Coastguard Worker         %48 = OpConstantComposite %mat3v2float %46 %47 %31
147*c8dee2aaSAndroid Build Coastguard Worker     %v2bool = OpTypeVector %bool 2
148*c8dee2aaSAndroid Build Coastguard Worker   %float_n2 = OpConstant %float -2
149*c8dee2aaSAndroid Build Coastguard Worker   %float_n4 = OpConstant %float -4
150*c8dee2aaSAndroid Build Coastguard Worker         %67 = OpConstantComposite %v2float %float_n2 %float_n4
151*c8dee2aaSAndroid Build Coastguard Worker         %68 = OpConstantComposite %v2float %float_n4 %float_n2
152*c8dee2aaSAndroid Build Coastguard Worker         %69 = OpConstantComposite %v2float %float_n4 %float_n4
153*c8dee2aaSAndroid Build Coastguard Worker         %70 = OpConstantComposite %mat3v2float %67 %68 %69
154*c8dee2aaSAndroid Build Coastguard Worker  %float_0_5 = OpConstant %float 0.5
155*c8dee2aaSAndroid Build Coastguard Worker         %87 = OpConstantComposite %v2float %float_0_5 %float_0
156*c8dee2aaSAndroid Build Coastguard Worker         %88 = OpConstantComposite %v2float %float_0 %float_0_5
157*c8dee2aaSAndroid Build Coastguard Worker         %89 = OpConstantComposite %mat3v2float %87 %88 %17
158*c8dee2aaSAndroid Build Coastguard Worker    %v3float = OpTypeVector %float 3
159*c8dee2aaSAndroid Build Coastguard Worker%mat2v3float = OpTypeMatrix %v3float 2
160*c8dee2aaSAndroid Build Coastguard Worker%_ptr_Function_mat2v3float = OpTypePointer Function %mat2v3float
161*c8dee2aaSAndroid Build Coastguard Worker        %103 = OpConstantComposite %v3float %float_4 %float_4 %float_4
162*c8dee2aaSAndroid Build Coastguard Worker        %104 = OpConstantComposite %mat2v3float %103 %103
163*c8dee2aaSAndroid Build Coastguard Worker        %106 = OpConstantComposite %v3float %float_2 %float_0 %float_0
164*c8dee2aaSAndroid Build Coastguard Worker        %107 = OpConstantComposite %v3float %float_0 %float_2 %float_0
165*c8dee2aaSAndroid Build Coastguard Worker        %108 = OpConstantComposite %mat2v3float %106 %107
166*c8dee2aaSAndroid Build Coastguard Worker        %114 = OpConstantComposite %v3float %float_6 %float_4 %float_4
167*c8dee2aaSAndroid Build Coastguard Worker        %115 = OpConstantComposite %v3float %float_4 %float_6 %float_4
168*c8dee2aaSAndroid Build Coastguard Worker        %116 = OpConstantComposite %mat2v3float %114 %115
169*c8dee2aaSAndroid Build Coastguard Worker     %v3bool = OpTypeVector %bool 3
170*c8dee2aaSAndroid Build Coastguard Worker        %129 = OpConstantComposite %v3float %float_2 %float_4 %float_4
171*c8dee2aaSAndroid Build Coastguard Worker        %130 = OpConstantComposite %v3float %float_4 %float_2 %float_4
172*c8dee2aaSAndroid Build Coastguard Worker        %131 = OpConstantComposite %mat2v3float %129 %130
173*c8dee2aaSAndroid Build Coastguard Worker        %138 = OpConstantComposite %v3float %float_2 %float_2 %float_2
174*c8dee2aaSAndroid Build Coastguard Worker        %139 = OpConstantComposite %mat2v3float %138 %138
175*c8dee2aaSAndroid Build Coastguard Worker%mat4v3float = OpTypeMatrix %v3float 4
176*c8dee2aaSAndroid Build Coastguard Worker%_ptr_Function_mat4v3float = OpTypePointer Function %mat4v3float
177*c8dee2aaSAndroid Build Coastguard Worker    %float_1 = OpConstant %float 1
178*c8dee2aaSAndroid Build Coastguard Worker    %float_3 = OpConstant %float 3
179*c8dee2aaSAndroid Build Coastguard Worker    %float_5 = OpConstant %float 5
180*c8dee2aaSAndroid Build Coastguard Worker    %float_7 = OpConstant %float 7
181*c8dee2aaSAndroid Build Coastguard Worker    %float_8 = OpConstant %float 8
182*c8dee2aaSAndroid Build Coastguard Worker    %float_9 = OpConstant %float 9
183*c8dee2aaSAndroid Build Coastguard Worker   %float_10 = OpConstant %float 10
184*c8dee2aaSAndroid Build Coastguard Worker   %float_11 = OpConstant %float 11
185*c8dee2aaSAndroid Build Coastguard Worker   %float_12 = OpConstant %float 12
186*c8dee2aaSAndroid Build Coastguard Worker        %163 = OpConstantComposite %v3float %float_1 %float_2 %float_3
187*c8dee2aaSAndroid Build Coastguard Worker        %164 = OpConstantComposite %v3float %float_4 %float_5 %float_6
188*c8dee2aaSAndroid Build Coastguard Worker        %165 = OpConstantComposite %v3float %float_7 %float_8 %float_9
189*c8dee2aaSAndroid Build Coastguard Worker        %166 = OpConstantComposite %v3float %float_10 %float_11 %float_12
190*c8dee2aaSAndroid Build Coastguard Worker        %167 = OpConstantComposite %mat4v3float %163 %164 %165 %166
191*c8dee2aaSAndroid Build Coastguard Worker   %float_16 = OpConstant %float 16
192*c8dee2aaSAndroid Build Coastguard Worker   %float_15 = OpConstant %float 15
193*c8dee2aaSAndroid Build Coastguard Worker   %float_14 = OpConstant %float 14
194*c8dee2aaSAndroid Build Coastguard Worker   %float_13 = OpConstant %float 13
195*c8dee2aaSAndroid Build Coastguard Worker        %172 = OpConstantComposite %v3float %float_16 %float_15 %float_14
196*c8dee2aaSAndroid Build Coastguard Worker        %173 = OpConstantComposite %v3float %float_13 %float_12 %float_11
197*c8dee2aaSAndroid Build Coastguard Worker        %174 = OpConstantComposite %v3float %float_10 %float_9 %float_8
198*c8dee2aaSAndroid Build Coastguard Worker        %175 = OpConstantComposite %v3float %float_7 %float_6 %float_5
199*c8dee2aaSAndroid Build Coastguard Worker        %176 = OpConstantComposite %mat4v3float %172 %173 %174 %175
200*c8dee2aaSAndroid Build Coastguard Worker   %float_17 = OpConstant %float 17
201*c8dee2aaSAndroid Build Coastguard Worker        %185 = OpConstantComposite %v3float %float_17 %float_17 %float_17
202*c8dee2aaSAndroid Build Coastguard Worker        %186 = OpConstantComposite %mat4v3float %185 %185 %185 %185
203*c8dee2aaSAndroid Build Coastguard Worker%mat4v2float = OpTypeMatrix %v2float 4
204*c8dee2aaSAndroid Build Coastguard Worker%_ptr_Function_mat4v2float = OpTypePointer Function %mat4v2float
205*c8dee2aaSAndroid Build Coastguard Worker   %float_20 = OpConstant %float 20
206*c8dee2aaSAndroid Build Coastguard Worker   %float_30 = OpConstant %float 30
207*c8dee2aaSAndroid Build Coastguard Worker   %float_40 = OpConstant %float 40
208*c8dee2aaSAndroid Build Coastguard Worker   %float_50 = OpConstant %float 50
209*c8dee2aaSAndroid Build Coastguard Worker   %float_60 = OpConstant %float 60
210*c8dee2aaSAndroid Build Coastguard Worker   %float_70 = OpConstant %float 70
211*c8dee2aaSAndroid Build Coastguard Worker   %float_80 = OpConstant %float 80
212*c8dee2aaSAndroid Build Coastguard Worker        %209 = OpConstantComposite %v2float %float_10 %float_20
213*c8dee2aaSAndroid Build Coastguard Worker        %210 = OpConstantComposite %v2float %float_30 %float_40
214*c8dee2aaSAndroid Build Coastguard Worker        %211 = OpConstantComposite %v2float %float_50 %float_60
215*c8dee2aaSAndroid Build Coastguard Worker        %212 = OpConstantComposite %v2float %float_70 %float_80
216*c8dee2aaSAndroid Build Coastguard Worker        %213 = OpConstantComposite %mat4v2float %209 %210 %211 %212
217*c8dee2aaSAndroid Build Coastguard Worker        %214 = OpConstantComposite %v2float %float_1 %float_2
218*c8dee2aaSAndroid Build Coastguard Worker        %215 = OpConstantComposite %v2float %float_3 %float_4
219*c8dee2aaSAndroid Build Coastguard Worker        %216 = OpConstantComposite %v2float %float_5 %float_6
220*c8dee2aaSAndroid Build Coastguard Worker        %217 = OpConstantComposite %v2float %float_7 %float_8
221*c8dee2aaSAndroid Build Coastguard Worker        %218 = OpConstantComposite %mat4v2float %214 %215 %216 %217
222*c8dee2aaSAndroid Build Coastguard Worker   %float_18 = OpConstant %float 18
223*c8dee2aaSAndroid Build Coastguard Worker   %float_27 = OpConstant %float 27
224*c8dee2aaSAndroid Build Coastguard Worker   %float_36 = OpConstant %float 36
225*c8dee2aaSAndroid Build Coastguard Worker   %float_45 = OpConstant %float 45
226*c8dee2aaSAndroid Build Coastguard Worker   %float_54 = OpConstant %float 54
227*c8dee2aaSAndroid Build Coastguard Worker   %float_63 = OpConstant %float 63
228*c8dee2aaSAndroid Build Coastguard Worker   %float_72 = OpConstant %float 72
229*c8dee2aaSAndroid Build Coastguard Worker        %233 = OpConstantComposite %v2float %float_9 %float_18
230*c8dee2aaSAndroid Build Coastguard Worker        %234 = OpConstantComposite %v2float %float_27 %float_36
231*c8dee2aaSAndroid Build Coastguard Worker        %235 = OpConstantComposite %v2float %float_45 %float_54
232*c8dee2aaSAndroid Build Coastguard Worker        %236 = OpConstantComposite %v2float %float_63 %float_72
233*c8dee2aaSAndroid Build Coastguard Worker        %237 = OpConstantComposite %mat4v2float %233 %234 %235 %236
234*c8dee2aaSAndroid Build Coastguard Worker%mat2v4float = OpTypeMatrix %v4float 2
235*c8dee2aaSAndroid Build Coastguard Worker%_ptr_Function_mat2v4float = OpTypePointer Function %mat2v4float
236*c8dee2aaSAndroid Build Coastguard Worker        %253 = OpConstantComposite %v4float %float_10 %float_20 %float_30 %float_40
237*c8dee2aaSAndroid Build Coastguard Worker        %254 = OpConstantComposite %mat2v4float %253 %253
238*c8dee2aaSAndroid Build Coastguard Worker        %255 = OpConstantComposite %v4float %float_10 %float_10 %float_10 %float_10
239*c8dee2aaSAndroid Build Coastguard Worker        %256 = OpConstantComposite %v4float %float_5 %float_5 %float_5 %float_5
240*c8dee2aaSAndroid Build Coastguard Worker        %257 = OpConstantComposite %mat2v4float %255 %256
241*c8dee2aaSAndroid Build Coastguard Worker        %263 = OpConstantComposite %v4float %float_1 %float_2 %float_3 %float_4
242*c8dee2aaSAndroid Build Coastguard Worker        %264 = OpConstantComposite %v4float %float_2 %float_4 %float_6 %float_8
243*c8dee2aaSAndroid Build Coastguard Worker        %265 = OpConstantComposite %mat2v4float %263 %264
244*c8dee2aaSAndroid Build Coastguard Worker     %v4bool = OpTypeVector %bool 4
245*c8dee2aaSAndroid Build Coastguard Worker        %274 = OpConstantComposite %v3float %float_7 %float_9 %float_11
246*c8dee2aaSAndroid Build Coastguard Worker        %275 = OpConstantComposite %v3float %float_8 %float_10 %float_12
247*c8dee2aaSAndroid Build Coastguard Worker        %276 = OpConstantComposite %mat2v3float %274 %275
248*c8dee2aaSAndroid Build Coastguard Worker        %277 = OpConstantComposite %v2float %float_1 %float_4
249*c8dee2aaSAndroid Build Coastguard Worker        %278 = OpConstantComposite %v2float %float_2 %float_5
250*c8dee2aaSAndroid Build Coastguard Worker%mat2v2float = OpTypeMatrix %v2float 2
251*c8dee2aaSAndroid Build Coastguard Worker        %280 = OpConstantComposite %mat2v2float %277 %278
252*c8dee2aaSAndroid Build Coastguard Worker   %float_39 = OpConstant %float 39
253*c8dee2aaSAndroid Build Coastguard Worker   %float_49 = OpConstant %float 49
254*c8dee2aaSAndroid Build Coastguard Worker   %float_59 = OpConstant %float 59
255*c8dee2aaSAndroid Build Coastguard Worker   %float_68 = OpConstant %float 68
256*c8dee2aaSAndroid Build Coastguard Worker   %float_82 = OpConstant %float 82
257*c8dee2aaSAndroid Build Coastguard Worker        %289 = OpConstantComposite %v3float %float_39 %float_49 %float_59
258*c8dee2aaSAndroid Build Coastguard Worker        %290 = OpConstantComposite %v3float %float_54 %float_68 %float_82
259*c8dee2aaSAndroid Build Coastguard Worker        %291 = OpConstantComposite %mat2v3float %289 %290
260*c8dee2aaSAndroid Build Coastguard Worker        %300 = OpTypeFunction %v4float %_ptr_Function_v2float
261*c8dee2aaSAndroid Build Coastguard Worker%_ptr_Function_v4float = OpTypePointer Function %v4float
262*c8dee2aaSAndroid Build Coastguard Worker%_ptr_Uniform_v4float = OpTypePointer Uniform %v4float
263*c8dee2aaSAndroid Build Coastguard Worker        %int = OpTypeInt 32 1
264*c8dee2aaSAndroid Build Coastguard Worker      %int_1 = OpConstant %int 1
265*c8dee2aaSAndroid Build Coastguard Worker      %int_0 = OpConstant %int 0
266*c8dee2aaSAndroid Build Coastguard Worker%_entrypoint_v = OpFunction %void None %13
267*c8dee2aaSAndroid Build Coastguard Worker         %14 = OpLabel
268*c8dee2aaSAndroid Build Coastguard Worker         %18 = OpVariable %_ptr_Function_v2float Function
269*c8dee2aaSAndroid Build Coastguard Worker               OpStore %18 %17
270*c8dee2aaSAndroid Build Coastguard Worker         %20 = OpFunctionCall %v4float %main %18
271*c8dee2aaSAndroid Build Coastguard Worker               OpStore %sk_FragColor %20
272*c8dee2aaSAndroid Build Coastguard Worker               OpReturn
273*c8dee2aaSAndroid Build Coastguard Worker               OpFunctionEnd
274*c8dee2aaSAndroid Build Coastguard Worker%test_matrix_op_matrix_half_b = OpFunction %bool None %22
275*c8dee2aaSAndroid Build Coastguard Worker         %23 = OpLabel
276*c8dee2aaSAndroid Build Coastguard Worker         %ok = OpVariable %_ptr_Function_bool Function
277*c8dee2aaSAndroid Build Coastguard Worker    %splat_4 = OpVariable %_ptr_Function_mat3v2float Function
278*c8dee2aaSAndroid Build Coastguard Worker          %m = OpVariable %_ptr_Function_mat3v2float Function
279*c8dee2aaSAndroid Build Coastguard Worker  %splat_4_0 = OpVariable %_ptr_Function_mat2v3float Function
280*c8dee2aaSAndroid Build Coastguard Worker        %m_0 = OpVariable %_ptr_Function_mat2v3float Function
281*c8dee2aaSAndroid Build Coastguard Worker        %m_1 = OpVariable %_ptr_Function_mat4v3float Function
282*c8dee2aaSAndroid Build Coastguard Worker        %m_2 = OpVariable %_ptr_Function_mat4v2float Function
283*c8dee2aaSAndroid Build Coastguard Worker        %m_3 = OpVariable %_ptr_Function_mat2v4float Function
284*c8dee2aaSAndroid Build Coastguard Worker        %m_4 = OpVariable %_ptr_Function_mat2v3float Function
285*c8dee2aaSAndroid Build Coastguard Worker               OpStore %ok %true
286*c8dee2aaSAndroid Build Coastguard Worker               OpStore %splat_4 %32
287*c8dee2aaSAndroid Build Coastguard Worker               OpStore %m %37
288*c8dee2aaSAndroid Build Coastguard Worker         %38 = OpFAdd %v2float %35 %31
289*c8dee2aaSAndroid Build Coastguard Worker         %39 = OpFAdd %v2float %36 %31
290*c8dee2aaSAndroid Build Coastguard Worker         %40 = OpFAdd %v2float %17 %31
291*c8dee2aaSAndroid Build Coastguard Worker         %41 = OpCompositeConstruct %mat3v2float %38 %39 %40
292*c8dee2aaSAndroid Build Coastguard Worker               OpStore %m %41
293*c8dee2aaSAndroid Build Coastguard Worker               OpSelectionMerge %44 None
294*c8dee2aaSAndroid Build Coastguard Worker               OpBranchConditional %true %43 %44
295*c8dee2aaSAndroid Build Coastguard Worker         %43 = OpLabel
296*c8dee2aaSAndroid Build Coastguard Worker         %50 = OpFOrdEqual %v2bool %38 %46
297*c8dee2aaSAndroid Build Coastguard Worker         %51 = OpAll %bool %50
298*c8dee2aaSAndroid Build Coastguard Worker         %52 = OpFOrdEqual %v2bool %39 %47
299*c8dee2aaSAndroid Build Coastguard Worker         %53 = OpAll %bool %52
300*c8dee2aaSAndroid Build Coastguard Worker         %54 = OpLogicalAnd %bool %51 %53
301*c8dee2aaSAndroid Build Coastguard Worker         %55 = OpFOrdEqual %v2bool %40 %31
302*c8dee2aaSAndroid Build Coastguard Worker         %56 = OpAll %bool %55
303*c8dee2aaSAndroid Build Coastguard Worker         %57 = OpLogicalAnd %bool %54 %56
304*c8dee2aaSAndroid Build Coastguard Worker               OpBranch %44
305*c8dee2aaSAndroid Build Coastguard Worker         %44 = OpLabel
306*c8dee2aaSAndroid Build Coastguard Worker         %58 = OpPhi %bool %false %23 %57 %43
307*c8dee2aaSAndroid Build Coastguard Worker               OpStore %ok %58
308*c8dee2aaSAndroid Build Coastguard Worker               OpStore %m %37
309*c8dee2aaSAndroid Build Coastguard Worker         %59 = OpFSub %v2float %35 %31
310*c8dee2aaSAndroid Build Coastguard Worker         %60 = OpFSub %v2float %36 %31
311*c8dee2aaSAndroid Build Coastguard Worker         %61 = OpFSub %v2float %17 %31
312*c8dee2aaSAndroid Build Coastguard Worker         %62 = OpCompositeConstruct %mat3v2float %59 %60 %61
313*c8dee2aaSAndroid Build Coastguard Worker               OpStore %m %62
314*c8dee2aaSAndroid Build Coastguard Worker               OpSelectionMerge %64 None
315*c8dee2aaSAndroid Build Coastguard Worker               OpBranchConditional %58 %63 %64
316*c8dee2aaSAndroid Build Coastguard Worker         %63 = OpLabel
317*c8dee2aaSAndroid Build Coastguard Worker         %71 = OpFOrdEqual %v2bool %59 %67
318*c8dee2aaSAndroid Build Coastguard Worker         %72 = OpAll %bool %71
319*c8dee2aaSAndroid Build Coastguard Worker         %73 = OpFOrdEqual %v2bool %60 %68
320*c8dee2aaSAndroid Build Coastguard Worker         %74 = OpAll %bool %73
321*c8dee2aaSAndroid Build Coastguard Worker         %75 = OpLogicalAnd %bool %72 %74
322*c8dee2aaSAndroid Build Coastguard Worker         %76 = OpFOrdEqual %v2bool %61 %69
323*c8dee2aaSAndroid Build Coastguard Worker         %77 = OpAll %bool %76
324*c8dee2aaSAndroid Build Coastguard Worker         %78 = OpLogicalAnd %bool %75 %77
325*c8dee2aaSAndroid Build Coastguard Worker               OpBranch %64
326*c8dee2aaSAndroid Build Coastguard Worker         %64 = OpLabel
327*c8dee2aaSAndroid Build Coastguard Worker         %79 = OpPhi %bool %false %44 %78 %63
328*c8dee2aaSAndroid Build Coastguard Worker               OpStore %ok %79
329*c8dee2aaSAndroid Build Coastguard Worker               OpStore %m %37
330*c8dee2aaSAndroid Build Coastguard Worker         %80 = OpFDiv %v2float %35 %31
331*c8dee2aaSAndroid Build Coastguard Worker         %81 = OpFDiv %v2float %36 %31
332*c8dee2aaSAndroid Build Coastguard Worker         %82 = OpFDiv %v2float %17 %31
333*c8dee2aaSAndroid Build Coastguard Worker         %83 = OpCompositeConstruct %mat3v2float %80 %81 %82
334*c8dee2aaSAndroid Build Coastguard Worker               OpStore %m %83
335*c8dee2aaSAndroid Build Coastguard Worker               OpSelectionMerge %85 None
336*c8dee2aaSAndroid Build Coastguard Worker               OpBranchConditional %79 %84 %85
337*c8dee2aaSAndroid Build Coastguard Worker         %84 = OpLabel
338*c8dee2aaSAndroid Build Coastguard Worker         %90 = OpFOrdEqual %v2bool %80 %87
339*c8dee2aaSAndroid Build Coastguard Worker         %91 = OpAll %bool %90
340*c8dee2aaSAndroid Build Coastguard Worker         %92 = OpFOrdEqual %v2bool %81 %88
341*c8dee2aaSAndroid Build Coastguard Worker         %93 = OpAll %bool %92
342*c8dee2aaSAndroid Build Coastguard Worker         %94 = OpLogicalAnd %bool %91 %93
343*c8dee2aaSAndroid Build Coastguard Worker         %95 = OpFOrdEqual %v2bool %82 %17
344*c8dee2aaSAndroid Build Coastguard Worker         %96 = OpAll %bool %95
345*c8dee2aaSAndroid Build Coastguard Worker         %97 = OpLogicalAnd %bool %94 %96
346*c8dee2aaSAndroid Build Coastguard Worker               OpBranch %85
347*c8dee2aaSAndroid Build Coastguard Worker         %85 = OpLabel
348*c8dee2aaSAndroid Build Coastguard Worker         %98 = OpPhi %bool %false %64 %97 %84
349*c8dee2aaSAndroid Build Coastguard Worker               OpStore %ok %98
350*c8dee2aaSAndroid Build Coastguard Worker               OpStore %splat_4_0 %104
351*c8dee2aaSAndroid Build Coastguard Worker               OpStore %m_0 %104
352*c8dee2aaSAndroid Build Coastguard Worker        %109 = OpFAdd %v3float %103 %106
353*c8dee2aaSAndroid Build Coastguard Worker        %110 = OpFAdd %v3float %103 %107
354*c8dee2aaSAndroid Build Coastguard Worker        %111 = OpCompositeConstruct %mat2v3float %109 %110
355*c8dee2aaSAndroid Build Coastguard Worker               OpStore %m_0 %111
356*c8dee2aaSAndroid Build Coastguard Worker               OpSelectionMerge %113 None
357*c8dee2aaSAndroid Build Coastguard Worker               OpBranchConditional %98 %112 %113
358*c8dee2aaSAndroid Build Coastguard Worker        %112 = OpLabel
359*c8dee2aaSAndroid Build Coastguard Worker        %118 = OpFOrdEqual %v3bool %109 %114
360*c8dee2aaSAndroid Build Coastguard Worker        %119 = OpAll %bool %118
361*c8dee2aaSAndroid Build Coastguard Worker        %120 = OpFOrdEqual %v3bool %110 %115
362*c8dee2aaSAndroid Build Coastguard Worker        %121 = OpAll %bool %120
363*c8dee2aaSAndroid Build Coastguard Worker        %122 = OpLogicalAnd %bool %119 %121
364*c8dee2aaSAndroid Build Coastguard Worker               OpBranch %113
365*c8dee2aaSAndroid Build Coastguard Worker        %113 = OpLabel
366*c8dee2aaSAndroid Build Coastguard Worker        %123 = OpPhi %bool %false %85 %122 %112
367*c8dee2aaSAndroid Build Coastguard Worker               OpStore %ok %123
368*c8dee2aaSAndroid Build Coastguard Worker               OpStore %m_0 %104
369*c8dee2aaSAndroid Build Coastguard Worker        %124 = OpFSub %v3float %103 %106
370*c8dee2aaSAndroid Build Coastguard Worker        %125 = OpFSub %v3float %103 %107
371*c8dee2aaSAndroid Build Coastguard Worker        %126 = OpCompositeConstruct %mat2v3float %124 %125
372*c8dee2aaSAndroid Build Coastguard Worker               OpStore %m_0 %126
373*c8dee2aaSAndroid Build Coastguard Worker               OpSelectionMerge %128 None
374*c8dee2aaSAndroid Build Coastguard Worker               OpBranchConditional %123 %127 %128
375*c8dee2aaSAndroid Build Coastguard Worker        %127 = OpLabel
376*c8dee2aaSAndroid Build Coastguard Worker        %132 = OpFOrdEqual %v3bool %124 %129
377*c8dee2aaSAndroid Build Coastguard Worker        %133 = OpAll %bool %132
378*c8dee2aaSAndroid Build Coastguard Worker        %134 = OpFOrdEqual %v3bool %125 %130
379*c8dee2aaSAndroid Build Coastguard Worker        %135 = OpAll %bool %134
380*c8dee2aaSAndroid Build Coastguard Worker        %136 = OpLogicalAnd %bool %133 %135
381*c8dee2aaSAndroid Build Coastguard Worker               OpBranch %128
382*c8dee2aaSAndroid Build Coastguard Worker        %128 = OpLabel
383*c8dee2aaSAndroid Build Coastguard Worker        %137 = OpPhi %bool %false %113 %136 %127
384*c8dee2aaSAndroid Build Coastguard Worker               OpStore %ok %137
385*c8dee2aaSAndroid Build Coastguard Worker               OpStore %m_0 %104
386*c8dee2aaSAndroid Build Coastguard Worker        %140 = OpFDiv %v3float %103 %138
387*c8dee2aaSAndroid Build Coastguard Worker        %141 = OpFDiv %v3float %103 %138
388*c8dee2aaSAndroid Build Coastguard Worker        %142 = OpCompositeConstruct %mat2v3float %140 %141
389*c8dee2aaSAndroid Build Coastguard Worker               OpStore %m_0 %142
390*c8dee2aaSAndroid Build Coastguard Worker               OpSelectionMerge %144 None
391*c8dee2aaSAndroid Build Coastguard Worker               OpBranchConditional %137 %143 %144
392*c8dee2aaSAndroid Build Coastguard Worker        %143 = OpLabel
393*c8dee2aaSAndroid Build Coastguard Worker        %145 = OpFOrdEqual %v3bool %140 %138
394*c8dee2aaSAndroid Build Coastguard Worker        %146 = OpAll %bool %145
395*c8dee2aaSAndroid Build Coastguard Worker        %147 = OpFOrdEqual %v3bool %141 %138
396*c8dee2aaSAndroid Build Coastguard Worker        %148 = OpAll %bool %147
397*c8dee2aaSAndroid Build Coastguard Worker        %149 = OpLogicalAnd %bool %146 %148
398*c8dee2aaSAndroid Build Coastguard Worker               OpBranch %144
399*c8dee2aaSAndroid Build Coastguard Worker        %144 = OpLabel
400*c8dee2aaSAndroid Build Coastguard Worker        %150 = OpPhi %bool %false %128 %149 %143
401*c8dee2aaSAndroid Build Coastguard Worker               OpStore %ok %150
402*c8dee2aaSAndroid Build Coastguard Worker               OpStore %m_1 %167
403*c8dee2aaSAndroid Build Coastguard Worker        %177 = OpFAdd %v3float %163 %172
404*c8dee2aaSAndroid Build Coastguard Worker        %178 = OpFAdd %v3float %164 %173
405*c8dee2aaSAndroid Build Coastguard Worker        %179 = OpFAdd %v3float %165 %174
406*c8dee2aaSAndroid Build Coastguard Worker        %180 = OpFAdd %v3float %166 %175
407*c8dee2aaSAndroid Build Coastguard Worker        %181 = OpCompositeConstruct %mat4v3float %177 %178 %179 %180
408*c8dee2aaSAndroid Build Coastguard Worker               OpStore %m_1 %181
409*c8dee2aaSAndroid Build Coastguard Worker               OpSelectionMerge %183 None
410*c8dee2aaSAndroid Build Coastguard Worker               OpBranchConditional %150 %182 %183
411*c8dee2aaSAndroid Build Coastguard Worker        %182 = OpLabel
412*c8dee2aaSAndroid Build Coastguard Worker        %187 = OpFOrdEqual %v3bool %177 %185
413*c8dee2aaSAndroid Build Coastguard Worker        %188 = OpAll %bool %187
414*c8dee2aaSAndroid Build Coastguard Worker        %189 = OpFOrdEqual %v3bool %178 %185
415*c8dee2aaSAndroid Build Coastguard Worker        %190 = OpAll %bool %189
416*c8dee2aaSAndroid Build Coastguard Worker        %191 = OpLogicalAnd %bool %188 %190
417*c8dee2aaSAndroid Build Coastguard Worker        %192 = OpFOrdEqual %v3bool %179 %185
418*c8dee2aaSAndroid Build Coastguard Worker        %193 = OpAll %bool %192
419*c8dee2aaSAndroid Build Coastguard Worker        %194 = OpLogicalAnd %bool %191 %193
420*c8dee2aaSAndroid Build Coastguard Worker        %195 = OpFOrdEqual %v3bool %180 %185
421*c8dee2aaSAndroid Build Coastguard Worker        %196 = OpAll %bool %195
422*c8dee2aaSAndroid Build Coastguard Worker        %197 = OpLogicalAnd %bool %194 %196
423*c8dee2aaSAndroid Build Coastguard Worker               OpBranch %183
424*c8dee2aaSAndroid Build Coastguard Worker        %183 = OpLabel
425*c8dee2aaSAndroid Build Coastguard Worker        %198 = OpPhi %bool %false %144 %197 %182
426*c8dee2aaSAndroid Build Coastguard Worker               OpStore %ok %198
427*c8dee2aaSAndroid Build Coastguard Worker               OpStore %m_2 %213
428*c8dee2aaSAndroid Build Coastguard Worker        %219 = OpFSub %v2float %209 %214
429*c8dee2aaSAndroid Build Coastguard Worker        %220 = OpFSub %v2float %210 %215
430*c8dee2aaSAndroid Build Coastguard Worker        %221 = OpFSub %v2float %211 %216
431*c8dee2aaSAndroid Build Coastguard Worker        %222 = OpFSub %v2float %212 %217
432*c8dee2aaSAndroid Build Coastguard Worker        %223 = OpCompositeConstruct %mat4v2float %219 %220 %221 %222
433*c8dee2aaSAndroid Build Coastguard Worker               OpStore %m_2 %223
434*c8dee2aaSAndroid Build Coastguard Worker               OpSelectionMerge %225 None
435*c8dee2aaSAndroid Build Coastguard Worker               OpBranchConditional %198 %224 %225
436*c8dee2aaSAndroid Build Coastguard Worker        %224 = OpLabel
437*c8dee2aaSAndroid Build Coastguard Worker        %238 = OpFOrdEqual %v2bool %219 %233
438*c8dee2aaSAndroid Build Coastguard Worker        %239 = OpAll %bool %238
439*c8dee2aaSAndroid Build Coastguard Worker        %240 = OpFOrdEqual %v2bool %220 %234
440*c8dee2aaSAndroid Build Coastguard Worker        %241 = OpAll %bool %240
441*c8dee2aaSAndroid Build Coastguard Worker        %242 = OpLogicalAnd %bool %239 %241
442*c8dee2aaSAndroid Build Coastguard Worker        %243 = OpFOrdEqual %v2bool %221 %235
443*c8dee2aaSAndroid Build Coastguard Worker        %244 = OpAll %bool %243
444*c8dee2aaSAndroid Build Coastguard Worker        %245 = OpLogicalAnd %bool %242 %244
445*c8dee2aaSAndroid Build Coastguard Worker        %246 = OpFOrdEqual %v2bool %222 %236
446*c8dee2aaSAndroid Build Coastguard Worker        %247 = OpAll %bool %246
447*c8dee2aaSAndroid Build Coastguard Worker        %248 = OpLogicalAnd %bool %245 %247
448*c8dee2aaSAndroid Build Coastguard Worker               OpBranch %225
449*c8dee2aaSAndroid Build Coastguard Worker        %225 = OpLabel
450*c8dee2aaSAndroid Build Coastguard Worker        %249 = OpPhi %bool %false %183 %248 %224
451*c8dee2aaSAndroid Build Coastguard Worker               OpStore %ok %249
452*c8dee2aaSAndroid Build Coastguard Worker               OpStore %m_3 %254
453*c8dee2aaSAndroid Build Coastguard Worker        %258 = OpFDiv %v4float %253 %255
454*c8dee2aaSAndroid Build Coastguard Worker        %259 = OpFDiv %v4float %253 %256
455*c8dee2aaSAndroid Build Coastguard Worker        %260 = OpCompositeConstruct %mat2v4float %258 %259
456*c8dee2aaSAndroid Build Coastguard Worker               OpStore %m_3 %260
457*c8dee2aaSAndroid Build Coastguard Worker               OpSelectionMerge %262 None
458*c8dee2aaSAndroid Build Coastguard Worker               OpBranchConditional %249 %261 %262
459*c8dee2aaSAndroid Build Coastguard Worker        %261 = OpLabel
460*c8dee2aaSAndroid Build Coastguard Worker        %267 = OpFOrdEqual %v4bool %258 %263
461*c8dee2aaSAndroid Build Coastguard Worker        %268 = OpAll %bool %267
462*c8dee2aaSAndroid Build Coastguard Worker        %269 = OpFOrdEqual %v4bool %259 %264
463*c8dee2aaSAndroid Build Coastguard Worker        %270 = OpAll %bool %269
464*c8dee2aaSAndroid Build Coastguard Worker        %271 = OpLogicalAnd %bool %268 %270
465*c8dee2aaSAndroid Build Coastguard Worker               OpBranch %262
466*c8dee2aaSAndroid Build Coastguard Worker        %262 = OpLabel
467*c8dee2aaSAndroid Build Coastguard Worker        %272 = OpPhi %bool %false %225 %271 %261
468*c8dee2aaSAndroid Build Coastguard Worker               OpStore %ok %272
469*c8dee2aaSAndroid Build Coastguard Worker               OpStore %m_4 %276
470*c8dee2aaSAndroid Build Coastguard Worker        %281 = OpMatrixTimesMatrix %mat2v3float %276 %280
471*c8dee2aaSAndroid Build Coastguard Worker               OpStore %m_4 %281
472*c8dee2aaSAndroid Build Coastguard Worker               OpSelectionMerge %283 None
473*c8dee2aaSAndroid Build Coastguard Worker               OpBranchConditional %272 %282 %283
474*c8dee2aaSAndroid Build Coastguard Worker        %282 = OpLabel
475*c8dee2aaSAndroid Build Coastguard Worker        %292 = OpCompositeExtract %v3float %281 0
476*c8dee2aaSAndroid Build Coastguard Worker        %293 = OpFOrdEqual %v3bool %292 %289
477*c8dee2aaSAndroid Build Coastguard Worker        %294 = OpAll %bool %293
478*c8dee2aaSAndroid Build Coastguard Worker        %295 = OpCompositeExtract %v3float %281 1
479*c8dee2aaSAndroid Build Coastguard Worker        %296 = OpFOrdEqual %v3bool %295 %290
480*c8dee2aaSAndroid Build Coastguard Worker        %297 = OpAll %bool %296
481*c8dee2aaSAndroid Build Coastguard Worker        %298 = OpLogicalAnd %bool %294 %297
482*c8dee2aaSAndroid Build Coastguard Worker               OpBranch %283
483*c8dee2aaSAndroid Build Coastguard Worker        %283 = OpLabel
484*c8dee2aaSAndroid Build Coastguard Worker        %299 = OpPhi %bool %false %262 %298 %282
485*c8dee2aaSAndroid Build Coastguard Worker               OpStore %ok %299
486*c8dee2aaSAndroid Build Coastguard Worker               OpReturnValue %299
487*c8dee2aaSAndroid Build Coastguard Worker               OpFunctionEnd
488*c8dee2aaSAndroid Build Coastguard Worker       %main = OpFunction %v4float None %300
489*c8dee2aaSAndroid Build Coastguard Worker        %301 = OpFunctionParameter %_ptr_Function_v2float
490*c8dee2aaSAndroid Build Coastguard Worker        %302 = OpLabel
491*c8dee2aaSAndroid Build Coastguard Worker      %_0_ok = OpVariable %_ptr_Function_bool Function
492*c8dee2aaSAndroid Build Coastguard Worker %_1_splat_4 = OpVariable %_ptr_Function_mat3v2float Function
493*c8dee2aaSAndroid Build Coastguard Worker       %_2_m = OpVariable %_ptr_Function_mat3v2float Function
494*c8dee2aaSAndroid Build Coastguard Worker %_3_splat_4 = OpVariable %_ptr_Function_mat2v3float Function
495*c8dee2aaSAndroid Build Coastguard Worker       %_4_m = OpVariable %_ptr_Function_mat2v3float Function
496*c8dee2aaSAndroid Build Coastguard Worker       %_5_m = OpVariable %_ptr_Function_mat4v3float Function
497*c8dee2aaSAndroid Build Coastguard Worker       %_6_m = OpVariable %_ptr_Function_mat4v2float Function
498*c8dee2aaSAndroid Build Coastguard Worker       %_7_m = OpVariable %_ptr_Function_mat2v4float Function
499*c8dee2aaSAndroid Build Coastguard Worker       %_8_m = OpVariable %_ptr_Function_mat2v3float Function
500*c8dee2aaSAndroid Build Coastguard Worker        %454 = OpVariable %_ptr_Function_v4float Function
501*c8dee2aaSAndroid Build Coastguard Worker               OpStore %_0_ok %true
502*c8dee2aaSAndroid Build Coastguard Worker               OpStore %_1_splat_4 %32
503*c8dee2aaSAndroid Build Coastguard Worker               OpStore %_2_m %37
504*c8dee2aaSAndroid Build Coastguard Worker        %306 = OpFAdd %v2float %35 %31
505*c8dee2aaSAndroid Build Coastguard Worker        %307 = OpFAdd %v2float %36 %31
506*c8dee2aaSAndroid Build Coastguard Worker        %308 = OpFAdd %v2float %17 %31
507*c8dee2aaSAndroid Build Coastguard Worker        %309 = OpCompositeConstruct %mat3v2float %306 %307 %308
508*c8dee2aaSAndroid Build Coastguard Worker               OpStore %_2_m %309
509*c8dee2aaSAndroid Build Coastguard Worker               OpSelectionMerge %311 None
510*c8dee2aaSAndroid Build Coastguard Worker               OpBranchConditional %true %310 %311
511*c8dee2aaSAndroid Build Coastguard Worker        %310 = OpLabel
512*c8dee2aaSAndroid Build Coastguard Worker        %312 = OpFOrdEqual %v2bool %306 %46
513*c8dee2aaSAndroid Build Coastguard Worker        %313 = OpAll %bool %312
514*c8dee2aaSAndroid Build Coastguard Worker        %314 = OpFOrdEqual %v2bool %307 %47
515*c8dee2aaSAndroid Build Coastguard Worker        %315 = OpAll %bool %314
516*c8dee2aaSAndroid Build Coastguard Worker        %316 = OpLogicalAnd %bool %313 %315
517*c8dee2aaSAndroid Build Coastguard Worker        %317 = OpFOrdEqual %v2bool %308 %31
518*c8dee2aaSAndroid Build Coastguard Worker        %318 = OpAll %bool %317
519*c8dee2aaSAndroid Build Coastguard Worker        %319 = OpLogicalAnd %bool %316 %318
520*c8dee2aaSAndroid Build Coastguard Worker               OpBranch %311
521*c8dee2aaSAndroid Build Coastguard Worker        %311 = OpLabel
522*c8dee2aaSAndroid Build Coastguard Worker        %320 = OpPhi %bool %false %302 %319 %310
523*c8dee2aaSAndroid Build Coastguard Worker               OpStore %_0_ok %320
524*c8dee2aaSAndroid Build Coastguard Worker               OpStore %_2_m %37
525*c8dee2aaSAndroid Build Coastguard Worker        %321 = OpFSub %v2float %35 %31
526*c8dee2aaSAndroid Build Coastguard Worker        %322 = OpFSub %v2float %36 %31
527*c8dee2aaSAndroid Build Coastguard Worker        %323 = OpFSub %v2float %17 %31
528*c8dee2aaSAndroid Build Coastguard Worker        %324 = OpCompositeConstruct %mat3v2float %321 %322 %323
529*c8dee2aaSAndroid Build Coastguard Worker               OpStore %_2_m %324
530*c8dee2aaSAndroid Build Coastguard Worker               OpSelectionMerge %326 None
531*c8dee2aaSAndroid Build Coastguard Worker               OpBranchConditional %320 %325 %326
532*c8dee2aaSAndroid Build Coastguard Worker        %325 = OpLabel
533*c8dee2aaSAndroid Build Coastguard Worker        %327 = OpFOrdEqual %v2bool %321 %67
534*c8dee2aaSAndroid Build Coastguard Worker        %328 = OpAll %bool %327
535*c8dee2aaSAndroid Build Coastguard Worker        %329 = OpFOrdEqual %v2bool %322 %68
536*c8dee2aaSAndroid Build Coastguard Worker        %330 = OpAll %bool %329
537*c8dee2aaSAndroid Build Coastguard Worker        %331 = OpLogicalAnd %bool %328 %330
538*c8dee2aaSAndroid Build Coastguard Worker        %332 = OpFOrdEqual %v2bool %323 %69
539*c8dee2aaSAndroid Build Coastguard Worker        %333 = OpAll %bool %332
540*c8dee2aaSAndroid Build Coastguard Worker        %334 = OpLogicalAnd %bool %331 %333
541*c8dee2aaSAndroid Build Coastguard Worker               OpBranch %326
542*c8dee2aaSAndroid Build Coastguard Worker        %326 = OpLabel
543*c8dee2aaSAndroid Build Coastguard Worker        %335 = OpPhi %bool %false %311 %334 %325
544*c8dee2aaSAndroid Build Coastguard Worker               OpStore %_0_ok %335
545*c8dee2aaSAndroid Build Coastguard Worker               OpStore %_2_m %37
546*c8dee2aaSAndroid Build Coastguard Worker        %336 = OpFDiv %v2float %35 %31
547*c8dee2aaSAndroid Build Coastguard Worker        %337 = OpFDiv %v2float %36 %31
548*c8dee2aaSAndroid Build Coastguard Worker        %338 = OpFDiv %v2float %17 %31
549*c8dee2aaSAndroid Build Coastguard Worker        %339 = OpCompositeConstruct %mat3v2float %336 %337 %338
550*c8dee2aaSAndroid Build Coastguard Worker               OpStore %_2_m %339
551*c8dee2aaSAndroid Build Coastguard Worker               OpSelectionMerge %341 None
552*c8dee2aaSAndroid Build Coastguard Worker               OpBranchConditional %335 %340 %341
553*c8dee2aaSAndroid Build Coastguard Worker        %340 = OpLabel
554*c8dee2aaSAndroid Build Coastguard Worker        %342 = OpFOrdEqual %v2bool %336 %87
555*c8dee2aaSAndroid Build Coastguard Worker        %343 = OpAll %bool %342
556*c8dee2aaSAndroid Build Coastguard Worker        %344 = OpFOrdEqual %v2bool %337 %88
557*c8dee2aaSAndroid Build Coastguard Worker        %345 = OpAll %bool %344
558*c8dee2aaSAndroid Build Coastguard Worker        %346 = OpLogicalAnd %bool %343 %345
559*c8dee2aaSAndroid Build Coastguard Worker        %347 = OpFOrdEqual %v2bool %338 %17
560*c8dee2aaSAndroid Build Coastguard Worker        %348 = OpAll %bool %347
561*c8dee2aaSAndroid Build Coastguard Worker        %349 = OpLogicalAnd %bool %346 %348
562*c8dee2aaSAndroid Build Coastguard Worker               OpBranch %341
563*c8dee2aaSAndroid Build Coastguard Worker        %341 = OpLabel
564*c8dee2aaSAndroid Build Coastguard Worker        %350 = OpPhi %bool %false %326 %349 %340
565*c8dee2aaSAndroid Build Coastguard Worker               OpStore %_0_ok %350
566*c8dee2aaSAndroid Build Coastguard Worker               OpStore %_3_splat_4 %104
567*c8dee2aaSAndroid Build Coastguard Worker               OpStore %_4_m %104
568*c8dee2aaSAndroid Build Coastguard Worker        %353 = OpFAdd %v3float %103 %106
569*c8dee2aaSAndroid Build Coastguard Worker        %354 = OpFAdd %v3float %103 %107
570*c8dee2aaSAndroid Build Coastguard Worker        %355 = OpCompositeConstruct %mat2v3float %353 %354
571*c8dee2aaSAndroid Build Coastguard Worker               OpStore %_4_m %355
572*c8dee2aaSAndroid Build Coastguard Worker               OpSelectionMerge %357 None
573*c8dee2aaSAndroid Build Coastguard Worker               OpBranchConditional %350 %356 %357
574*c8dee2aaSAndroid Build Coastguard Worker        %356 = OpLabel
575*c8dee2aaSAndroid Build Coastguard Worker        %358 = OpFOrdEqual %v3bool %353 %114
576*c8dee2aaSAndroid Build Coastguard Worker        %359 = OpAll %bool %358
577*c8dee2aaSAndroid Build Coastguard Worker        %360 = OpFOrdEqual %v3bool %354 %115
578*c8dee2aaSAndroid Build Coastguard Worker        %361 = OpAll %bool %360
579*c8dee2aaSAndroid Build Coastguard Worker        %362 = OpLogicalAnd %bool %359 %361
580*c8dee2aaSAndroid Build Coastguard Worker               OpBranch %357
581*c8dee2aaSAndroid Build Coastguard Worker        %357 = OpLabel
582*c8dee2aaSAndroid Build Coastguard Worker        %363 = OpPhi %bool %false %341 %362 %356
583*c8dee2aaSAndroid Build Coastguard Worker               OpStore %_0_ok %363
584*c8dee2aaSAndroid Build Coastguard Worker               OpStore %_4_m %104
585*c8dee2aaSAndroid Build Coastguard Worker        %364 = OpFSub %v3float %103 %106
586*c8dee2aaSAndroid Build Coastguard Worker        %365 = OpFSub %v3float %103 %107
587*c8dee2aaSAndroid Build Coastguard Worker        %366 = OpCompositeConstruct %mat2v3float %364 %365
588*c8dee2aaSAndroid Build Coastguard Worker               OpStore %_4_m %366
589*c8dee2aaSAndroid Build Coastguard Worker               OpSelectionMerge %368 None
590*c8dee2aaSAndroid Build Coastguard Worker               OpBranchConditional %363 %367 %368
591*c8dee2aaSAndroid Build Coastguard Worker        %367 = OpLabel
592*c8dee2aaSAndroid Build Coastguard Worker        %369 = OpFOrdEqual %v3bool %364 %129
593*c8dee2aaSAndroid Build Coastguard Worker        %370 = OpAll %bool %369
594*c8dee2aaSAndroid Build Coastguard Worker        %371 = OpFOrdEqual %v3bool %365 %130
595*c8dee2aaSAndroid Build Coastguard Worker        %372 = OpAll %bool %371
596*c8dee2aaSAndroid Build Coastguard Worker        %373 = OpLogicalAnd %bool %370 %372
597*c8dee2aaSAndroid Build Coastguard Worker               OpBranch %368
598*c8dee2aaSAndroid Build Coastguard Worker        %368 = OpLabel
599*c8dee2aaSAndroid Build Coastguard Worker        %374 = OpPhi %bool %false %357 %373 %367
600*c8dee2aaSAndroid Build Coastguard Worker               OpStore %_0_ok %374
601*c8dee2aaSAndroid Build Coastguard Worker               OpStore %_4_m %104
602*c8dee2aaSAndroid Build Coastguard Worker        %375 = OpFDiv %v3float %103 %138
603*c8dee2aaSAndroid Build Coastguard Worker        %376 = OpFDiv %v3float %103 %138
604*c8dee2aaSAndroid Build Coastguard Worker        %377 = OpCompositeConstruct %mat2v3float %375 %376
605*c8dee2aaSAndroid Build Coastguard Worker               OpStore %_4_m %377
606*c8dee2aaSAndroid Build Coastguard Worker               OpSelectionMerge %379 None
607*c8dee2aaSAndroid Build Coastguard Worker               OpBranchConditional %374 %378 %379
608*c8dee2aaSAndroid Build Coastguard Worker        %378 = OpLabel
609*c8dee2aaSAndroid Build Coastguard Worker        %380 = OpFOrdEqual %v3bool %375 %138
610*c8dee2aaSAndroid Build Coastguard Worker        %381 = OpAll %bool %380
611*c8dee2aaSAndroid Build Coastguard Worker        %382 = OpFOrdEqual %v3bool %376 %138
612*c8dee2aaSAndroid Build Coastguard Worker        %383 = OpAll %bool %382
613*c8dee2aaSAndroid Build Coastguard Worker        %384 = OpLogicalAnd %bool %381 %383
614*c8dee2aaSAndroid Build Coastguard Worker               OpBranch %379
615*c8dee2aaSAndroid Build Coastguard Worker        %379 = OpLabel
616*c8dee2aaSAndroid Build Coastguard Worker        %385 = OpPhi %bool %false %368 %384 %378
617*c8dee2aaSAndroid Build Coastguard Worker               OpStore %_0_ok %385
618*c8dee2aaSAndroid Build Coastguard Worker               OpStore %_5_m %167
619*c8dee2aaSAndroid Build Coastguard Worker        %387 = OpFAdd %v3float %163 %172
620*c8dee2aaSAndroid Build Coastguard Worker        %388 = OpFAdd %v3float %164 %173
621*c8dee2aaSAndroid Build Coastguard Worker        %389 = OpFAdd %v3float %165 %174
622*c8dee2aaSAndroid Build Coastguard Worker        %390 = OpFAdd %v3float %166 %175
623*c8dee2aaSAndroid Build Coastguard Worker        %391 = OpCompositeConstruct %mat4v3float %387 %388 %389 %390
624*c8dee2aaSAndroid Build Coastguard Worker               OpStore %_5_m %391
625*c8dee2aaSAndroid Build Coastguard Worker               OpSelectionMerge %393 None
626*c8dee2aaSAndroid Build Coastguard Worker               OpBranchConditional %385 %392 %393
627*c8dee2aaSAndroid Build Coastguard Worker        %392 = OpLabel
628*c8dee2aaSAndroid Build Coastguard Worker        %394 = OpFOrdEqual %v3bool %387 %185
629*c8dee2aaSAndroid Build Coastguard Worker        %395 = OpAll %bool %394
630*c8dee2aaSAndroid Build Coastguard Worker        %396 = OpFOrdEqual %v3bool %388 %185
631*c8dee2aaSAndroid Build Coastguard Worker        %397 = OpAll %bool %396
632*c8dee2aaSAndroid Build Coastguard Worker        %398 = OpLogicalAnd %bool %395 %397
633*c8dee2aaSAndroid Build Coastguard Worker        %399 = OpFOrdEqual %v3bool %389 %185
634*c8dee2aaSAndroid Build Coastguard Worker        %400 = OpAll %bool %399
635*c8dee2aaSAndroid Build Coastguard Worker        %401 = OpLogicalAnd %bool %398 %400
636*c8dee2aaSAndroid Build Coastguard Worker        %402 = OpFOrdEqual %v3bool %390 %185
637*c8dee2aaSAndroid Build Coastguard Worker        %403 = OpAll %bool %402
638*c8dee2aaSAndroid Build Coastguard Worker        %404 = OpLogicalAnd %bool %401 %403
639*c8dee2aaSAndroid Build Coastguard Worker               OpBranch %393
640*c8dee2aaSAndroid Build Coastguard Worker        %393 = OpLabel
641*c8dee2aaSAndroid Build Coastguard Worker        %405 = OpPhi %bool %false %379 %404 %392
642*c8dee2aaSAndroid Build Coastguard Worker               OpStore %_0_ok %405
643*c8dee2aaSAndroid Build Coastguard Worker               OpStore %_6_m %213
644*c8dee2aaSAndroid Build Coastguard Worker        %407 = OpFSub %v2float %209 %214
645*c8dee2aaSAndroid Build Coastguard Worker        %408 = OpFSub %v2float %210 %215
646*c8dee2aaSAndroid Build Coastguard Worker        %409 = OpFSub %v2float %211 %216
647*c8dee2aaSAndroid Build Coastguard Worker        %410 = OpFSub %v2float %212 %217
648*c8dee2aaSAndroid Build Coastguard Worker        %411 = OpCompositeConstruct %mat4v2float %407 %408 %409 %410
649*c8dee2aaSAndroid Build Coastguard Worker               OpStore %_6_m %411
650*c8dee2aaSAndroid Build Coastguard Worker               OpSelectionMerge %413 None
651*c8dee2aaSAndroid Build Coastguard Worker               OpBranchConditional %405 %412 %413
652*c8dee2aaSAndroid Build Coastguard Worker        %412 = OpLabel
653*c8dee2aaSAndroid Build Coastguard Worker        %414 = OpFOrdEqual %v2bool %407 %233
654*c8dee2aaSAndroid Build Coastguard Worker        %415 = OpAll %bool %414
655*c8dee2aaSAndroid Build Coastguard Worker        %416 = OpFOrdEqual %v2bool %408 %234
656*c8dee2aaSAndroid Build Coastguard Worker        %417 = OpAll %bool %416
657*c8dee2aaSAndroid Build Coastguard Worker        %418 = OpLogicalAnd %bool %415 %417
658*c8dee2aaSAndroid Build Coastguard Worker        %419 = OpFOrdEqual %v2bool %409 %235
659*c8dee2aaSAndroid Build Coastguard Worker        %420 = OpAll %bool %419
660*c8dee2aaSAndroid Build Coastguard Worker        %421 = OpLogicalAnd %bool %418 %420
661*c8dee2aaSAndroid Build Coastguard Worker        %422 = OpFOrdEqual %v2bool %410 %236
662*c8dee2aaSAndroid Build Coastguard Worker        %423 = OpAll %bool %422
663*c8dee2aaSAndroid Build Coastguard Worker        %424 = OpLogicalAnd %bool %421 %423
664*c8dee2aaSAndroid Build Coastguard Worker               OpBranch %413
665*c8dee2aaSAndroid Build Coastguard Worker        %413 = OpLabel
666*c8dee2aaSAndroid Build Coastguard Worker        %425 = OpPhi %bool %false %393 %424 %412
667*c8dee2aaSAndroid Build Coastguard Worker               OpStore %_0_ok %425
668*c8dee2aaSAndroid Build Coastguard Worker               OpStore %_7_m %254
669*c8dee2aaSAndroid Build Coastguard Worker        %427 = OpFDiv %v4float %253 %255
670*c8dee2aaSAndroid Build Coastguard Worker        %428 = OpFDiv %v4float %253 %256
671*c8dee2aaSAndroid Build Coastguard Worker        %429 = OpCompositeConstruct %mat2v4float %427 %428
672*c8dee2aaSAndroid Build Coastguard Worker               OpStore %_7_m %429
673*c8dee2aaSAndroid Build Coastguard Worker               OpSelectionMerge %431 None
674*c8dee2aaSAndroid Build Coastguard Worker               OpBranchConditional %425 %430 %431
675*c8dee2aaSAndroid Build Coastguard Worker        %430 = OpLabel
676*c8dee2aaSAndroid Build Coastguard Worker        %432 = OpFOrdEqual %v4bool %427 %263
677*c8dee2aaSAndroid Build Coastguard Worker        %433 = OpAll %bool %432
678*c8dee2aaSAndroid Build Coastguard Worker        %434 = OpFOrdEqual %v4bool %428 %264
679*c8dee2aaSAndroid Build Coastguard Worker        %435 = OpAll %bool %434
680*c8dee2aaSAndroid Build Coastguard Worker        %436 = OpLogicalAnd %bool %433 %435
681*c8dee2aaSAndroid Build Coastguard Worker               OpBranch %431
682*c8dee2aaSAndroid Build Coastguard Worker        %431 = OpLabel
683*c8dee2aaSAndroid Build Coastguard Worker        %437 = OpPhi %bool %false %413 %436 %430
684*c8dee2aaSAndroid Build Coastguard Worker               OpStore %_0_ok %437
685*c8dee2aaSAndroid Build Coastguard Worker               OpStore %_8_m %276
686*c8dee2aaSAndroid Build Coastguard Worker        %439 = OpMatrixTimesMatrix %mat2v3float %276 %280
687*c8dee2aaSAndroid Build Coastguard Worker               OpStore %_8_m %439
688*c8dee2aaSAndroid Build Coastguard Worker               OpSelectionMerge %441 None
689*c8dee2aaSAndroid Build Coastguard Worker               OpBranchConditional %437 %440 %441
690*c8dee2aaSAndroid Build Coastguard Worker        %440 = OpLabel
691*c8dee2aaSAndroid Build Coastguard Worker        %442 = OpCompositeExtract %v3float %439 0
692*c8dee2aaSAndroid Build Coastguard Worker        %443 = OpFOrdEqual %v3bool %442 %289
693*c8dee2aaSAndroid Build Coastguard Worker        %444 = OpAll %bool %443
694*c8dee2aaSAndroid Build Coastguard Worker        %445 = OpCompositeExtract %v3float %439 1
695*c8dee2aaSAndroid Build Coastguard Worker        %446 = OpFOrdEqual %v3bool %445 %290
696*c8dee2aaSAndroid Build Coastguard Worker        %447 = OpAll %bool %446
697*c8dee2aaSAndroid Build Coastguard Worker        %448 = OpLogicalAnd %bool %444 %447
698*c8dee2aaSAndroid Build Coastguard Worker               OpBranch %441
699*c8dee2aaSAndroid Build Coastguard Worker        %441 = OpLabel
700*c8dee2aaSAndroid Build Coastguard Worker        %449 = OpPhi %bool %false %431 %448 %440
701*c8dee2aaSAndroid Build Coastguard Worker               OpStore %_0_ok %449
702*c8dee2aaSAndroid Build Coastguard Worker               OpSelectionMerge %451 None
703*c8dee2aaSAndroid Build Coastguard Worker               OpBranchConditional %449 %450 %451
704*c8dee2aaSAndroid Build Coastguard Worker        %450 = OpLabel
705*c8dee2aaSAndroid Build Coastguard Worker        %452 = OpFunctionCall %bool %test_matrix_op_matrix_half_b
706*c8dee2aaSAndroid Build Coastguard Worker               OpBranch %451
707*c8dee2aaSAndroid Build Coastguard Worker        %451 = OpLabel
708*c8dee2aaSAndroid Build Coastguard Worker        %453 = OpPhi %bool %false %441 %452 %450
709*c8dee2aaSAndroid Build Coastguard Worker               OpSelectionMerge %458 None
710*c8dee2aaSAndroid Build Coastguard Worker               OpBranchConditional %453 %456 %457
711*c8dee2aaSAndroid Build Coastguard Worker        %456 = OpLabel
712*c8dee2aaSAndroid Build Coastguard Worker        %459 = OpAccessChain %_ptr_Uniform_v4float %8 %int_1
713*c8dee2aaSAndroid Build Coastguard Worker        %463 = OpLoad %v4float %459
714*c8dee2aaSAndroid Build Coastguard Worker               OpStore %454 %463
715*c8dee2aaSAndroid Build Coastguard Worker               OpBranch %458
716*c8dee2aaSAndroid Build Coastguard Worker        %457 = OpLabel
717*c8dee2aaSAndroid Build Coastguard Worker        %464 = OpAccessChain %_ptr_Uniform_v4float %8 %int_0
718*c8dee2aaSAndroid Build Coastguard Worker        %466 = OpLoad %v4float %464
719*c8dee2aaSAndroid Build Coastguard Worker               OpStore %454 %466
720*c8dee2aaSAndroid Build Coastguard Worker               OpBranch %458
721*c8dee2aaSAndroid Build Coastguard Worker        %458 = OpLabel
722*c8dee2aaSAndroid Build Coastguard Worker        %467 = OpLoad %v4float %454
723*c8dee2aaSAndroid Build Coastguard Worker               OpReturnValue %467
724*c8dee2aaSAndroid Build Coastguard Worker               OpFunctionEnd
725