Line data Source code
1 : #include "src/builtins/builtins-utils-gen.h"
2 : #include "src/builtins/builtins.h"
3 : #include "src/code-factory.h"
4 : #include "src/elements-kind.h"
5 : #include "src/heap/factory-inl.h"
6 : #include "src/objects.h"
7 : #include "src/objects/arguments.h"
8 : #include "src/objects/bigint.h"
9 : #include "src/objects/free-space.h"
10 : #include "src/objects/js-generator.h"
11 : #include "src/objects/js-promise.h"
12 : #include "src/objects/js-regexp-string-iterator.h"
13 : #include "src/objects/module.h"
14 : #include "src/objects/stack-frame-info.h"
15 : #include "src/builtins/builtins-regexp-gen.h"
16 : #include "src/builtins/builtins-array-gen.h"
17 : #include "src/builtins/builtins-collections-gen.h"
18 : #include "src/builtins/builtins-data-view-gen.h"
19 : #include "src/builtins/builtins-iterator-gen.h"
20 : #include "src/builtins/builtins-proxy-gen.h"
21 : #include "src/builtins/builtins-proxy-gen.h"
22 : #include "src/builtins/builtins-proxy-gen.h"
23 : #include "src/builtins/builtins-proxy-gen.h"
24 : #include "src/builtins/builtins-regexp-gen.h"
25 : #include "src/builtins/builtins-regexp-gen.h"
26 : #include "src/builtins/builtins-regexp-gen.h"
27 : #include "src/builtins/builtins-typed-array-gen.h"
28 : #include "src/builtins/builtins-constructor-gen.h"
29 : #include "src/builtins/builtins-typed-array-gen.h"
30 : #include "src/builtins/builtins-typed-array-gen.h"
31 : #include "src/builtins/builtins-typed-array-gen.h"
32 : #include "src/builtins/builtins-typed-array-gen.h"
33 : #include "src/builtins/builtins-typed-array-gen.h"
34 : #include "src/builtins/builtins-typed-array-gen.h"
35 : #include "src/builtins/builtins-typed-array-gen.h"
36 : #include "src/builtins/builtins-typed-array-gen.h"
37 : #include "torque-generated/builtins-base-from-dsl-gen.h"
38 : #include "torque-generated/builtins-growable-fixed-array-from-dsl-gen.h"
39 : #include "torque-generated/builtins-arguments-from-dsl-gen.h"
40 : #include "torque-generated/builtins-array-from-dsl-gen.h"
41 : #include "torque-generated/builtins-array-copywithin-from-dsl-gen.h"
42 : #include "torque-generated/builtins-array-filter-from-dsl-gen.h"
43 : #include "torque-generated/builtins-array-find-from-dsl-gen.h"
44 : #include "torque-generated/builtins-array-findindex-from-dsl-gen.h"
45 : #include "torque-generated/builtins-array-foreach-from-dsl-gen.h"
46 : #include "torque-generated/builtins-array-join-from-dsl-gen.h"
47 : #include "torque-generated/builtins-array-lastindexof-from-dsl-gen.h"
48 : #include "torque-generated/builtins-array-of-from-dsl-gen.h"
49 : #include "torque-generated/builtins-array-map-from-dsl-gen.h"
50 : #include "torque-generated/builtins-array-reverse-from-dsl-gen.h"
51 : #include "torque-generated/builtins-array-shift-from-dsl-gen.h"
52 : #include "torque-generated/builtins-array-slice-from-dsl-gen.h"
53 : #include "torque-generated/builtins-array-splice-from-dsl-gen.h"
54 : #include "torque-generated/builtins-array-unshift-from-dsl-gen.h"
55 : #include "torque-generated/builtins-collections-from-dsl-gen.h"
56 : #include "torque-generated/builtins-data-view-from-dsl-gen.h"
57 : #include "torque-generated/builtins-extras-utils-from-dsl-gen.h"
58 : #include "torque-generated/builtins-iterator-from-dsl-gen.h"
59 : #include "torque-generated/builtins-object-from-dsl-gen.h"
60 : #include "torque-generated/builtins-proxy-from-dsl-gen.h"
61 : #include "torque-generated/builtins-regexp-from-dsl-gen.h"
62 : #include "torque-generated/builtins-regexp-replace-from-dsl-gen.h"
63 : #include "torque-generated/builtins-string-from-dsl-gen.h"
64 : #include "torque-generated/builtins-string-html-from-dsl-gen.h"
65 : #include "torque-generated/builtins-string-repeat-from-dsl-gen.h"
66 : #include "torque-generated/builtins-typed-array-from-dsl-gen.h"
67 : #include "torque-generated/builtins-typed-array-createtypedarray-from-dsl-gen.h"
68 : #include "torque-generated/builtins-typed-array-every-from-dsl-gen.h"
69 : #include "torque-generated/builtins-typed-array-filter-from-dsl-gen.h"
70 : #include "torque-generated/builtins-typed-array-find-from-dsl-gen.h"
71 : #include "torque-generated/builtins-typed-array-findindex-from-dsl-gen.h"
72 : #include "torque-generated/builtins-typed-array-foreach-from-dsl-gen.h"
73 : #include "torque-generated/builtins-typed-array-reduce-from-dsl-gen.h"
74 : #include "torque-generated/builtins-typed-array-reduceright-from-dsl-gen.h"
75 : #include "torque-generated/builtins-typed-array-slice-from-dsl-gen.h"
76 : #include "torque-generated/builtins-typed-array-some-from-dsl-gen.h"
77 : #include "torque-generated/builtins-typed-array-subarray-from-dsl-gen.h"
78 : #include "torque-generated/builtins-test-from-dsl-gen.h"
79 :
80 : namespace v8 {
81 : namespace internal {
82 :
83 224 : TF_BUILTIN(ArrayFindIndexLoopEagerDeoptContinuation, CodeStubAssembler) {
84 56 : compiler::CodeAssemblerState* state_ = state(); compiler::CodeAssembler ca_(state());
85 : TNode<Context> parameter0 = UncheckedCast<Context>(Parameter(Descriptor::kContext));
86 : USE(parameter0);
87 : compiler::TNode<Object> parameter1 = UncheckedCast<Object>(Parameter(Descriptor::kReceiver));
88 : USE(parameter1);
89 : compiler::TNode<Object> parameter2 = UncheckedCast<Object>(Parameter(Descriptor::kCallback));
90 : USE(parameter2);
91 : compiler::TNode<Object> parameter3 = UncheckedCast<Object>(Parameter(Descriptor::kThisArg));
92 : USE(parameter3);
93 : compiler::TNode<Object> parameter4 = UncheckedCast<Object>(Parameter(Descriptor::kInitialK));
94 : USE(parameter4);
95 : compiler::TNode<Object> parameter5 = UncheckedCast<Object>(Parameter(Descriptor::kLength));
96 : USE(parameter5);
97 : compiler::CodeAssemblerParameterizedLabel<Context, Object, Object, Object, Object, Object> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
98 : compiler::CodeAssemblerParameterizedLabel<Context, Object, Object, Object, Object, Object, Object> block4(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
99 : compiler::CodeAssemblerParameterizedLabel<Context, Object, Object, Object, Object, Object, Object, JSReceiver> block3(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
100 : compiler::CodeAssemblerParameterizedLabel<Context, Object, Object, Object, Object, Object> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
101 : compiler::CodeAssemblerParameterizedLabel<Context, Object, Object, Object, Object, Object, JSReceiver> block1(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
102 : compiler::CodeAssemblerParameterizedLabel<Context, Object, Object, Object, Object, Object, JSReceiver, Object> block8(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
103 : compiler::CodeAssemblerParameterizedLabel<Context, Object, Object, Object, Object, Object, JSReceiver, Object, JSReceiver> block7(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
104 : compiler::CodeAssemblerParameterizedLabel<Context, Object, Object, Object, Object, Object, JSReceiver> block6(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
105 : compiler::CodeAssemblerParameterizedLabel<Context, Object, Object, Object, Object, Object, JSReceiver, JSReceiver> block5(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
106 : compiler::CodeAssemblerParameterizedLabel<Context, Object, Object, Object, Object, Object, JSReceiver, JSReceiver, Object> block12(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
107 : compiler::CodeAssemblerParameterizedLabel<Context, Object, Object, Object, Object, Object, JSReceiver, JSReceiver, Object, Number> block11(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
108 : compiler::CodeAssemblerParameterizedLabel<Context, Object, Object, Object, Object, Object, JSReceiver, JSReceiver> block10(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
109 : compiler::CodeAssemblerParameterizedLabel<Context, Object, Object, Object, Object, Object, JSReceiver, JSReceiver, Number> block9(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
110 : compiler::CodeAssemblerParameterizedLabel<Context, Object, Object, Object, Object, Object, JSReceiver, JSReceiver, Number, Object> block16(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
111 : compiler::CodeAssemblerParameterizedLabel<Context, Object, Object, Object, Object, Object, JSReceiver, JSReceiver, Number, Object, Number> block15(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
112 : compiler::CodeAssemblerParameterizedLabel<Context, Object, Object, Object, Object, Object, JSReceiver, JSReceiver, Number> block14(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
113 : compiler::CodeAssemblerParameterizedLabel<Context, Object, Object, Object, Object, Object, JSReceiver, JSReceiver, Number, Number> block13(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
114 : ca_.Goto(&block0, parameter0, parameter1, parameter2, parameter3, parameter4, parameter5);
115 :
116 56 : if (block0.is_used()) {
117 : compiler::TNode<Context> tmp0;
118 : compiler::TNode<Object> tmp1;
119 : compiler::TNode<Object> tmp2;
120 : compiler::TNode<Object> tmp3;
121 : compiler::TNode<Object> tmp4;
122 : compiler::TNode<Object> tmp5;
123 : ca_.Bind(&block0, &tmp0, &tmp1, &tmp2, &tmp3, &tmp4, &tmp5);
124 56 : ca_.SetSourcePosition("../../src/builtins/array-findindex.tq", 17);
125 : compiler::TNode<JSReceiver> tmp6;
126 : USE(tmp6);
127 56 : compiler::CodeAssemblerLabel label0(&ca_);
128 112 : tmp6 = BaseBuiltinsFromDSLAssembler(state_).Cast10JSReceiver(compiler::TNode<Context>{tmp0}, compiler::TNode<Object>{tmp1}, &label0);
129 : ca_.Goto(&block3, tmp0, tmp1, tmp2, tmp3, tmp4, tmp5, tmp1, tmp6);
130 56 : if (label0.is_used()) {
131 56 : ca_.Bind(&label0);
132 : ca_.Goto(&block4, tmp0, tmp1, tmp2, tmp3, tmp4, tmp5, tmp1);
133 : }
134 : }
135 :
136 56 : if (block4.is_used()) {
137 : compiler::TNode<Context> tmp7;
138 : compiler::TNode<Object> tmp8;
139 : compiler::TNode<Object> tmp9;
140 : compiler::TNode<Object> tmp10;
141 : compiler::TNode<Object> tmp11;
142 : compiler::TNode<Object> tmp12;
143 : compiler::TNode<Object> tmp13;
144 : ca_.Bind(&block4, &tmp7, &tmp8, &tmp9, &tmp10, &tmp11, &tmp12, &tmp13);
145 : ca_.Goto(&block2, tmp7, tmp8, tmp9, tmp10, tmp11, tmp12);
146 : }
147 :
148 56 : if (block3.is_used()) {
149 : compiler::TNode<Context> tmp14;
150 : compiler::TNode<Object> tmp15;
151 : compiler::TNode<Object> tmp16;
152 : compiler::TNode<Object> tmp17;
153 : compiler::TNode<Object> tmp18;
154 : compiler::TNode<Object> tmp19;
155 : compiler::TNode<Object> tmp20;
156 : compiler::TNode<JSReceiver> tmp21;
157 : ca_.Bind(&block3, &tmp14, &tmp15, &tmp16, &tmp17, &tmp18, &tmp19, &tmp20, &tmp21);
158 : ca_.Goto(&block1, tmp14, tmp15, tmp16, tmp17, tmp18, tmp19, tmp21);
159 : }
160 :
161 56 : if (block2.is_used()) {
162 : compiler::TNode<Context> tmp22;
163 : compiler::TNode<Object> tmp23;
164 : compiler::TNode<Object> tmp24;
165 : compiler::TNode<Object> tmp25;
166 : compiler::TNode<Object> tmp26;
167 : compiler::TNode<Object> tmp27;
168 : ca_.Bind(&block2, &tmp22, &tmp23, &tmp24, &tmp25, &tmp26, &tmp27);
169 112 : CodeStubAssembler(state_).Unreachable();
170 : }
171 :
172 56 : if (block1.is_used()) {
173 : compiler::TNode<Context> tmp28;
174 : compiler::TNode<Object> tmp29;
175 : compiler::TNode<Object> tmp30;
176 : compiler::TNode<Object> tmp31;
177 : compiler::TNode<Object> tmp32;
178 : compiler::TNode<Object> tmp33;
179 : compiler::TNode<JSReceiver> tmp34;
180 : ca_.Bind(&block1, &tmp28, &tmp29, &tmp30, &tmp31, &tmp32, &tmp33, &tmp34);
181 56 : ca_.SetSourcePosition("../../src/builtins/array-findindex.tq", 18);
182 : compiler::TNode<JSReceiver> tmp35;
183 : USE(tmp35);
184 56 : compiler::CodeAssemblerLabel label0(&ca_);
185 112 : tmp35 = BaseBuiltinsFromDSLAssembler(state_).Cast39UT15JSBoundFunction10JSFunction7JSProxy(compiler::TNode<Context>{tmp28}, compiler::TNode<Object>{tmp30}, &label0);
186 : ca_.Goto(&block7, tmp28, tmp29, tmp30, tmp31, tmp32, tmp33, tmp34, tmp30, tmp35);
187 56 : if (label0.is_used()) {
188 56 : ca_.Bind(&label0);
189 : ca_.Goto(&block8, tmp28, tmp29, tmp30, tmp31, tmp32, tmp33, tmp34, tmp30);
190 : }
191 : }
192 :
193 56 : if (block8.is_used()) {
194 : compiler::TNode<Context> tmp36;
195 : compiler::TNode<Object> tmp37;
196 : compiler::TNode<Object> tmp38;
197 : compiler::TNode<Object> tmp39;
198 : compiler::TNode<Object> tmp40;
199 : compiler::TNode<Object> tmp41;
200 : compiler::TNode<JSReceiver> tmp42;
201 : compiler::TNode<Object> tmp43;
202 : ca_.Bind(&block8, &tmp36, &tmp37, &tmp38, &tmp39, &tmp40, &tmp41, &tmp42, &tmp43);
203 : ca_.Goto(&block6, tmp36, tmp37, tmp38, tmp39, tmp40, tmp41, tmp42);
204 : }
205 :
206 56 : if (block7.is_used()) {
207 : compiler::TNode<Context> tmp44;
208 : compiler::TNode<Object> tmp45;
209 : compiler::TNode<Object> tmp46;
210 : compiler::TNode<Object> tmp47;
211 : compiler::TNode<Object> tmp48;
212 : compiler::TNode<Object> tmp49;
213 : compiler::TNode<JSReceiver> tmp50;
214 : compiler::TNode<Object> tmp51;
215 : compiler::TNode<JSReceiver> tmp52;
216 : ca_.Bind(&block7, &tmp44, &tmp45, &tmp46, &tmp47, &tmp48, &tmp49, &tmp50, &tmp51, &tmp52);
217 : ca_.Goto(&block5, tmp44, tmp45, tmp46, tmp47, tmp48, tmp49, tmp50, tmp52);
218 : }
219 :
220 56 : if (block6.is_used()) {
221 : compiler::TNode<Context> tmp53;
222 : compiler::TNode<Object> tmp54;
223 : compiler::TNode<Object> tmp55;
224 : compiler::TNode<Object> tmp56;
225 : compiler::TNode<Object> tmp57;
226 : compiler::TNode<Object> tmp58;
227 : compiler::TNode<JSReceiver> tmp59;
228 : ca_.Bind(&block6, &tmp53, &tmp54, &tmp55, &tmp56, &tmp57, &tmp58, &tmp59);
229 112 : CodeStubAssembler(state_).Unreachable();
230 : }
231 :
232 56 : if (block5.is_used()) {
233 : compiler::TNode<Context> tmp60;
234 : compiler::TNode<Object> tmp61;
235 : compiler::TNode<Object> tmp62;
236 : compiler::TNode<Object> tmp63;
237 : compiler::TNode<Object> tmp64;
238 : compiler::TNode<Object> tmp65;
239 : compiler::TNode<JSReceiver> tmp66;
240 : compiler::TNode<JSReceiver> tmp67;
241 : ca_.Bind(&block5, &tmp60, &tmp61, &tmp62, &tmp63, &tmp64, &tmp65, &tmp66, &tmp67);
242 56 : ca_.SetSourcePosition("../../src/builtins/array-findindex.tq", 19);
243 : compiler::TNode<Number> tmp68;
244 : USE(tmp68);
245 56 : compiler::CodeAssemblerLabel label0(&ca_);
246 112 : tmp68 = BaseBuiltinsFromDSLAssembler(state_).Cast20UT5ATSmi10HeapNumber(compiler::TNode<Object>{tmp64}, &label0);
247 : ca_.Goto(&block11, tmp60, tmp61, tmp62, tmp63, tmp64, tmp65, tmp66, tmp67, tmp64, tmp68);
248 56 : if (label0.is_used()) {
249 56 : ca_.Bind(&label0);
250 : ca_.Goto(&block12, tmp60, tmp61, tmp62, tmp63, tmp64, tmp65, tmp66, tmp67, tmp64);
251 : }
252 : }
253 :
254 56 : if (block12.is_used()) {
255 : compiler::TNode<Context> tmp69;
256 : compiler::TNode<Object> tmp70;
257 : compiler::TNode<Object> tmp71;
258 : compiler::TNode<Object> tmp72;
259 : compiler::TNode<Object> tmp73;
260 : compiler::TNode<Object> tmp74;
261 : compiler::TNode<JSReceiver> tmp75;
262 : compiler::TNode<JSReceiver> tmp76;
263 : compiler::TNode<Object> tmp77;
264 : ca_.Bind(&block12, &tmp69, &tmp70, &tmp71, &tmp72, &tmp73, &tmp74, &tmp75, &tmp76, &tmp77);
265 : ca_.Goto(&block10, tmp69, tmp70, tmp71, tmp72, tmp73, tmp74, tmp75, tmp76);
266 : }
267 :
268 56 : if (block11.is_used()) {
269 : compiler::TNode<Context> tmp78;
270 : compiler::TNode<Object> tmp79;
271 : compiler::TNode<Object> tmp80;
272 : compiler::TNode<Object> tmp81;
273 : compiler::TNode<Object> tmp82;
274 : compiler::TNode<Object> tmp83;
275 : compiler::TNode<JSReceiver> tmp84;
276 : compiler::TNode<JSReceiver> tmp85;
277 : compiler::TNode<Object> tmp86;
278 : compiler::TNode<Number> tmp87;
279 : ca_.Bind(&block11, &tmp78, &tmp79, &tmp80, &tmp81, &tmp82, &tmp83, &tmp84, &tmp85, &tmp86, &tmp87);
280 : ca_.Goto(&block9, tmp78, tmp79, tmp80, tmp81, tmp82, tmp83, tmp84, tmp85, tmp87);
281 : }
282 :
283 56 : if (block10.is_used()) {
284 : compiler::TNode<Context> tmp88;
285 : compiler::TNode<Object> tmp89;
286 : compiler::TNode<Object> tmp90;
287 : compiler::TNode<Object> tmp91;
288 : compiler::TNode<Object> tmp92;
289 : compiler::TNode<Object> tmp93;
290 : compiler::TNode<JSReceiver> tmp94;
291 : compiler::TNode<JSReceiver> tmp95;
292 : ca_.Bind(&block10, &tmp88, &tmp89, &tmp90, &tmp91, &tmp92, &tmp93, &tmp94, &tmp95);
293 112 : CodeStubAssembler(state_).Unreachable();
294 : }
295 :
296 56 : if (block9.is_used()) {
297 : compiler::TNode<Context> tmp96;
298 : compiler::TNode<Object> tmp97;
299 : compiler::TNode<Object> tmp98;
300 : compiler::TNode<Object> tmp99;
301 : compiler::TNode<Object> tmp100;
302 : compiler::TNode<Object> tmp101;
303 : compiler::TNode<JSReceiver> tmp102;
304 : compiler::TNode<JSReceiver> tmp103;
305 : compiler::TNode<Number> tmp104;
306 : ca_.Bind(&block9, &tmp96, &tmp97, &tmp98, &tmp99, &tmp100, &tmp101, &tmp102, &tmp103, &tmp104);
307 56 : ca_.SetSourcePosition("../../src/builtins/array-findindex.tq", 20);
308 : compiler::TNode<Number> tmp105;
309 : USE(tmp105);
310 56 : compiler::CodeAssemblerLabel label0(&ca_);
311 112 : tmp105 = BaseBuiltinsFromDSLAssembler(state_).Cast20UT5ATSmi10HeapNumber(compiler::TNode<Object>{tmp101}, &label0);
312 : ca_.Goto(&block15, tmp96, tmp97, tmp98, tmp99, tmp100, tmp101, tmp102, tmp103, tmp104, tmp101, tmp105);
313 56 : if (label0.is_used()) {
314 56 : ca_.Bind(&label0);
315 : ca_.Goto(&block16, tmp96, tmp97, tmp98, tmp99, tmp100, tmp101, tmp102, tmp103, tmp104, tmp101);
316 : }
317 : }
318 :
319 56 : if (block16.is_used()) {
320 : compiler::TNode<Context> tmp106;
321 : compiler::TNode<Object> tmp107;
322 : compiler::TNode<Object> tmp108;
323 : compiler::TNode<Object> tmp109;
324 : compiler::TNode<Object> tmp110;
325 : compiler::TNode<Object> tmp111;
326 : compiler::TNode<JSReceiver> tmp112;
327 : compiler::TNode<JSReceiver> tmp113;
328 : compiler::TNode<Number> tmp114;
329 : compiler::TNode<Object> tmp115;
330 : ca_.Bind(&block16, &tmp106, &tmp107, &tmp108, &tmp109, &tmp110, &tmp111, &tmp112, &tmp113, &tmp114, &tmp115);
331 : ca_.Goto(&block14, tmp106, tmp107, tmp108, tmp109, tmp110, tmp111, tmp112, tmp113, tmp114);
332 : }
333 :
334 56 : if (block15.is_used()) {
335 : compiler::TNode<Context> tmp116;
336 : compiler::TNode<Object> tmp117;
337 : compiler::TNode<Object> tmp118;
338 : compiler::TNode<Object> tmp119;
339 : compiler::TNode<Object> tmp120;
340 : compiler::TNode<Object> tmp121;
341 : compiler::TNode<JSReceiver> tmp122;
342 : compiler::TNode<JSReceiver> tmp123;
343 : compiler::TNode<Number> tmp124;
344 : compiler::TNode<Object> tmp125;
345 : compiler::TNode<Number> tmp126;
346 : ca_.Bind(&block15, &tmp116, &tmp117, &tmp118, &tmp119, &tmp120, &tmp121, &tmp122, &tmp123, &tmp124, &tmp125, &tmp126);
347 : ca_.Goto(&block13, tmp116, tmp117, tmp118, tmp119, tmp120, tmp121, tmp122, tmp123, tmp124, tmp126);
348 : }
349 :
350 56 : if (block14.is_used()) {
351 : compiler::TNode<Context> tmp127;
352 : compiler::TNode<Object> tmp128;
353 : compiler::TNode<Object> tmp129;
354 : compiler::TNode<Object> tmp130;
355 : compiler::TNode<Object> tmp131;
356 : compiler::TNode<Object> tmp132;
357 : compiler::TNode<JSReceiver> tmp133;
358 : compiler::TNode<JSReceiver> tmp134;
359 : compiler::TNode<Number> tmp135;
360 : ca_.Bind(&block14, &tmp127, &tmp128, &tmp129, &tmp130, &tmp131, &tmp132, &tmp133, &tmp134, &tmp135);
361 112 : CodeStubAssembler(state_).Unreachable();
362 : }
363 :
364 56 : if (block13.is_used()) {
365 : compiler::TNode<Context> tmp136;
366 : compiler::TNode<Object> tmp137;
367 : compiler::TNode<Object> tmp138;
368 : compiler::TNode<Object> tmp139;
369 : compiler::TNode<Object> tmp140;
370 : compiler::TNode<Object> tmp141;
371 : compiler::TNode<JSReceiver> tmp142;
372 : compiler::TNode<JSReceiver> tmp143;
373 : compiler::TNode<Number> tmp144;
374 : compiler::TNode<Number> tmp145;
375 : ca_.Bind(&block13, &tmp136, &tmp137, &tmp138, &tmp139, &tmp140, &tmp141, &tmp142, &tmp143, &tmp144, &tmp145);
376 56 : ca_.SetSourcePosition("../../src/builtins/array-findindex.tq", 23);
377 56 : ca_.SetSourcePosition("../../src/builtins/array-findindex.tq", 22);
378 : compiler::TNode<Number> tmp146;
379 112 : tmp146 = TORQUE_CAST(CodeStubAssembler(state_).CallBuiltin(Builtins::kArrayFindIndexLoopContinuation, tmp136, tmp142, tmp143, tmp139, tmp142, tmp144, tmp145));
380 : USE(tmp146);
381 112 : CodeStubAssembler(state_).Return(tmp146);
382 : }
383 56 : }
384 :
385 224 : TF_BUILTIN(ArrayFindIndexLoopLazyDeoptContinuation, CodeStubAssembler) {
386 56 : compiler::CodeAssemblerState* state_ = state(); compiler::CodeAssembler ca_(state());
387 : TNode<Context> parameter0 = UncheckedCast<Context>(Parameter(Descriptor::kContext));
388 : USE(parameter0);
389 : compiler::TNode<Object> parameter1 = UncheckedCast<Object>(Parameter(Descriptor::kReceiver));
390 : USE(parameter1);
391 : compiler::TNode<Object> parameter2 = UncheckedCast<Object>(Parameter(Descriptor::kCallback));
392 : USE(parameter2);
393 : compiler::TNode<Object> parameter3 = UncheckedCast<Object>(Parameter(Descriptor::kThisArg));
394 : USE(parameter3);
395 : compiler::TNode<Object> parameter4 = UncheckedCast<Object>(Parameter(Descriptor::kInitialK));
396 : USE(parameter4);
397 : compiler::TNode<Object> parameter5 = UncheckedCast<Object>(Parameter(Descriptor::kLength));
398 : USE(parameter5);
399 : compiler::TNode<Object> parameter6 = UncheckedCast<Object>(Parameter(Descriptor::kResult));
400 : USE(parameter6);
401 : compiler::CodeAssemblerParameterizedLabel<Context, Object, Object, Object, Object, Object, Object> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
402 : ca_.Goto(&block0, parameter0, parameter1, parameter2, parameter3, parameter4, parameter5, parameter6);
403 :
404 56 : if (block0.is_used()) {
405 : compiler::TNode<Context> tmp0;
406 : compiler::TNode<Object> tmp1;
407 : compiler::TNode<Object> tmp2;
408 : compiler::TNode<Object> tmp3;
409 : compiler::TNode<Object> tmp4;
410 : compiler::TNode<Object> tmp5;
411 : compiler::TNode<Object> tmp6;
412 : ca_.Bind(&block0, &tmp0, &tmp1, &tmp2, &tmp3, &tmp4, &tmp5, &tmp6);
413 56 : ca_.SetSourcePosition("../../src/builtins/array-findindex.tq", 33);
414 112 : CodeStubAssembler(state_).Unreachable();
415 : }
416 56 : }
417 :
418 224 : TF_BUILTIN(ArrayFindIndexLoopAfterCallbackLazyDeoptContinuation, CodeStubAssembler) {
419 56 : compiler::CodeAssemblerState* state_ = state(); compiler::CodeAssembler ca_(state());
420 : TNode<Context> parameter0 = UncheckedCast<Context>(Parameter(Descriptor::kContext));
421 : USE(parameter0);
422 : compiler::TNode<Object> parameter1 = UncheckedCast<Object>(Parameter(Descriptor::kReceiver));
423 : USE(parameter1);
424 : compiler::TNode<Object> parameter2 = UncheckedCast<Object>(Parameter(Descriptor::kCallback));
425 : USE(parameter2);
426 : compiler::TNode<Object> parameter3 = UncheckedCast<Object>(Parameter(Descriptor::kThisArg));
427 : USE(parameter3);
428 : compiler::TNode<Object> parameter4 = UncheckedCast<Object>(Parameter(Descriptor::kInitialK));
429 : USE(parameter4);
430 : compiler::TNode<Object> parameter5 = UncheckedCast<Object>(Parameter(Descriptor::kLength));
431 : USE(parameter5);
432 : compiler::TNode<Object> parameter6 = UncheckedCast<Object>(Parameter(Descriptor::kFoundValue));
433 : USE(parameter6);
434 : compiler::TNode<Object> parameter7 = UncheckedCast<Object>(Parameter(Descriptor::kIsFound));
435 : USE(parameter7);
436 : compiler::CodeAssemblerParameterizedLabel<Context, Object, Object, Object, Object, Object, Object, Object> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
437 : compiler::CodeAssemblerParameterizedLabel<Context, Object, Object, Object, Object, Object, Object, Object, Object> block4(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
438 : compiler::CodeAssemblerParameterizedLabel<Context, Object, Object, Object, Object, Object, Object, Object, Object, JSReceiver> block3(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
439 : compiler::CodeAssemblerParameterizedLabel<Context, Object, Object, Object, Object, Object, Object, Object> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
440 : compiler::CodeAssemblerParameterizedLabel<Context, Object, Object, Object, Object, Object, Object, Object, JSReceiver> block1(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
441 : compiler::CodeAssemblerParameterizedLabel<Context, Object, Object, Object, Object, Object, Object, Object, JSReceiver, Object> block8(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
442 : compiler::CodeAssemblerParameterizedLabel<Context, Object, Object, Object, Object, Object, Object, Object, JSReceiver, Object, JSReceiver> block7(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
443 : compiler::CodeAssemblerParameterizedLabel<Context, Object, Object, Object, Object, Object, Object, Object, JSReceiver> block6(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
444 : compiler::CodeAssemblerParameterizedLabel<Context, Object, Object, Object, Object, Object, Object, Object, JSReceiver, JSReceiver> block5(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
445 : compiler::CodeAssemblerParameterizedLabel<Context, Object, Object, Object, Object, Object, Object, Object, JSReceiver, JSReceiver, Object> block12(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
446 : compiler::CodeAssemblerParameterizedLabel<Context, Object, Object, Object, Object, Object, Object, Object, JSReceiver, JSReceiver, Object, Number> block11(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
447 : compiler::CodeAssemblerParameterizedLabel<Context, Object, Object, Object, Object, Object, Object, Object, JSReceiver, JSReceiver> block10(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
448 : compiler::CodeAssemblerParameterizedLabel<Context, Object, Object, Object, Object, Object, Object, Object, JSReceiver, JSReceiver, Number> block9(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
449 : compiler::CodeAssemblerParameterizedLabel<Context, Object, Object, Object, Object, Object, Object, Object, JSReceiver, JSReceiver, Number, Object> block16(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
450 : compiler::CodeAssemblerParameterizedLabel<Context, Object, Object, Object, Object, Object, Object, Object, JSReceiver, JSReceiver, Number, Object, Number> block15(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
451 : compiler::CodeAssemblerParameterizedLabel<Context, Object, Object, Object, Object, Object, Object, Object, JSReceiver, JSReceiver, Number> block14(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
452 : compiler::CodeAssemblerParameterizedLabel<Context, Object, Object, Object, Object, Object, Object, Object, JSReceiver, JSReceiver, Number, Number> block13(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
453 : compiler::CodeAssemblerParameterizedLabel<Context, Object, Object, Object, Object, Object, Object, Object, JSReceiver, JSReceiver, Number, Number> block17(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
454 : compiler::CodeAssemblerParameterizedLabel<Context, Object, Object, Object, Object, Object, Object, Object, JSReceiver, JSReceiver, Number, Number> block18(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
455 : ca_.Goto(&block0, parameter0, parameter1, parameter2, parameter3, parameter4, parameter5, parameter6, parameter7);
456 :
457 56 : if (block0.is_used()) {
458 : compiler::TNode<Context> tmp0;
459 : compiler::TNode<Object> tmp1;
460 : compiler::TNode<Object> tmp2;
461 : compiler::TNode<Object> tmp3;
462 : compiler::TNode<Object> tmp4;
463 : compiler::TNode<Object> tmp5;
464 : compiler::TNode<Object> tmp6;
465 : compiler::TNode<Object> tmp7;
466 : ca_.Bind(&block0, &tmp0, &tmp1, &tmp2, &tmp3, &tmp4, &tmp5, &tmp6, &tmp7);
467 56 : ca_.SetSourcePosition("../../src/builtins/array-findindex.tq", 47);
468 : compiler::TNode<JSReceiver> tmp8;
469 : USE(tmp8);
470 56 : compiler::CodeAssemblerLabel label0(&ca_);
471 112 : tmp8 = BaseBuiltinsFromDSLAssembler(state_).Cast10JSReceiver(compiler::TNode<Context>{tmp0}, compiler::TNode<Object>{tmp1}, &label0);
472 : ca_.Goto(&block3, tmp0, tmp1, tmp2, tmp3, tmp4, tmp5, tmp6, tmp7, tmp1, tmp8);
473 56 : if (label0.is_used()) {
474 56 : ca_.Bind(&label0);
475 : ca_.Goto(&block4, tmp0, tmp1, tmp2, tmp3, tmp4, tmp5, tmp6, tmp7, tmp1);
476 : }
477 : }
478 :
479 56 : if (block4.is_used()) {
480 : compiler::TNode<Context> tmp9;
481 : compiler::TNode<Object> tmp10;
482 : compiler::TNode<Object> tmp11;
483 : compiler::TNode<Object> tmp12;
484 : compiler::TNode<Object> tmp13;
485 : compiler::TNode<Object> tmp14;
486 : compiler::TNode<Object> tmp15;
487 : compiler::TNode<Object> tmp16;
488 : compiler::TNode<Object> tmp17;
489 : ca_.Bind(&block4, &tmp9, &tmp10, &tmp11, &tmp12, &tmp13, &tmp14, &tmp15, &tmp16, &tmp17);
490 : ca_.Goto(&block2, tmp9, tmp10, tmp11, tmp12, tmp13, tmp14, tmp15, tmp16);
491 : }
492 :
493 56 : if (block3.is_used()) {
494 : compiler::TNode<Context> tmp18;
495 : compiler::TNode<Object> tmp19;
496 : compiler::TNode<Object> tmp20;
497 : compiler::TNode<Object> tmp21;
498 : compiler::TNode<Object> tmp22;
499 : compiler::TNode<Object> tmp23;
500 : compiler::TNode<Object> tmp24;
501 : compiler::TNode<Object> tmp25;
502 : compiler::TNode<Object> tmp26;
503 : compiler::TNode<JSReceiver> tmp27;
504 : ca_.Bind(&block3, &tmp18, &tmp19, &tmp20, &tmp21, &tmp22, &tmp23, &tmp24, &tmp25, &tmp26, &tmp27);
505 : ca_.Goto(&block1, tmp18, tmp19, tmp20, tmp21, tmp22, tmp23, tmp24, tmp25, tmp27);
506 : }
507 :
508 56 : if (block2.is_used()) {
509 : compiler::TNode<Context> tmp28;
510 : compiler::TNode<Object> tmp29;
511 : compiler::TNode<Object> tmp30;
512 : compiler::TNode<Object> tmp31;
513 : compiler::TNode<Object> tmp32;
514 : compiler::TNode<Object> tmp33;
515 : compiler::TNode<Object> tmp34;
516 : compiler::TNode<Object> tmp35;
517 : ca_.Bind(&block2, &tmp28, &tmp29, &tmp30, &tmp31, &tmp32, &tmp33, &tmp34, &tmp35);
518 112 : CodeStubAssembler(state_).Unreachable();
519 : }
520 :
521 56 : if (block1.is_used()) {
522 : compiler::TNode<Context> tmp36;
523 : compiler::TNode<Object> tmp37;
524 : compiler::TNode<Object> tmp38;
525 : compiler::TNode<Object> tmp39;
526 : compiler::TNode<Object> tmp40;
527 : compiler::TNode<Object> tmp41;
528 : compiler::TNode<Object> tmp42;
529 : compiler::TNode<Object> tmp43;
530 : compiler::TNode<JSReceiver> tmp44;
531 : ca_.Bind(&block1, &tmp36, &tmp37, &tmp38, &tmp39, &tmp40, &tmp41, &tmp42, &tmp43, &tmp44);
532 56 : ca_.SetSourcePosition("../../src/builtins/array-findindex.tq", 48);
533 : compiler::TNode<JSReceiver> tmp45;
534 : USE(tmp45);
535 56 : compiler::CodeAssemblerLabel label0(&ca_);
536 112 : tmp45 = BaseBuiltinsFromDSLAssembler(state_).Cast39UT15JSBoundFunction10JSFunction7JSProxy(compiler::TNode<Context>{tmp36}, compiler::TNode<Object>{tmp38}, &label0);
537 : ca_.Goto(&block7, tmp36, tmp37, tmp38, tmp39, tmp40, tmp41, tmp42, tmp43, tmp44, tmp38, tmp45);
538 56 : if (label0.is_used()) {
539 56 : ca_.Bind(&label0);
540 : ca_.Goto(&block8, tmp36, tmp37, tmp38, tmp39, tmp40, tmp41, tmp42, tmp43, tmp44, tmp38);
541 : }
542 : }
543 :
544 56 : if (block8.is_used()) {
545 : compiler::TNode<Context> tmp46;
546 : compiler::TNode<Object> tmp47;
547 : compiler::TNode<Object> tmp48;
548 : compiler::TNode<Object> tmp49;
549 : compiler::TNode<Object> tmp50;
550 : compiler::TNode<Object> tmp51;
551 : compiler::TNode<Object> tmp52;
552 : compiler::TNode<Object> tmp53;
553 : compiler::TNode<JSReceiver> tmp54;
554 : compiler::TNode<Object> tmp55;
555 : ca_.Bind(&block8, &tmp46, &tmp47, &tmp48, &tmp49, &tmp50, &tmp51, &tmp52, &tmp53, &tmp54, &tmp55);
556 : ca_.Goto(&block6, tmp46, tmp47, tmp48, tmp49, tmp50, tmp51, tmp52, tmp53, tmp54);
557 : }
558 :
559 56 : if (block7.is_used()) {
560 : compiler::TNode<Context> tmp56;
561 : compiler::TNode<Object> tmp57;
562 : compiler::TNode<Object> tmp58;
563 : compiler::TNode<Object> tmp59;
564 : compiler::TNode<Object> tmp60;
565 : compiler::TNode<Object> tmp61;
566 : compiler::TNode<Object> tmp62;
567 : compiler::TNode<Object> tmp63;
568 : compiler::TNode<JSReceiver> tmp64;
569 : compiler::TNode<Object> tmp65;
570 : compiler::TNode<JSReceiver> tmp66;
571 : ca_.Bind(&block7, &tmp56, &tmp57, &tmp58, &tmp59, &tmp60, &tmp61, &tmp62, &tmp63, &tmp64, &tmp65, &tmp66);
572 : ca_.Goto(&block5, tmp56, tmp57, tmp58, tmp59, tmp60, tmp61, tmp62, tmp63, tmp64, tmp66);
573 : }
574 :
575 56 : if (block6.is_used()) {
576 : compiler::TNode<Context> tmp67;
577 : compiler::TNode<Object> tmp68;
578 : compiler::TNode<Object> tmp69;
579 : compiler::TNode<Object> tmp70;
580 : compiler::TNode<Object> tmp71;
581 : compiler::TNode<Object> tmp72;
582 : compiler::TNode<Object> tmp73;
583 : compiler::TNode<Object> tmp74;
584 : compiler::TNode<JSReceiver> tmp75;
585 : ca_.Bind(&block6, &tmp67, &tmp68, &tmp69, &tmp70, &tmp71, &tmp72, &tmp73, &tmp74, &tmp75);
586 112 : CodeStubAssembler(state_).Unreachable();
587 : }
588 :
589 56 : if (block5.is_used()) {
590 : compiler::TNode<Context> tmp76;
591 : compiler::TNode<Object> tmp77;
592 : compiler::TNode<Object> tmp78;
593 : compiler::TNode<Object> tmp79;
594 : compiler::TNode<Object> tmp80;
595 : compiler::TNode<Object> tmp81;
596 : compiler::TNode<Object> tmp82;
597 : compiler::TNode<Object> tmp83;
598 : compiler::TNode<JSReceiver> tmp84;
599 : compiler::TNode<JSReceiver> tmp85;
600 : ca_.Bind(&block5, &tmp76, &tmp77, &tmp78, &tmp79, &tmp80, &tmp81, &tmp82, &tmp83, &tmp84, &tmp85);
601 56 : ca_.SetSourcePosition("../../src/builtins/array-findindex.tq", 49);
602 : compiler::TNode<Number> tmp86;
603 : USE(tmp86);
604 56 : compiler::CodeAssemblerLabel label0(&ca_);
605 112 : tmp86 = BaseBuiltinsFromDSLAssembler(state_).Cast20UT5ATSmi10HeapNumber(compiler::TNode<Object>{tmp80}, &label0);
606 : ca_.Goto(&block11, tmp76, tmp77, tmp78, tmp79, tmp80, tmp81, tmp82, tmp83, tmp84, tmp85, tmp80, tmp86);
607 56 : if (label0.is_used()) {
608 56 : ca_.Bind(&label0);
609 : ca_.Goto(&block12, tmp76, tmp77, tmp78, tmp79, tmp80, tmp81, tmp82, tmp83, tmp84, tmp85, tmp80);
610 : }
611 : }
612 :
613 56 : if (block12.is_used()) {
614 : compiler::TNode<Context> tmp87;
615 : compiler::TNode<Object> tmp88;
616 : compiler::TNode<Object> tmp89;
617 : compiler::TNode<Object> tmp90;
618 : compiler::TNode<Object> tmp91;
619 : compiler::TNode<Object> tmp92;
620 : compiler::TNode<Object> tmp93;
621 : compiler::TNode<Object> tmp94;
622 : compiler::TNode<JSReceiver> tmp95;
623 : compiler::TNode<JSReceiver> tmp96;
624 : compiler::TNode<Object> tmp97;
625 : ca_.Bind(&block12, &tmp87, &tmp88, &tmp89, &tmp90, &tmp91, &tmp92, &tmp93, &tmp94, &tmp95, &tmp96, &tmp97);
626 : ca_.Goto(&block10, tmp87, tmp88, tmp89, tmp90, tmp91, tmp92, tmp93, tmp94, tmp95, tmp96);
627 : }
628 :
629 56 : if (block11.is_used()) {
630 : compiler::TNode<Context> tmp98;
631 : compiler::TNode<Object> tmp99;
632 : compiler::TNode<Object> tmp100;
633 : compiler::TNode<Object> tmp101;
634 : compiler::TNode<Object> tmp102;
635 : compiler::TNode<Object> tmp103;
636 : compiler::TNode<Object> tmp104;
637 : compiler::TNode<Object> tmp105;
638 : compiler::TNode<JSReceiver> tmp106;
639 : compiler::TNode<JSReceiver> tmp107;
640 : compiler::TNode<Object> tmp108;
641 : compiler::TNode<Number> tmp109;
642 : ca_.Bind(&block11, &tmp98, &tmp99, &tmp100, &tmp101, &tmp102, &tmp103, &tmp104, &tmp105, &tmp106, &tmp107, &tmp108, &tmp109);
643 : ca_.Goto(&block9, tmp98, tmp99, tmp100, tmp101, tmp102, tmp103, tmp104, tmp105, tmp106, tmp107, tmp109);
644 : }
645 :
646 56 : if (block10.is_used()) {
647 : compiler::TNode<Context> tmp110;
648 : compiler::TNode<Object> tmp111;
649 : compiler::TNode<Object> tmp112;
650 : compiler::TNode<Object> tmp113;
651 : compiler::TNode<Object> tmp114;
652 : compiler::TNode<Object> tmp115;
653 : compiler::TNode<Object> tmp116;
654 : compiler::TNode<Object> tmp117;
655 : compiler::TNode<JSReceiver> tmp118;
656 : compiler::TNode<JSReceiver> tmp119;
657 : ca_.Bind(&block10, &tmp110, &tmp111, &tmp112, &tmp113, &tmp114, &tmp115, &tmp116, &tmp117, &tmp118, &tmp119);
658 112 : CodeStubAssembler(state_).Unreachable();
659 : }
660 :
661 56 : if (block9.is_used()) {
662 : compiler::TNode<Context> tmp120;
663 : compiler::TNode<Object> tmp121;
664 : compiler::TNode<Object> tmp122;
665 : compiler::TNode<Object> tmp123;
666 : compiler::TNode<Object> tmp124;
667 : compiler::TNode<Object> tmp125;
668 : compiler::TNode<Object> tmp126;
669 : compiler::TNode<Object> tmp127;
670 : compiler::TNode<JSReceiver> tmp128;
671 : compiler::TNode<JSReceiver> tmp129;
672 : compiler::TNode<Number> tmp130;
673 : ca_.Bind(&block9, &tmp120, &tmp121, &tmp122, &tmp123, &tmp124, &tmp125, &tmp126, &tmp127, &tmp128, &tmp129, &tmp130);
674 56 : ca_.SetSourcePosition("../../src/builtins/array-findindex.tq", 50);
675 : compiler::TNode<Number> tmp131;
676 : USE(tmp131);
677 56 : compiler::CodeAssemblerLabel label0(&ca_);
678 112 : tmp131 = BaseBuiltinsFromDSLAssembler(state_).Cast20UT5ATSmi10HeapNumber(compiler::TNode<Object>{tmp125}, &label0);
679 : ca_.Goto(&block15, tmp120, tmp121, tmp122, tmp123, tmp124, tmp125, tmp126, tmp127, tmp128, tmp129, tmp130, tmp125, tmp131);
680 56 : if (label0.is_used()) {
681 56 : ca_.Bind(&label0);
682 : ca_.Goto(&block16, tmp120, tmp121, tmp122, tmp123, tmp124, tmp125, tmp126, tmp127, tmp128, tmp129, tmp130, tmp125);
683 : }
684 : }
685 :
686 56 : if (block16.is_used()) {
687 : compiler::TNode<Context> tmp132;
688 : compiler::TNode<Object> tmp133;
689 : compiler::TNode<Object> tmp134;
690 : compiler::TNode<Object> tmp135;
691 : compiler::TNode<Object> tmp136;
692 : compiler::TNode<Object> tmp137;
693 : compiler::TNode<Object> tmp138;
694 : compiler::TNode<Object> tmp139;
695 : compiler::TNode<JSReceiver> tmp140;
696 : compiler::TNode<JSReceiver> tmp141;
697 : compiler::TNode<Number> tmp142;
698 : compiler::TNode<Object> tmp143;
699 : ca_.Bind(&block16, &tmp132, &tmp133, &tmp134, &tmp135, &tmp136, &tmp137, &tmp138, &tmp139, &tmp140, &tmp141, &tmp142, &tmp143);
700 : ca_.Goto(&block14, tmp132, tmp133, tmp134, tmp135, tmp136, tmp137, tmp138, tmp139, tmp140, tmp141, tmp142);
701 : }
702 :
703 56 : if (block15.is_used()) {
704 : compiler::TNode<Context> tmp144;
705 : compiler::TNode<Object> tmp145;
706 : compiler::TNode<Object> tmp146;
707 : compiler::TNode<Object> tmp147;
708 : compiler::TNode<Object> tmp148;
709 : compiler::TNode<Object> tmp149;
710 : compiler::TNode<Object> tmp150;
711 : compiler::TNode<Object> tmp151;
712 : compiler::TNode<JSReceiver> tmp152;
713 : compiler::TNode<JSReceiver> tmp153;
714 : compiler::TNode<Number> tmp154;
715 : compiler::TNode<Object> tmp155;
716 : compiler::TNode<Number> tmp156;
717 : ca_.Bind(&block15, &tmp144, &tmp145, &tmp146, &tmp147, &tmp148, &tmp149, &tmp150, &tmp151, &tmp152, &tmp153, &tmp154, &tmp155, &tmp156);
718 : ca_.Goto(&block13, tmp144, tmp145, tmp146, tmp147, tmp148, tmp149, tmp150, tmp151, tmp152, tmp153, tmp154, tmp156);
719 : }
720 :
721 56 : if (block14.is_used()) {
722 : compiler::TNode<Context> tmp157;
723 : compiler::TNode<Object> tmp158;
724 : compiler::TNode<Object> tmp159;
725 : compiler::TNode<Object> tmp160;
726 : compiler::TNode<Object> tmp161;
727 : compiler::TNode<Object> tmp162;
728 : compiler::TNode<Object> tmp163;
729 : compiler::TNode<Object> tmp164;
730 : compiler::TNode<JSReceiver> tmp165;
731 : compiler::TNode<JSReceiver> tmp166;
732 : compiler::TNode<Number> tmp167;
733 : ca_.Bind(&block14, &tmp157, &tmp158, &tmp159, &tmp160, &tmp161, &tmp162, &tmp163, &tmp164, &tmp165, &tmp166, &tmp167);
734 112 : CodeStubAssembler(state_).Unreachable();
735 : }
736 :
737 56 : if (block13.is_used()) {
738 : compiler::TNode<Context> tmp168;
739 : compiler::TNode<Object> tmp169;
740 : compiler::TNode<Object> tmp170;
741 : compiler::TNode<Object> tmp171;
742 : compiler::TNode<Object> tmp172;
743 : compiler::TNode<Object> tmp173;
744 : compiler::TNode<Object> tmp174;
745 : compiler::TNode<Object> tmp175;
746 : compiler::TNode<JSReceiver> tmp176;
747 : compiler::TNode<JSReceiver> tmp177;
748 : compiler::TNode<Number> tmp178;
749 : compiler::TNode<Number> tmp179;
750 : ca_.Bind(&block13, &tmp168, &tmp169, &tmp170, &tmp171, &tmp172, &tmp173, &tmp174, &tmp175, &tmp176, &tmp177, &tmp178, &tmp179);
751 56 : ca_.SetSourcePosition("../../src/builtins/array-findindex.tq", 57);
752 : compiler::TNode<BoolT> tmp180;
753 : USE(tmp180);
754 112 : tmp180 = ca_.UncheckedCast<BoolT>(BaseBuiltinsFromDSLAssembler(state_).ToBoolean(compiler::TNode<Object>{tmp175}));
755 56 : ca_.Branch(tmp180, &block17, &block18, tmp168, tmp169, tmp170, tmp171, tmp172, tmp173, tmp174, tmp175, tmp176, tmp177, tmp178, tmp179);
756 : }
757 :
758 56 : if (block17.is_used()) {
759 : compiler::TNode<Context> tmp181;
760 : compiler::TNode<Object> tmp182;
761 : compiler::TNode<Object> tmp183;
762 : compiler::TNode<Object> tmp184;
763 : compiler::TNode<Object> tmp185;
764 : compiler::TNode<Object> tmp186;
765 : compiler::TNode<Object> tmp187;
766 : compiler::TNode<Object> tmp188;
767 : compiler::TNode<JSReceiver> tmp189;
768 : compiler::TNode<JSReceiver> tmp190;
769 : compiler::TNode<Number> tmp191;
770 : compiler::TNode<Number> tmp192;
771 : ca_.Bind(&block17, &tmp181, &tmp182, &tmp183, &tmp184, &tmp185, &tmp186, &tmp187, &tmp188, &tmp189, &tmp190, &tmp191, &tmp192);
772 56 : ca_.SetSourcePosition("../../src/builtins/array-findindex.tq", 58);
773 112 : CodeStubAssembler(state_).Return(tmp187);
774 : }
775 :
776 56 : if (block18.is_used()) {
777 : compiler::TNode<Context> tmp193;
778 : compiler::TNode<Object> tmp194;
779 : compiler::TNode<Object> tmp195;
780 : compiler::TNode<Object> tmp196;
781 : compiler::TNode<Object> tmp197;
782 : compiler::TNode<Object> tmp198;
783 : compiler::TNode<Object> tmp199;
784 : compiler::TNode<Object> tmp200;
785 : compiler::TNode<JSReceiver> tmp201;
786 : compiler::TNode<JSReceiver> tmp202;
787 : compiler::TNode<Number> tmp203;
788 : compiler::TNode<Number> tmp204;
789 : ca_.Bind(&block18, &tmp193, &tmp194, &tmp195, &tmp196, &tmp197, &tmp198, &tmp199, &tmp200, &tmp201, &tmp202, &tmp203, &tmp204);
790 56 : ca_.SetSourcePosition("../../src/builtins/array-findindex.tq", 62);
791 56 : ca_.SetSourcePosition("../../src/builtins/array-findindex.tq", 61);
792 : compiler::TNode<Number> tmp205;
793 112 : tmp205 = TORQUE_CAST(CodeStubAssembler(state_).CallBuiltin(Builtins::kArrayFindIndexLoopContinuation, tmp193, tmp201, tmp202, tmp196, tmp201, tmp203, tmp204));
794 : USE(tmp205);
795 112 : CodeStubAssembler(state_).Return(tmp205);
796 : }
797 56 : }
798 :
799 224 : TF_BUILTIN(ArrayFindIndexLoopContinuation, CodeStubAssembler) {
800 56 : compiler::CodeAssemblerState* state_ = state(); compiler::CodeAssembler ca_(state());
801 : TNode<Context> parameter0 = UncheckedCast<Context>(Parameter(Descriptor::kContext));
802 : USE(parameter0);
803 : compiler::TNode<JSReceiver> parameter1 = UncheckedCast<JSReceiver>(Parameter(Descriptor::kReceiver));
804 : USE(parameter1);
805 : compiler::TNode<JSReceiver> parameter2 = UncheckedCast<JSReceiver>(Parameter(Descriptor::kCallbackfn));
806 : USE(parameter2);
807 : compiler::TNode<Object> parameter3 = UncheckedCast<Object>(Parameter(Descriptor::kThisArg));
808 : USE(parameter3);
809 : compiler::TNode<JSReceiver> parameter4 = UncheckedCast<JSReceiver>(Parameter(Descriptor::kO));
810 : USE(parameter4);
811 : compiler::TNode<Number> parameter5 = UncheckedCast<Number>(Parameter(Descriptor::kInitialK));
812 : USE(parameter5);
813 : compiler::TNode<Number> parameter6 = UncheckedCast<Number>(Parameter(Descriptor::kLength));
814 : USE(parameter6);
815 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, JSReceiver, Object, JSReceiver, Number, Number> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
816 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, JSReceiver, Object, JSReceiver, Number, Number, Number> block3(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
817 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, JSReceiver, Object, JSReceiver, Number, Number, Number, Number, Number> block5(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
818 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, JSReceiver, Object, JSReceiver, Number, Number, Number, Number, Number> block6(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
819 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, JSReceiver, Object, JSReceiver, Number, Number, Number> block1(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
820 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, JSReceiver, Object, JSReceiver, Number, Number, Number, Object, Object> block7(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
821 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, JSReceiver, Object, JSReceiver, Number, Number, Number, Object, Object> block8(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
822 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, JSReceiver, Object, JSReceiver, Number, Number, Number> block4(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
823 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, JSReceiver, Object, JSReceiver, Number, Number, Number> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
824 : ca_.Goto(&block0, parameter0, parameter1, parameter2, parameter3, parameter4, parameter5, parameter6);
825 :
826 56 : if (block0.is_used()) {
827 : compiler::TNode<Context> tmp0;
828 : compiler::TNode<JSReceiver> tmp1;
829 : compiler::TNode<JSReceiver> tmp2;
830 : compiler::TNode<Object> tmp3;
831 : compiler::TNode<JSReceiver> tmp4;
832 : compiler::TNode<Number> tmp5;
833 : compiler::TNode<Number> tmp6;
834 : ca_.Bind(&block0, &tmp0, &tmp1, &tmp2, &tmp3, &tmp4, &tmp5, &tmp6);
835 56 : ca_.SetSourcePosition("../../src/builtins/array-findindex.tq", 71);
836 : ca_.Goto(&block3, tmp0, tmp1, tmp2, tmp3, tmp4, tmp5, tmp6, tmp5);
837 : }
838 :
839 56 : if (block3.is_used()) {
840 : compiler::TNode<Context> tmp7;
841 : compiler::TNode<JSReceiver> tmp8;
842 : compiler::TNode<JSReceiver> tmp9;
843 : compiler::TNode<Object> tmp10;
844 : compiler::TNode<JSReceiver> tmp11;
845 : compiler::TNode<Number> tmp12;
846 : compiler::TNode<Number> tmp13;
847 : compiler::TNode<Number> tmp14;
848 : ca_.Bind(&block3, &tmp7, &tmp8, &tmp9, &tmp10, &tmp11, &tmp12, &tmp13, &tmp14);
849 56 : compiler::CodeAssemblerLabel label0(&ca_);
850 56 : compiler::CodeAssemblerLabel label1(&ca_);
851 112 : CodeStubAssembler(state_).BranchIfNumberLessThan(compiler::TNode<Number>{tmp14}, compiler::TNode<Number>{tmp13}, &label0, &label1);
852 56 : if (label0.is_used()) {
853 56 : ca_.Bind(&label0);
854 : ca_.Goto(&block5, tmp7, tmp8, tmp9, tmp10, tmp11, tmp12, tmp13, tmp14, tmp14, tmp13);
855 : }
856 56 : if (label1.is_used()) {
857 56 : ca_.Bind(&label1);
858 : ca_.Goto(&block6, tmp7, tmp8, tmp9, tmp10, tmp11, tmp12, tmp13, tmp14, tmp14, tmp13);
859 : }
860 : }
861 :
862 56 : if (block5.is_used()) {
863 : compiler::TNode<Context> tmp15;
864 : compiler::TNode<JSReceiver> tmp16;
865 : compiler::TNode<JSReceiver> tmp17;
866 : compiler::TNode<Object> tmp18;
867 : compiler::TNode<JSReceiver> tmp19;
868 : compiler::TNode<Number> tmp20;
869 : compiler::TNode<Number> tmp21;
870 : compiler::TNode<Number> tmp22;
871 : compiler::TNode<Number> tmp23;
872 : compiler::TNode<Number> tmp24;
873 : ca_.Bind(&block5, &tmp15, &tmp16, &tmp17, &tmp18, &tmp19, &tmp20, &tmp21, &tmp22, &tmp23, &tmp24);
874 : ca_.Goto(&block1, tmp15, tmp16, tmp17, tmp18, tmp19, tmp20, tmp21, tmp22);
875 : }
876 :
877 56 : if (block6.is_used()) {
878 : compiler::TNode<Context> tmp25;
879 : compiler::TNode<JSReceiver> tmp26;
880 : compiler::TNode<JSReceiver> tmp27;
881 : compiler::TNode<Object> tmp28;
882 : compiler::TNode<JSReceiver> tmp29;
883 : compiler::TNode<Number> tmp30;
884 : compiler::TNode<Number> tmp31;
885 : compiler::TNode<Number> tmp32;
886 : compiler::TNode<Number> tmp33;
887 : compiler::TNode<Number> tmp34;
888 : ca_.Bind(&block6, &tmp25, &tmp26, &tmp27, &tmp28, &tmp29, &tmp30, &tmp31, &tmp32, &tmp33, &tmp34);
889 : ca_.Goto(&block2, tmp25, tmp26, tmp27, tmp28, tmp29, tmp30, tmp31, tmp32);
890 : }
891 :
892 56 : if (block1.is_used()) {
893 : compiler::TNode<Context> tmp35;
894 : compiler::TNode<JSReceiver> tmp36;
895 : compiler::TNode<JSReceiver> tmp37;
896 : compiler::TNode<Object> tmp38;
897 : compiler::TNode<JSReceiver> tmp39;
898 : compiler::TNode<Number> tmp40;
899 : compiler::TNode<Number> tmp41;
900 : compiler::TNode<Number> tmp42;
901 : ca_.Bind(&block1, &tmp35, &tmp36, &tmp37, &tmp38, &tmp39, &tmp40, &tmp41, &tmp42);
902 56 : ca_.SetSourcePosition("../../src/builtins/array-findindex.tq", 77);
903 : compiler::TNode<Object> tmp43;
904 : USE(tmp43);
905 112 : tmp43 = ca_.UncheckedCast<Object>(CodeStubAssembler(state_).GetProperty(compiler::TNode<Context>{tmp35}, compiler::TNode<Object>{tmp39}, compiler::TNode<Object>{tmp42}));
906 56 : ca_.SetSourcePosition("../../src/builtins/array-findindex.tq", 82);
907 : compiler::TNode<Object> tmp44;
908 : USE(tmp44);
909 168 : tmp44 = ca_.UncheckedCast<Object>(CodeStubAssembler(state_).Call(compiler::TNode<Context>{tmp35}, compiler::TNode<JSReceiver>{tmp37}, compiler::TNode<Object>{tmp38}, compiler::TNode<Object>{tmp43}, compiler::TNode<Object>{tmp42}, compiler::TNode<Object>{tmp39}));
910 56 : ca_.SetSourcePosition("../../src/builtins/array-findindex.tq", 81);
911 56 : ca_.SetSourcePosition("../../src/builtins/array-findindex.tq", 85);
912 : compiler::TNode<BoolT> tmp45;
913 : USE(tmp45);
914 112 : tmp45 = ca_.UncheckedCast<BoolT>(BaseBuiltinsFromDSLAssembler(state_).ToBoolean(compiler::TNode<Object>{tmp44}));
915 56 : ca_.Branch(tmp45, &block7, &block8, tmp35, tmp36, tmp37, tmp38, tmp39, tmp40, tmp41, tmp42, tmp43, tmp44);
916 : }
917 :
918 56 : if (block7.is_used()) {
919 : compiler::TNode<Context> tmp46;
920 : compiler::TNode<JSReceiver> tmp47;
921 : compiler::TNode<JSReceiver> tmp48;
922 : compiler::TNode<Object> tmp49;
923 : compiler::TNode<JSReceiver> tmp50;
924 : compiler::TNode<Number> tmp51;
925 : compiler::TNode<Number> tmp52;
926 : compiler::TNode<Number> tmp53;
927 : compiler::TNode<Object> tmp54;
928 : compiler::TNode<Object> tmp55;
929 : ca_.Bind(&block7, &tmp46, &tmp47, &tmp48, &tmp49, &tmp50, &tmp51, &tmp52, &tmp53, &tmp54, &tmp55);
930 56 : ca_.SetSourcePosition("../../src/builtins/array-findindex.tq", 86);
931 112 : CodeStubAssembler(state_).Return(tmp53);
932 : }
933 :
934 56 : if (block8.is_used()) {
935 : compiler::TNode<Context> tmp56;
936 : compiler::TNode<JSReceiver> tmp57;
937 : compiler::TNode<JSReceiver> tmp58;
938 : compiler::TNode<Object> tmp59;
939 : compiler::TNode<JSReceiver> tmp60;
940 : compiler::TNode<Number> tmp61;
941 : compiler::TNode<Number> tmp62;
942 : compiler::TNode<Number> tmp63;
943 : compiler::TNode<Object> tmp64;
944 : compiler::TNode<Object> tmp65;
945 : ca_.Bind(&block8, &tmp56, &tmp57, &tmp58, &tmp59, &tmp60, &tmp61, &tmp62, &tmp63, &tmp64, &tmp65);
946 56 : ca_.SetSourcePosition("../../src/builtins/array-findindex.tq", 71);
947 : ca_.Goto(&block4, tmp56, tmp57, tmp58, tmp59, tmp60, tmp61, tmp62, tmp63);
948 : }
949 :
950 56 : if (block4.is_used()) {
951 : compiler::TNode<Context> tmp66;
952 : compiler::TNode<JSReceiver> tmp67;
953 : compiler::TNode<JSReceiver> tmp68;
954 : compiler::TNode<Object> tmp69;
955 : compiler::TNode<JSReceiver> tmp70;
956 : compiler::TNode<Number> tmp71;
957 : compiler::TNode<Number> tmp72;
958 : compiler::TNode<Number> tmp73;
959 : ca_.Bind(&block4, &tmp66, &tmp67, &tmp68, &tmp69, &tmp70, &tmp71, &tmp72, &tmp73);
960 : compiler::TNode<Number> tmp74;
961 : USE(tmp74);
962 112 : tmp74 = ca_.UncheckedCast<Number>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr20UT5ATSmi10HeapNumber17ATconstexpr_int31(1));
963 : compiler::TNode<Number> tmp75;
964 : USE(tmp75);
965 168 : tmp75 = ca_.UncheckedCast<Number>(CodeStubAssembler(state_).NumberAdd(compiler::TNode<Number>{tmp73}, compiler::TNode<Number>{tmp74}));
966 : ca_.Goto(&block3, tmp66, tmp67, tmp68, tmp69, tmp70, tmp71, tmp72, tmp75);
967 : }
968 :
969 56 : if (block2.is_used()) {
970 : compiler::TNode<Context> tmp76;
971 : compiler::TNode<JSReceiver> tmp77;
972 : compiler::TNode<JSReceiver> tmp78;
973 : compiler::TNode<Object> tmp79;
974 : compiler::TNode<JSReceiver> tmp80;
975 : compiler::TNode<Number> tmp81;
976 : compiler::TNode<Number> tmp82;
977 : compiler::TNode<Number> tmp83;
978 : ca_.Bind(&block2, &tmp76, &tmp77, &tmp78, &tmp79, &tmp80, &tmp81, &tmp82, &tmp83);
979 56 : ca_.SetSourcePosition("../../src/builtins/array-findindex.tq", 91);
980 : compiler::TNode<Smi> tmp84;
981 : USE(tmp84);
982 112 : tmp84 = ca_.UncheckedCast<Smi>(BaseBuiltinsFromDSLAssembler(state_).Convert5ATSmi17ATconstexpr_int31(-1));
983 112 : CodeStubAssembler(state_).Return(tmp84);
984 : }
985 56 : }
986 :
987 56 : compiler::TNode<Number> ArrayFindindexBuiltinsFromDSLAssembler::FastArrayFindIndex(compiler::TNode<Context> p_context, compiler::TNode<JSReceiver> p_o, compiler::TNode<Number> p_len, compiler::TNode<JSReceiver> p_callbackfn, compiler::TNode<Object> p_thisArg, compiler::CodeAssemblerLabel* label_Bailout, compiler::TypedCodeAssemblerVariable<Smi>* label_Bailout_parameter_0) {
988 56 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, JSReceiver, Object> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
989 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, JSReceiver, Object, Smi, Number> block6(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
990 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, JSReceiver, Object, Smi, Number, Smi> block5(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
991 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, JSReceiver, Object, Smi> block4(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
992 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, JSReceiver, Object, Smi, Smi> block3(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
993 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, JSReceiver, Object, Smi, Smi, JSReceiver> block10(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
994 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, JSReceiver, Object, Smi, Smi, JSReceiver, JSArray> block9(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
995 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, JSReceiver, Object, Smi, Smi> block8(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
996 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, JSReceiver, Object, Smi, Smi, JSArray> block7(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
997 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, JSReceiver, Object, Smi, Smi, JSArray, JSArray, JSArray, Map, BoolT, BoolT, BoolT> block13(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
998 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, JSReceiver, Object, Smi, Smi, JSArray, JSArray, JSArray, Map, BoolT, BoolT, BoolT> block11(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
999 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, JSReceiver, Object, Smi, Smi, JSArray, JSArray, JSArray, Map, BoolT, BoolT, BoolT> block18(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1000 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, JSReceiver, Object, Smi, Smi, JSArray, JSArray, JSArray, Map, BoolT, BoolT, BoolT> block19(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1001 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, JSReceiver, Object, Smi, Smi, JSArray, JSArray, JSArray, Map, BoolT, BoolT, BoolT> block20(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1002 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, JSReceiver, Object, Smi, Smi, JSArray, JSArray, JSArray, Map, BoolT, BoolT, BoolT> block21(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1003 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, JSReceiver, Object, Smi, Smi, JSArray, JSArray, JSArray, Map, BoolT, BoolT, BoolT> block17(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1004 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, JSReceiver, Object, Smi, Smi, JSArray, JSArray, JSArray, Map, BoolT, BoolT, BoolT> block16(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1005 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, JSReceiver, Object, Smi, Smi, JSArray, JSArray, JSArray, Map, BoolT, BoolT, BoolT> block15(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1006 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, JSReceiver, Object, Smi, Smi, JSArray, JSArray, JSArray, Map, BoolT, BoolT, BoolT, Smi, JSArray> block24(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1007 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, JSReceiver, Object, Smi, Smi, JSArray, JSArray, JSArray, Map, BoolT, BoolT, BoolT> block22(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1008 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, JSReceiver, Object, Smi, Smi, JSArray, JSArray, JSArray, Map, BoolT, BoolT, BoolT> block23(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1009 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, JSReceiver, Object, Smi, Smi, JSArray, JSArray, JSArray, Map, BoolT, BoolT, BoolT, Smi, Context, Smi, Smi, Context, Smi> block29(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1010 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, JSReceiver, Object, Smi, Smi, JSArray, JSArray, JSArray, Map, BoolT, BoolT, BoolT, Smi, Context, Smi, Smi, Context, Smi, JSArray, Smi> block33(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1011 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, JSReceiver, Object, Smi, Smi, JSArray, JSArray, JSArray, Map, BoolT, BoolT, BoolT, Smi, Context, Smi, Smi, Context, Smi, JSArray, Smi, Object> block32(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1012 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, JSReceiver, Object, Smi, Smi, JSArray, JSArray, JSArray, Map, BoolT, BoolT, BoolT, Smi, Context, Smi, Smi, Context, Smi> block30(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1013 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, JSReceiver, Object, Smi, Smi, JSArray, JSArray, JSArray, Map, BoolT, BoolT, BoolT, Smi, Context, Smi, Smi, Context, Smi, JSArray, Smi> block35(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1014 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, JSReceiver, Object, Smi, Smi, JSArray, JSArray, JSArray, Map, BoolT, BoolT, BoolT, Smi, Context, Smi, Smi, Context, Smi, JSArray, Smi, Object> block34(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1015 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, JSReceiver, Object, Smi, Smi, JSArray, JSArray, JSArray, Map, BoolT, BoolT, BoolT, Smi, Context, Smi, Smi, Context, Smi, Object> block28(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1016 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, JSReceiver, Object, Smi, Smi, JSArray, JSArray, JSArray, Map, BoolT, BoolT, BoolT, Smi, Context, Smi> block27(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1017 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, JSReceiver, Object, Smi, Smi, JSArray, JSArray, JSArray, Map, BoolT, BoolT, BoolT, Smi, Context, Smi, Object> block25(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1018 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, JSReceiver, Object, Smi, Smi, JSArray, JSArray, JSArray, Map, BoolT, BoolT, BoolT, Object, Context, JSReceiver, Object, Object, Smi, JSArray> block36(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1019 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, JSReceiver, Object, Smi, Smi, JSArray, JSArray, JSArray, Map, BoolT, BoolT, BoolT, Object, Object> block37(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1020 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, JSReceiver, Object, Smi, Smi, JSArray, JSArray, JSArray, Map, BoolT, BoolT, BoolT, Object, Object> block38(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1021 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, JSReceiver, Object, Smi, Smi, JSArray, JSArray, JSArray, Map, BoolT, BoolT, BoolT> block14(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1022 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, JSReceiver, Object, Smi, Smi, JSArray, JSArray, JSArray, Map, BoolT, BoolT, BoolT> block12(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1023 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, JSReceiver, Object, Number> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1024 : compiler::CodeAssemblerParameterizedLabel<Smi> block1(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1025 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, JSReceiver, Object, Number> block39(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1026 : ca_.Goto(&block0, p_context, p_o, p_len, p_callbackfn, p_thisArg);
1027 :
1028 56 : if (block0.is_used()) {
1029 : compiler::TNode<Context> tmp0;
1030 : compiler::TNode<JSReceiver> tmp1;
1031 : compiler::TNode<Number> tmp2;
1032 : compiler::TNode<JSReceiver> tmp3;
1033 : compiler::TNode<Object> tmp4;
1034 : ca_.Bind(&block0, &tmp0, &tmp1, &tmp2, &tmp3, &tmp4);
1035 56 : ca_.SetSourcePosition("../../src/builtins/array-findindex.tq", 97);
1036 : compiler::TNode<Smi> tmp5;
1037 : USE(tmp5);
1038 168 : tmp5 = ca_.UncheckedCast<Smi>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr5ATSmi17ATconstexpr_int31(0));
1039 56 : ca_.SetSourcePosition("../../src/builtins/array-findindex.tq", 98);
1040 : compiler::TNode<Smi> tmp6;
1041 : USE(tmp6);
1042 56 : compiler::CodeAssemblerLabel label0(&ca_);
1043 168 : tmp6 = BaseBuiltinsFromDSLAssembler(state_).Cast5ATSmi(compiler::TNode<Object>{tmp2}, &label0);
1044 : ca_.Goto(&block5, tmp0, tmp1, tmp2, tmp3, tmp4, tmp5, tmp2, tmp6);
1045 56 : if (label0.is_used()) {
1046 56 : ca_.Bind(&label0);
1047 : ca_.Goto(&block6, tmp0, tmp1, tmp2, tmp3, tmp4, tmp5, tmp2);
1048 : }
1049 : }
1050 :
1051 56 : if (block6.is_used()) {
1052 : compiler::TNode<Context> tmp7;
1053 : compiler::TNode<JSReceiver> tmp8;
1054 : compiler::TNode<Number> tmp9;
1055 : compiler::TNode<JSReceiver> tmp10;
1056 : compiler::TNode<Object> tmp11;
1057 : compiler::TNode<Smi> tmp12;
1058 : compiler::TNode<Number> tmp13;
1059 : ca_.Bind(&block6, &tmp7, &tmp8, &tmp9, &tmp10, &tmp11, &tmp12, &tmp13);
1060 : ca_.Goto(&block4, tmp7, tmp8, tmp9, tmp10, tmp11, tmp12);
1061 : }
1062 :
1063 56 : if (block5.is_used()) {
1064 : compiler::TNode<Context> tmp14;
1065 : compiler::TNode<JSReceiver> tmp15;
1066 : compiler::TNode<Number> tmp16;
1067 : compiler::TNode<JSReceiver> tmp17;
1068 : compiler::TNode<Object> tmp18;
1069 : compiler::TNode<Smi> tmp19;
1070 : compiler::TNode<Number> tmp20;
1071 : compiler::TNode<Smi> tmp21;
1072 : ca_.Bind(&block5, &tmp14, &tmp15, &tmp16, &tmp17, &tmp18, &tmp19, &tmp20, &tmp21);
1073 : ca_.Goto(&block3, tmp14, tmp15, tmp16, tmp17, tmp18, tmp19, tmp21);
1074 : }
1075 :
1076 56 : if (block4.is_used()) {
1077 : compiler::TNode<Context> tmp22;
1078 : compiler::TNode<JSReceiver> tmp23;
1079 : compiler::TNode<Number> tmp24;
1080 : compiler::TNode<JSReceiver> tmp25;
1081 : compiler::TNode<Object> tmp26;
1082 : compiler::TNode<Smi> tmp27;
1083 : ca_.Bind(&block4, &tmp22, &tmp23, &tmp24, &tmp25, &tmp26, &tmp27);
1084 : ca_.Goto(&block1, tmp27);
1085 : }
1086 :
1087 56 : if (block3.is_used()) {
1088 : compiler::TNode<Context> tmp28;
1089 : compiler::TNode<JSReceiver> tmp29;
1090 : compiler::TNode<Number> tmp30;
1091 : compiler::TNode<JSReceiver> tmp31;
1092 : compiler::TNode<Object> tmp32;
1093 : compiler::TNode<Smi> tmp33;
1094 : compiler::TNode<Smi> tmp34;
1095 : ca_.Bind(&block3, &tmp28, &tmp29, &tmp30, &tmp31, &tmp32, &tmp33, &tmp34);
1096 56 : ca_.SetSourcePosition("../../src/builtins/array-findindex.tq", 99);
1097 : compiler::TNode<JSArray> tmp35;
1098 : USE(tmp35);
1099 56 : compiler::CodeAssemblerLabel label0(&ca_);
1100 168 : tmp35 = BaseBuiltinsFromDSLAssembler(state_).Cast13ATFastJSArray(compiler::TNode<Context>{tmp28}, compiler::TNode<HeapObject>{tmp29}, &label0);
1101 : ca_.Goto(&block9, tmp28, tmp29, tmp30, tmp31, tmp32, tmp33, tmp34, tmp29, tmp35);
1102 56 : if (label0.is_used()) {
1103 56 : ca_.Bind(&label0);
1104 : ca_.Goto(&block10, tmp28, tmp29, tmp30, tmp31, tmp32, tmp33, tmp34, tmp29);
1105 : }
1106 : }
1107 :
1108 56 : if (block10.is_used()) {
1109 : compiler::TNode<Context> tmp36;
1110 : compiler::TNode<JSReceiver> tmp37;
1111 : compiler::TNode<Number> tmp38;
1112 : compiler::TNode<JSReceiver> tmp39;
1113 : compiler::TNode<Object> tmp40;
1114 : compiler::TNode<Smi> tmp41;
1115 : compiler::TNode<Smi> tmp42;
1116 : compiler::TNode<JSReceiver> tmp43;
1117 : ca_.Bind(&block10, &tmp36, &tmp37, &tmp38, &tmp39, &tmp40, &tmp41, &tmp42, &tmp43);
1118 : ca_.Goto(&block8, tmp36, tmp37, tmp38, tmp39, tmp40, tmp41, tmp42);
1119 : }
1120 :
1121 56 : if (block9.is_used()) {
1122 : compiler::TNode<Context> tmp44;
1123 : compiler::TNode<JSReceiver> tmp45;
1124 : compiler::TNode<Number> tmp46;
1125 : compiler::TNode<JSReceiver> tmp47;
1126 : compiler::TNode<Object> tmp48;
1127 : compiler::TNode<Smi> tmp49;
1128 : compiler::TNode<Smi> tmp50;
1129 : compiler::TNode<JSReceiver> tmp51;
1130 : compiler::TNode<JSArray> tmp52;
1131 : ca_.Bind(&block9, &tmp44, &tmp45, &tmp46, &tmp47, &tmp48, &tmp49, &tmp50, &tmp51, &tmp52);
1132 : ca_.Goto(&block7, tmp44, tmp45, tmp46, tmp47, tmp48, tmp49, tmp50, tmp52);
1133 : }
1134 :
1135 56 : if (block8.is_used()) {
1136 : compiler::TNode<Context> tmp53;
1137 : compiler::TNode<JSReceiver> tmp54;
1138 : compiler::TNode<Number> tmp55;
1139 : compiler::TNode<JSReceiver> tmp56;
1140 : compiler::TNode<Object> tmp57;
1141 : compiler::TNode<Smi> tmp58;
1142 : compiler::TNode<Smi> tmp59;
1143 : ca_.Bind(&block8, &tmp53, &tmp54, &tmp55, &tmp56, &tmp57, &tmp58, &tmp59);
1144 : ca_.Goto(&block1, tmp58);
1145 : }
1146 :
1147 56 : if (block7.is_used()) {
1148 : compiler::TNode<Context> tmp60;
1149 : compiler::TNode<JSReceiver> tmp61;
1150 : compiler::TNode<Number> tmp62;
1151 : compiler::TNode<JSReceiver> tmp63;
1152 : compiler::TNode<Object> tmp64;
1153 : compiler::TNode<Smi> tmp65;
1154 : compiler::TNode<Smi> tmp66;
1155 : compiler::TNode<JSArray> tmp67;
1156 : ca_.Bind(&block7, &tmp60, &tmp61, &tmp62, &tmp63, &tmp64, &tmp65, &tmp66, &tmp67);
1157 56 : ca_.SetSourcePosition("../../src/builtins/array-findindex.tq", 100);
1158 : compiler::TNode<JSArray> tmp68;
1159 : USE(tmp68);
1160 : compiler::TNode<JSArray> tmp69;
1161 : USE(tmp69);
1162 : compiler::TNode<Map> tmp70;
1163 : USE(tmp70);
1164 : compiler::TNode<BoolT> tmp71;
1165 : USE(tmp71);
1166 : compiler::TNode<BoolT> tmp72;
1167 : USE(tmp72);
1168 : compiler::TNode<BoolT> tmp73;
1169 : USE(tmp73);
1170 224 : std::tie(tmp68, tmp69, tmp70, tmp71, tmp72, tmp73) = BaseBuiltinsFromDSLAssembler(state_).NewFastJSArrayWitness(compiler::TNode<JSArray>{tmp67}).Flatten();
1171 56 : ca_.SetSourcePosition("../../src/builtins/array-findindex.tq", 103);
1172 : ca_.Goto(&block13, tmp60, tmp61, tmp62, tmp63, tmp64, tmp65, tmp66, tmp67, tmp68, tmp69, tmp70, tmp71, tmp72, tmp73);
1173 : }
1174 :
1175 56 : if (block13.is_used()) {
1176 : compiler::TNode<Context> tmp74;
1177 : compiler::TNode<JSReceiver> tmp75;
1178 : compiler::TNode<Number> tmp76;
1179 : compiler::TNode<JSReceiver> tmp77;
1180 : compiler::TNode<Object> tmp78;
1181 : compiler::TNode<Smi> tmp79;
1182 : compiler::TNode<Smi> tmp80;
1183 : compiler::TNode<JSArray> tmp81;
1184 : compiler::TNode<JSArray> tmp82;
1185 : compiler::TNode<JSArray> tmp83;
1186 : compiler::TNode<Map> tmp84;
1187 : compiler::TNode<BoolT> tmp85;
1188 : compiler::TNode<BoolT> tmp86;
1189 : compiler::TNode<BoolT> tmp87;
1190 : ca_.Bind(&block13, &tmp74, &tmp75, &tmp76, &tmp77, &tmp78, &tmp79, &tmp80, &tmp81, &tmp82, &tmp83, &tmp84, &tmp85, &tmp86, &tmp87);
1191 : compiler::TNode<BoolT> tmp88;
1192 : USE(tmp88);
1193 112 : tmp88 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).SmiLessThan(compiler::TNode<Smi>{tmp79}, compiler::TNode<Smi>{tmp80}));
1194 56 : ca_.Branch(tmp88, &block11, &block12, tmp74, tmp75, tmp76, tmp77, tmp78, tmp79, tmp80, tmp81, tmp82, tmp83, tmp84, tmp85, tmp86, tmp87);
1195 : }
1196 :
1197 56 : if (block11.is_used()) {
1198 : compiler::TNode<Context> tmp89;
1199 : compiler::TNode<JSReceiver> tmp90;
1200 : compiler::TNode<Number> tmp91;
1201 : compiler::TNode<JSReceiver> tmp92;
1202 : compiler::TNode<Object> tmp93;
1203 : compiler::TNode<Smi> tmp94;
1204 : compiler::TNode<Smi> tmp95;
1205 : compiler::TNode<JSArray> tmp96;
1206 : compiler::TNode<JSArray> tmp97;
1207 : compiler::TNode<JSArray> tmp98;
1208 : compiler::TNode<Map> tmp99;
1209 : compiler::TNode<BoolT> tmp100;
1210 : compiler::TNode<BoolT> tmp101;
1211 : compiler::TNode<BoolT> tmp102;
1212 : ca_.Bind(&block11, &tmp89, &tmp90, &tmp91, &tmp92, &tmp93, &tmp94, &tmp95, &tmp96, &tmp97, &tmp98, &tmp99, &tmp100, &tmp101, &tmp102);
1213 56 : ca_.SetSourcePosition("../../src/builtins/base.tq", 2166);
1214 56 : compiler::TNode<IntPtrT> tmp103 = ca_.IntPtrConstant(HeapObject::kMapOffset);
1215 : USE(tmp103);
1216 112 : compiler::TNode<Map>tmp104 = CodeStubAssembler(state_).LoadReference<Map>(CodeStubAssembler::Reference{tmp97, tmp103});
1217 : compiler::TNode<BoolT> tmp105;
1218 : USE(tmp105);
1219 112 : tmp105 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).WordNotEqual(compiler::TNode<HeapObject>{tmp104}, compiler::TNode<HeapObject>{tmp99}));
1220 56 : ca_.Branch(tmp105, &block18, &block19, tmp89, tmp90, tmp91, tmp92, tmp93, tmp94, tmp95, tmp96, tmp97, tmp98, tmp99, tmp100, tmp101, tmp102);
1221 : }
1222 :
1223 56 : if (block18.is_used()) {
1224 : compiler::TNode<Context> tmp106;
1225 : compiler::TNode<JSReceiver> tmp107;
1226 : compiler::TNode<Number> tmp108;
1227 : compiler::TNode<JSReceiver> tmp109;
1228 : compiler::TNode<Object> tmp110;
1229 : compiler::TNode<Smi> tmp111;
1230 : compiler::TNode<Smi> tmp112;
1231 : compiler::TNode<JSArray> tmp113;
1232 : compiler::TNode<JSArray> tmp114;
1233 : compiler::TNode<JSArray> tmp115;
1234 : compiler::TNode<Map> tmp116;
1235 : compiler::TNode<BoolT> tmp117;
1236 : compiler::TNode<BoolT> tmp118;
1237 : compiler::TNode<BoolT> tmp119;
1238 : ca_.Bind(&block18, &tmp106, &tmp107, &tmp108, &tmp109, &tmp110, &tmp111, &tmp112, &tmp113, &tmp114, &tmp115, &tmp116, &tmp117, &tmp118, &tmp119);
1239 : ca_.Goto(&block16, tmp106, tmp107, tmp108, tmp109, tmp110, tmp111, tmp112, tmp113, tmp114, tmp115, tmp116, tmp117, tmp118, tmp119);
1240 : }
1241 :
1242 56 : if (block19.is_used()) {
1243 : compiler::TNode<Context> tmp120;
1244 : compiler::TNode<JSReceiver> tmp121;
1245 : compiler::TNode<Number> tmp122;
1246 : compiler::TNode<JSReceiver> tmp123;
1247 : compiler::TNode<Object> tmp124;
1248 : compiler::TNode<Smi> tmp125;
1249 : compiler::TNode<Smi> tmp126;
1250 : compiler::TNode<JSArray> tmp127;
1251 : compiler::TNode<JSArray> tmp128;
1252 : compiler::TNode<JSArray> tmp129;
1253 : compiler::TNode<Map> tmp130;
1254 : compiler::TNode<BoolT> tmp131;
1255 : compiler::TNode<BoolT> tmp132;
1256 : compiler::TNode<BoolT> tmp133;
1257 : ca_.Bind(&block19, &tmp120, &tmp121, &tmp122, &tmp123, &tmp124, &tmp125, &tmp126, &tmp127, &tmp128, &tmp129, &tmp130, &tmp131, &tmp132, &tmp133);
1258 56 : ca_.SetSourcePosition("../../src/builtins/base.tq", 2173);
1259 : compiler::TNode<BoolT> tmp134;
1260 : USE(tmp134);
1261 112 : tmp134 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).IsNoElementsProtectorCellInvalid());
1262 56 : ca_.Branch(tmp134, &block20, &block21, tmp120, tmp121, tmp122, tmp123, tmp124, tmp125, tmp126, tmp127, tmp128, tmp129, tmp130, tmp131, tmp132, tmp133);
1263 : }
1264 :
1265 56 : if (block20.is_used()) {
1266 : compiler::TNode<Context> tmp135;
1267 : compiler::TNode<JSReceiver> tmp136;
1268 : compiler::TNode<Number> tmp137;
1269 : compiler::TNode<JSReceiver> tmp138;
1270 : compiler::TNode<Object> tmp139;
1271 : compiler::TNode<Smi> tmp140;
1272 : compiler::TNode<Smi> tmp141;
1273 : compiler::TNode<JSArray> tmp142;
1274 : compiler::TNode<JSArray> tmp143;
1275 : compiler::TNode<JSArray> tmp144;
1276 : compiler::TNode<Map> tmp145;
1277 : compiler::TNode<BoolT> tmp146;
1278 : compiler::TNode<BoolT> tmp147;
1279 : compiler::TNode<BoolT> tmp148;
1280 : ca_.Bind(&block20, &tmp135, &tmp136, &tmp137, &tmp138, &tmp139, &tmp140, &tmp141, &tmp142, &tmp143, &tmp144, &tmp145, &tmp146, &tmp147, &tmp148);
1281 : ca_.Goto(&block16, tmp135, tmp136, tmp137, tmp138, tmp139, tmp140, tmp141, tmp142, tmp143, tmp144, tmp145, tmp146, tmp147, tmp148);
1282 : }
1283 :
1284 56 : if (block21.is_used()) {
1285 : compiler::TNode<Context> tmp149;
1286 : compiler::TNode<JSReceiver> tmp150;
1287 : compiler::TNode<Number> tmp151;
1288 : compiler::TNode<JSReceiver> tmp152;
1289 : compiler::TNode<Object> tmp153;
1290 : compiler::TNode<Smi> tmp154;
1291 : compiler::TNode<Smi> tmp155;
1292 : compiler::TNode<JSArray> tmp156;
1293 : compiler::TNode<JSArray> tmp157;
1294 : compiler::TNode<JSArray> tmp158;
1295 : compiler::TNode<Map> tmp159;
1296 : compiler::TNode<BoolT> tmp160;
1297 : compiler::TNode<BoolT> tmp161;
1298 : compiler::TNode<BoolT> tmp162;
1299 : ca_.Bind(&block21, &tmp149, &tmp150, &tmp151, &tmp152, &tmp153, &tmp154, &tmp155, &tmp156, &tmp157, &tmp158, &tmp159, &tmp160, &tmp161, &tmp162);
1300 56 : ca_.SetSourcePosition("../../src/builtins/base.tq", 2174);
1301 : compiler::TNode<JSArray> tmp163;
1302 : USE(tmp163);
1303 : tmp163 = (compiler::TNode<JSArray>{tmp157});
1304 56 : ca_.SetSourcePosition("../../src/builtins/array-findindex.tq", 104);
1305 : ca_.Goto(&block17, tmp149, tmp150, tmp151, tmp152, tmp153, tmp154, tmp155, tmp156, tmp157, tmp163, tmp159, tmp160, tmp161, tmp162);
1306 : }
1307 :
1308 56 : if (block17.is_used()) {
1309 : compiler::TNode<Context> tmp164;
1310 : compiler::TNode<JSReceiver> tmp165;
1311 : compiler::TNode<Number> tmp166;
1312 : compiler::TNode<JSReceiver> tmp167;
1313 : compiler::TNode<Object> tmp168;
1314 : compiler::TNode<Smi> tmp169;
1315 : compiler::TNode<Smi> tmp170;
1316 : compiler::TNode<JSArray> tmp171;
1317 : compiler::TNode<JSArray> tmp172;
1318 : compiler::TNode<JSArray> tmp173;
1319 : compiler::TNode<Map> tmp174;
1320 : compiler::TNode<BoolT> tmp175;
1321 : compiler::TNode<BoolT> tmp176;
1322 : compiler::TNode<BoolT> tmp177;
1323 : ca_.Bind(&block17, &tmp164, &tmp165, &tmp166, &tmp167, &tmp168, &tmp169, &tmp170, &tmp171, &tmp172, &tmp173, &tmp174, &tmp175, &tmp176, &tmp177);
1324 : ca_.Goto(&block15, tmp164, tmp165, tmp166, tmp167, tmp168, tmp169, tmp170, tmp171, tmp172, tmp173, tmp174, tmp175, tmp176, tmp177);
1325 : }
1326 :
1327 56 : if (block16.is_used()) {
1328 : compiler::TNode<Context> tmp178;
1329 : compiler::TNode<JSReceiver> tmp179;
1330 : compiler::TNode<Number> tmp180;
1331 : compiler::TNode<JSReceiver> tmp181;
1332 : compiler::TNode<Object> tmp182;
1333 : compiler::TNode<Smi> tmp183;
1334 : compiler::TNode<Smi> tmp184;
1335 : compiler::TNode<JSArray> tmp185;
1336 : compiler::TNode<JSArray> tmp186;
1337 : compiler::TNode<JSArray> tmp187;
1338 : compiler::TNode<Map> tmp188;
1339 : compiler::TNode<BoolT> tmp189;
1340 : compiler::TNode<BoolT> tmp190;
1341 : compiler::TNode<BoolT> tmp191;
1342 : ca_.Bind(&block16, &tmp178, &tmp179, &tmp180, &tmp181, &tmp182, &tmp183, &tmp184, &tmp185, &tmp186, &tmp187, &tmp188, &tmp189, &tmp190, &tmp191);
1343 : ca_.Goto(&block1, tmp183);
1344 : }
1345 :
1346 56 : if (block15.is_used()) {
1347 : compiler::TNode<Context> tmp192;
1348 : compiler::TNode<JSReceiver> tmp193;
1349 : compiler::TNode<Number> tmp194;
1350 : compiler::TNode<JSReceiver> tmp195;
1351 : compiler::TNode<Object> tmp196;
1352 : compiler::TNode<Smi> tmp197;
1353 : compiler::TNode<Smi> tmp198;
1354 : compiler::TNode<JSArray> tmp199;
1355 : compiler::TNode<JSArray> tmp200;
1356 : compiler::TNode<JSArray> tmp201;
1357 : compiler::TNode<Map> tmp202;
1358 : compiler::TNode<BoolT> tmp203;
1359 : compiler::TNode<BoolT> tmp204;
1360 : compiler::TNode<BoolT> tmp205;
1361 : ca_.Bind(&block15, &tmp192, &tmp193, &tmp194, &tmp195, &tmp196, &tmp197, &tmp198, &tmp199, &tmp200, &tmp201, &tmp202, &tmp203, &tmp204, &tmp205);
1362 56 : ca_.SetSourcePosition("../../src/builtins/array-findindex.tq", 107);
1363 56 : ca_.SetSourcePosition("../../src/builtins/base.tq", 2162);
1364 : ca_.Goto(&block24, tmp192, tmp193, tmp194, tmp195, tmp196, tmp197, tmp198, tmp199, tmp200, tmp201, tmp202, tmp203, tmp204, tmp205, tmp197, tmp201);
1365 : }
1366 :
1367 56 : if (block24.is_used()) {
1368 : compiler::TNode<Context> tmp206;
1369 : compiler::TNode<JSReceiver> tmp207;
1370 : compiler::TNode<Number> tmp208;
1371 : compiler::TNode<JSReceiver> tmp209;
1372 : compiler::TNode<Object> tmp210;
1373 : compiler::TNode<Smi> tmp211;
1374 : compiler::TNode<Smi> tmp212;
1375 : compiler::TNode<JSArray> tmp213;
1376 : compiler::TNode<JSArray> tmp214;
1377 : compiler::TNode<JSArray> tmp215;
1378 : compiler::TNode<Map> tmp216;
1379 : compiler::TNode<BoolT> tmp217;
1380 : compiler::TNode<BoolT> tmp218;
1381 : compiler::TNode<BoolT> tmp219;
1382 : compiler::TNode<Smi> tmp220;
1383 : compiler::TNode<JSArray> tmp221;
1384 : ca_.Bind(&block24, &tmp206, &tmp207, &tmp208, &tmp209, &tmp210, &tmp211, &tmp212, &tmp213, &tmp214, &tmp215, &tmp216, &tmp217, &tmp218, &tmp219, &tmp220, &tmp221);
1385 56 : ca_.SetSourcePosition("../../src/builtins/array-findindex.tq", 107);
1386 : compiler::TNode<Smi> tmp222;
1387 : USE(tmp222);
1388 168 : tmp222 = ca_.UncheckedCast<Smi>(CodeStubAssembler(state_).LoadFastJSArrayLength(compiler::TNode<JSArray>{tmp221}));
1389 : compiler::TNode<BoolT> tmp223;
1390 : USE(tmp223);
1391 112 : tmp223 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).SmiGreaterThanOrEqual(compiler::TNode<Smi>{tmp220}, compiler::TNode<Smi>{tmp222}));
1392 56 : ca_.Branch(tmp223, &block22, &block23, tmp206, tmp207, tmp208, tmp209, tmp210, tmp211, tmp212, tmp213, tmp214, tmp215, tmp216, tmp217, tmp218, tmp219);
1393 : }
1394 :
1395 56 : if (block22.is_used()) {
1396 : compiler::TNode<Context> tmp224;
1397 : compiler::TNode<JSReceiver> tmp225;
1398 : compiler::TNode<Number> tmp226;
1399 : compiler::TNode<JSReceiver> tmp227;
1400 : compiler::TNode<Object> tmp228;
1401 : compiler::TNode<Smi> tmp229;
1402 : compiler::TNode<Smi> tmp230;
1403 : compiler::TNode<JSArray> tmp231;
1404 : compiler::TNode<JSArray> tmp232;
1405 : compiler::TNode<JSArray> tmp233;
1406 : compiler::TNode<Map> tmp234;
1407 : compiler::TNode<BoolT> tmp235;
1408 : compiler::TNode<BoolT> tmp236;
1409 : compiler::TNode<BoolT> tmp237;
1410 : ca_.Bind(&block22, &tmp224, &tmp225, &tmp226, &tmp227, &tmp228, &tmp229, &tmp230, &tmp231, &tmp232, &tmp233, &tmp234, &tmp235, &tmp236, &tmp237);
1411 : ca_.Goto(&block1, tmp229);
1412 : }
1413 :
1414 56 : if (block23.is_used()) {
1415 : compiler::TNode<Context> tmp238;
1416 : compiler::TNode<JSReceiver> tmp239;
1417 : compiler::TNode<Number> tmp240;
1418 : compiler::TNode<JSReceiver> tmp241;
1419 : compiler::TNode<Object> tmp242;
1420 : compiler::TNode<Smi> tmp243;
1421 : compiler::TNode<Smi> tmp244;
1422 : compiler::TNode<JSArray> tmp245;
1423 : compiler::TNode<JSArray> tmp246;
1424 : compiler::TNode<JSArray> tmp247;
1425 : compiler::TNode<Map> tmp248;
1426 : compiler::TNode<BoolT> tmp249;
1427 : compiler::TNode<BoolT> tmp250;
1428 : compiler::TNode<BoolT> tmp251;
1429 : ca_.Bind(&block23, &tmp238, &tmp239, &tmp240, &tmp241, &tmp242, &tmp243, &tmp244, &tmp245, &tmp246, &tmp247, &tmp248, &tmp249, &tmp250, &tmp251);
1430 56 : ca_.SetSourcePosition("../../src/builtins/array-findindex.tq", 109);
1431 56 : ca_.SetSourcePosition("../../src/builtins/base.tq", 2190);
1432 56 : ca_.SetSourcePosition("../../src/builtins/base.tq", 2179);
1433 56 : ca_.Branch(tmp249, &block29, &block30, tmp238, tmp239, tmp240, tmp241, tmp242, tmp243, tmp244, tmp245, tmp246, tmp247, tmp248, tmp249, tmp250, tmp251, tmp243, tmp238, tmp243, tmp243, tmp238, tmp243);
1434 : }
1435 :
1436 56 : if (block29.is_used()) {
1437 : compiler::TNode<Context> tmp252;
1438 : compiler::TNode<JSReceiver> tmp253;
1439 : compiler::TNode<Number> tmp254;
1440 : compiler::TNode<JSReceiver> tmp255;
1441 : compiler::TNode<Object> tmp256;
1442 : compiler::TNode<Smi> tmp257;
1443 : compiler::TNode<Smi> tmp258;
1444 : compiler::TNode<JSArray> tmp259;
1445 : compiler::TNode<JSArray> tmp260;
1446 : compiler::TNode<JSArray> tmp261;
1447 : compiler::TNode<Map> tmp262;
1448 : compiler::TNode<BoolT> tmp263;
1449 : compiler::TNode<BoolT> tmp264;
1450 : compiler::TNode<BoolT> tmp265;
1451 : compiler::TNode<Smi> tmp266;
1452 : compiler::TNode<Context> tmp267;
1453 : compiler::TNode<Smi> tmp268;
1454 : compiler::TNode<Smi> tmp269;
1455 : compiler::TNode<Context> tmp270;
1456 : compiler::TNode<Smi> tmp271;
1457 : ca_.Bind(&block29, &tmp252, &tmp253, &tmp254, &tmp255, &tmp256, &tmp257, &tmp258, &tmp259, &tmp260, &tmp261, &tmp262, &tmp263, &tmp264, &tmp265, &tmp266, &tmp267, &tmp268, &tmp269, &tmp270, &tmp271);
1458 56 : ca_.SetSourcePosition("../../src/builtins/base.tq", 2180);
1459 : compiler::TNode<Object> tmp272;
1460 : USE(tmp272);
1461 56 : compiler::CodeAssemblerLabel label0(&ca_);
1462 168 : tmp272 = BaseBuiltinsFromDSLAssembler(state_).LoadElementNoHole16FixedDoubleArray(compiler::TNode<Context>{tmp270}, compiler::TNode<JSArray>{tmp261}, compiler::TNode<Smi>{tmp271}, &label0);
1463 : ca_.Goto(&block32, tmp252, tmp253, tmp254, tmp255, tmp256, tmp257, tmp258, tmp259, tmp260, tmp261, tmp262, tmp263, tmp264, tmp265, tmp266, tmp267, tmp268, tmp269, tmp270, tmp271, tmp261, tmp271, tmp272);
1464 56 : if (label0.is_used()) {
1465 56 : ca_.Bind(&label0);
1466 : ca_.Goto(&block33, tmp252, tmp253, tmp254, tmp255, tmp256, tmp257, tmp258, tmp259, tmp260, tmp261, tmp262, tmp263, tmp264, tmp265, tmp266, tmp267, tmp268, tmp269, tmp270, tmp271, tmp261, tmp271);
1467 : }
1468 : }
1469 :
1470 56 : if (block33.is_used()) {
1471 : compiler::TNode<Context> tmp273;
1472 : compiler::TNode<JSReceiver> tmp274;
1473 : compiler::TNode<Number> tmp275;
1474 : compiler::TNode<JSReceiver> tmp276;
1475 : compiler::TNode<Object> tmp277;
1476 : compiler::TNode<Smi> tmp278;
1477 : compiler::TNode<Smi> tmp279;
1478 : compiler::TNode<JSArray> tmp280;
1479 : compiler::TNode<JSArray> tmp281;
1480 : compiler::TNode<JSArray> tmp282;
1481 : compiler::TNode<Map> tmp283;
1482 : compiler::TNode<BoolT> tmp284;
1483 : compiler::TNode<BoolT> tmp285;
1484 : compiler::TNode<BoolT> tmp286;
1485 : compiler::TNode<Smi> tmp287;
1486 : compiler::TNode<Context> tmp288;
1487 : compiler::TNode<Smi> tmp289;
1488 : compiler::TNode<Smi> tmp290;
1489 : compiler::TNode<Context> tmp291;
1490 : compiler::TNode<Smi> tmp292;
1491 : compiler::TNode<JSArray> tmp293;
1492 : compiler::TNode<Smi> tmp294;
1493 : ca_.Bind(&block33, &tmp273, &tmp274, &tmp275, &tmp276, &tmp277, &tmp278, &tmp279, &tmp280, &tmp281, &tmp282, &tmp283, &tmp284, &tmp285, &tmp286, &tmp287, &tmp288, &tmp289, &tmp290, &tmp291, &tmp292, &tmp293, &tmp294);
1494 : ca_.Goto(&block27, tmp273, tmp274, tmp275, tmp276, tmp277, tmp278, tmp279, tmp280, tmp281, tmp282, tmp283, tmp284, tmp285, tmp286, tmp287, tmp288, tmp289);
1495 : }
1496 :
1497 56 : if (block32.is_used()) {
1498 : compiler::TNode<Context> tmp295;
1499 : compiler::TNode<JSReceiver> tmp296;
1500 : compiler::TNode<Number> tmp297;
1501 : compiler::TNode<JSReceiver> tmp298;
1502 : compiler::TNode<Object> tmp299;
1503 : compiler::TNode<Smi> tmp300;
1504 : compiler::TNode<Smi> tmp301;
1505 : compiler::TNode<JSArray> tmp302;
1506 : compiler::TNode<JSArray> tmp303;
1507 : compiler::TNode<JSArray> tmp304;
1508 : compiler::TNode<Map> tmp305;
1509 : compiler::TNode<BoolT> tmp306;
1510 : compiler::TNode<BoolT> tmp307;
1511 : compiler::TNode<BoolT> tmp308;
1512 : compiler::TNode<Smi> tmp309;
1513 : compiler::TNode<Context> tmp310;
1514 : compiler::TNode<Smi> tmp311;
1515 : compiler::TNode<Smi> tmp312;
1516 : compiler::TNode<Context> tmp313;
1517 : compiler::TNode<Smi> tmp314;
1518 : compiler::TNode<JSArray> tmp315;
1519 : compiler::TNode<Smi> tmp316;
1520 : compiler::TNode<Object> tmp317;
1521 : ca_.Bind(&block32, &tmp295, &tmp296, &tmp297, &tmp298, &tmp299, &tmp300, &tmp301, &tmp302, &tmp303, &tmp304, &tmp305, &tmp306, &tmp307, &tmp308, &tmp309, &tmp310, &tmp311, &tmp312, &tmp313, &tmp314, &tmp315, &tmp316, &tmp317);
1522 : ca_.Goto(&block28, tmp295, tmp296, tmp297, tmp298, tmp299, tmp300, tmp301, tmp302, tmp303, tmp304, tmp305, tmp306, tmp307, tmp308, tmp309, tmp310, tmp311, tmp312, tmp313, tmp314, tmp317);
1523 : }
1524 :
1525 56 : if (block30.is_used()) {
1526 : compiler::TNode<Context> tmp318;
1527 : compiler::TNode<JSReceiver> tmp319;
1528 : compiler::TNode<Number> tmp320;
1529 : compiler::TNode<JSReceiver> tmp321;
1530 : compiler::TNode<Object> tmp322;
1531 : compiler::TNode<Smi> tmp323;
1532 : compiler::TNode<Smi> tmp324;
1533 : compiler::TNode<JSArray> tmp325;
1534 : compiler::TNode<JSArray> tmp326;
1535 : compiler::TNode<JSArray> tmp327;
1536 : compiler::TNode<Map> tmp328;
1537 : compiler::TNode<BoolT> tmp329;
1538 : compiler::TNode<BoolT> tmp330;
1539 : compiler::TNode<BoolT> tmp331;
1540 : compiler::TNode<Smi> tmp332;
1541 : compiler::TNode<Context> tmp333;
1542 : compiler::TNode<Smi> tmp334;
1543 : compiler::TNode<Smi> tmp335;
1544 : compiler::TNode<Context> tmp336;
1545 : compiler::TNode<Smi> tmp337;
1546 : ca_.Bind(&block30, &tmp318, &tmp319, &tmp320, &tmp321, &tmp322, &tmp323, &tmp324, &tmp325, &tmp326, &tmp327, &tmp328, &tmp329, &tmp330, &tmp331, &tmp332, &tmp333, &tmp334, &tmp335, &tmp336, &tmp337);
1547 56 : ca_.SetSourcePosition("../../src/builtins/base.tq", 2183);
1548 : compiler::TNode<Object> tmp338;
1549 : USE(tmp338);
1550 56 : compiler::CodeAssemblerLabel label0(&ca_);
1551 168 : tmp338 = BaseBuiltinsFromDSLAssembler(state_).LoadElementNoHole10FixedArray(compiler::TNode<Context>{tmp336}, compiler::TNode<JSArray>{tmp327}, compiler::TNode<Smi>{tmp337}, &label0);
1552 : ca_.Goto(&block34, tmp318, tmp319, tmp320, tmp321, tmp322, tmp323, tmp324, tmp325, tmp326, tmp327, tmp328, tmp329, tmp330, tmp331, tmp332, tmp333, tmp334, tmp335, tmp336, tmp337, tmp327, tmp337, tmp338);
1553 56 : if (label0.is_used()) {
1554 56 : ca_.Bind(&label0);
1555 : ca_.Goto(&block35, tmp318, tmp319, tmp320, tmp321, tmp322, tmp323, tmp324, tmp325, tmp326, tmp327, tmp328, tmp329, tmp330, tmp331, tmp332, tmp333, tmp334, tmp335, tmp336, tmp337, tmp327, tmp337);
1556 : }
1557 : }
1558 :
1559 56 : if (block35.is_used()) {
1560 : compiler::TNode<Context> tmp339;
1561 : compiler::TNode<JSReceiver> tmp340;
1562 : compiler::TNode<Number> tmp341;
1563 : compiler::TNode<JSReceiver> tmp342;
1564 : compiler::TNode<Object> tmp343;
1565 : compiler::TNode<Smi> tmp344;
1566 : compiler::TNode<Smi> tmp345;
1567 : compiler::TNode<JSArray> tmp346;
1568 : compiler::TNode<JSArray> tmp347;
1569 : compiler::TNode<JSArray> tmp348;
1570 : compiler::TNode<Map> tmp349;
1571 : compiler::TNode<BoolT> tmp350;
1572 : compiler::TNode<BoolT> tmp351;
1573 : compiler::TNode<BoolT> tmp352;
1574 : compiler::TNode<Smi> tmp353;
1575 : compiler::TNode<Context> tmp354;
1576 : compiler::TNode<Smi> tmp355;
1577 : compiler::TNode<Smi> tmp356;
1578 : compiler::TNode<Context> tmp357;
1579 : compiler::TNode<Smi> tmp358;
1580 : compiler::TNode<JSArray> tmp359;
1581 : compiler::TNode<Smi> tmp360;
1582 : ca_.Bind(&block35, &tmp339, &tmp340, &tmp341, &tmp342, &tmp343, &tmp344, &tmp345, &tmp346, &tmp347, &tmp348, &tmp349, &tmp350, &tmp351, &tmp352, &tmp353, &tmp354, &tmp355, &tmp356, &tmp357, &tmp358, &tmp359, &tmp360);
1583 : ca_.Goto(&block27, tmp339, tmp340, tmp341, tmp342, tmp343, tmp344, tmp345, tmp346, tmp347, tmp348, tmp349, tmp350, tmp351, tmp352, tmp353, tmp354, tmp355);
1584 : }
1585 :
1586 56 : if (block34.is_used()) {
1587 : compiler::TNode<Context> tmp361;
1588 : compiler::TNode<JSReceiver> tmp362;
1589 : compiler::TNode<Number> tmp363;
1590 : compiler::TNode<JSReceiver> tmp364;
1591 : compiler::TNode<Object> tmp365;
1592 : compiler::TNode<Smi> tmp366;
1593 : compiler::TNode<Smi> tmp367;
1594 : compiler::TNode<JSArray> tmp368;
1595 : compiler::TNode<JSArray> tmp369;
1596 : compiler::TNode<JSArray> tmp370;
1597 : compiler::TNode<Map> tmp371;
1598 : compiler::TNode<BoolT> tmp372;
1599 : compiler::TNode<BoolT> tmp373;
1600 : compiler::TNode<BoolT> tmp374;
1601 : compiler::TNode<Smi> tmp375;
1602 : compiler::TNode<Context> tmp376;
1603 : compiler::TNode<Smi> tmp377;
1604 : compiler::TNode<Smi> tmp378;
1605 : compiler::TNode<Context> tmp379;
1606 : compiler::TNode<Smi> tmp380;
1607 : compiler::TNode<JSArray> tmp381;
1608 : compiler::TNode<Smi> tmp382;
1609 : compiler::TNode<Object> tmp383;
1610 : ca_.Bind(&block34, &tmp361, &tmp362, &tmp363, &tmp364, &tmp365, &tmp366, &tmp367, &tmp368, &tmp369, &tmp370, &tmp371, &tmp372, &tmp373, &tmp374, &tmp375, &tmp376, &tmp377, &tmp378, &tmp379, &tmp380, &tmp381, &tmp382, &tmp383);
1611 : ca_.Goto(&block28, tmp361, tmp362, tmp363, tmp364, tmp365, tmp366, tmp367, tmp368, tmp369, tmp370, tmp371, tmp372, tmp373, tmp374, tmp375, tmp376, tmp377, tmp378, tmp379, tmp380, tmp383);
1612 : }
1613 :
1614 56 : if (block28.is_used()) {
1615 : compiler::TNode<Context> tmp384;
1616 : compiler::TNode<JSReceiver> tmp385;
1617 : compiler::TNode<Number> tmp386;
1618 : compiler::TNode<JSReceiver> tmp387;
1619 : compiler::TNode<Object> tmp388;
1620 : compiler::TNode<Smi> tmp389;
1621 : compiler::TNode<Smi> tmp390;
1622 : compiler::TNode<JSArray> tmp391;
1623 : compiler::TNode<JSArray> tmp392;
1624 : compiler::TNode<JSArray> tmp393;
1625 : compiler::TNode<Map> tmp394;
1626 : compiler::TNode<BoolT> tmp395;
1627 : compiler::TNode<BoolT> tmp396;
1628 : compiler::TNode<BoolT> tmp397;
1629 : compiler::TNode<Smi> tmp398;
1630 : compiler::TNode<Context> tmp399;
1631 : compiler::TNode<Smi> tmp400;
1632 : compiler::TNode<Smi> tmp401;
1633 : compiler::TNode<Context> tmp402;
1634 : compiler::TNode<Smi> tmp403;
1635 : compiler::TNode<Object> tmp404;
1636 : ca_.Bind(&block28, &tmp384, &tmp385, &tmp386, &tmp387, &tmp388, &tmp389, &tmp390, &tmp391, &tmp392, &tmp393, &tmp394, &tmp395, &tmp396, &tmp397, &tmp398, &tmp399, &tmp400, &tmp401, &tmp402, &tmp403, &tmp404);
1637 56 : ca_.SetSourcePosition("../../src/builtins/base.tq", 2190);
1638 : ca_.Goto(&block25, tmp384, tmp385, tmp386, tmp387, tmp388, tmp389, tmp390, tmp391, tmp392, tmp393, tmp394, tmp395, tmp396, tmp397, tmp398, tmp399, tmp400, tmp404);
1639 : }
1640 :
1641 56 : if (block27.is_used()) {
1642 : compiler::TNode<Context> tmp405;
1643 : compiler::TNode<JSReceiver> tmp406;
1644 : compiler::TNode<Number> tmp407;
1645 : compiler::TNode<JSReceiver> tmp408;
1646 : compiler::TNode<Object> tmp409;
1647 : compiler::TNode<Smi> tmp410;
1648 : compiler::TNode<Smi> tmp411;
1649 : compiler::TNode<JSArray> tmp412;
1650 : compiler::TNode<JSArray> tmp413;
1651 : compiler::TNode<JSArray> tmp414;
1652 : compiler::TNode<Map> tmp415;
1653 : compiler::TNode<BoolT> tmp416;
1654 : compiler::TNode<BoolT> tmp417;
1655 : compiler::TNode<BoolT> tmp418;
1656 : compiler::TNode<Smi> tmp419;
1657 : compiler::TNode<Context> tmp420;
1658 : compiler::TNode<Smi> tmp421;
1659 : ca_.Bind(&block27, &tmp405, &tmp406, &tmp407, &tmp408, &tmp409, &tmp410, &tmp411, &tmp412, &tmp413, &tmp414, &tmp415, &tmp416, &tmp417, &tmp418, &tmp419, &tmp420, &tmp421);
1660 56 : ca_.SetSourcePosition("../../src/builtins/base.tq", 2193);
1661 : compiler::TNode<Oddball> tmp422;
1662 : USE(tmp422);
1663 168 : tmp422 = BaseBuiltinsFromDSLAssembler(state_).Undefined();
1664 : ca_.Goto(&block25, tmp405, tmp406, tmp407, tmp408, tmp409, tmp410, tmp411, tmp412, tmp413, tmp414, tmp415, tmp416, tmp417, tmp418, tmp419, tmp420, tmp421, tmp422);
1665 : }
1666 :
1667 56 : if (block25.is_used()) {
1668 : compiler::TNode<Context> tmp423;
1669 : compiler::TNode<JSReceiver> tmp424;
1670 : compiler::TNode<Number> tmp425;
1671 : compiler::TNode<JSReceiver> tmp426;
1672 : compiler::TNode<Object> tmp427;
1673 : compiler::TNode<Smi> tmp428;
1674 : compiler::TNode<Smi> tmp429;
1675 : compiler::TNode<JSArray> tmp430;
1676 : compiler::TNode<JSArray> tmp431;
1677 : compiler::TNode<JSArray> tmp432;
1678 : compiler::TNode<Map> tmp433;
1679 : compiler::TNode<BoolT> tmp434;
1680 : compiler::TNode<BoolT> tmp435;
1681 : compiler::TNode<BoolT> tmp436;
1682 : compiler::TNode<Smi> tmp437;
1683 : compiler::TNode<Context> tmp438;
1684 : compiler::TNode<Smi> tmp439;
1685 : compiler::TNode<Object> tmp440;
1686 : ca_.Bind(&block25, &tmp423, &tmp424, &tmp425, &tmp426, &tmp427, &tmp428, &tmp429, &tmp430, &tmp431, &tmp432, &tmp433, &tmp434, &tmp435, &tmp436, &tmp437, &tmp438, &tmp439, &tmp440);
1687 56 : ca_.SetSourcePosition("../../src/builtins/array-findindex.tq", 109);
1688 56 : ca_.SetSourcePosition("../../src/builtins/array-findindex.tq", 111);
1689 56 : ca_.SetSourcePosition("../../src/builtins/base.tq", 2162);
1690 : ca_.Goto(&block36, tmp423, tmp424, tmp425, tmp426, tmp427, tmp428, tmp429, tmp430, tmp431, tmp432, tmp433, tmp434, tmp435, tmp436, tmp440, tmp423, tmp426, tmp427, tmp440, tmp428, tmp432);
1691 : }
1692 :
1693 56 : if (block36.is_used()) {
1694 : compiler::TNode<Context> tmp441;
1695 : compiler::TNode<JSReceiver> tmp442;
1696 : compiler::TNode<Number> tmp443;
1697 : compiler::TNode<JSReceiver> tmp444;
1698 : compiler::TNode<Object> tmp445;
1699 : compiler::TNode<Smi> tmp446;
1700 : compiler::TNode<Smi> tmp447;
1701 : compiler::TNode<JSArray> tmp448;
1702 : compiler::TNode<JSArray> tmp449;
1703 : compiler::TNode<JSArray> tmp450;
1704 : compiler::TNode<Map> tmp451;
1705 : compiler::TNode<BoolT> tmp452;
1706 : compiler::TNode<BoolT> tmp453;
1707 : compiler::TNode<BoolT> tmp454;
1708 : compiler::TNode<Object> tmp455;
1709 : compiler::TNode<Context> tmp456;
1710 : compiler::TNode<JSReceiver> tmp457;
1711 : compiler::TNode<Object> tmp458;
1712 : compiler::TNode<Object> tmp459;
1713 : compiler::TNode<Smi> tmp460;
1714 : compiler::TNode<JSArray> tmp461;
1715 : ca_.Bind(&block36, &tmp441, &tmp442, &tmp443, &tmp444, &tmp445, &tmp446, &tmp447, &tmp448, &tmp449, &tmp450, &tmp451, &tmp452, &tmp453, &tmp454, &tmp455, &tmp456, &tmp457, &tmp458, &tmp459, &tmp460, &tmp461);
1716 56 : ca_.SetSourcePosition("../../src/builtins/array-findindex.tq", 111);
1717 : compiler::TNode<Object> tmp462;
1718 : USE(tmp462);
1719 168 : tmp462 = ca_.UncheckedCast<Object>(CodeStubAssembler(state_).Call(compiler::TNode<Context>{tmp456}, compiler::TNode<JSReceiver>{tmp457}, compiler::TNode<Object>{tmp458}, compiler::TNode<Object>{tmp459}, compiler::TNode<Object>{tmp460}, compiler::TNode<Object>{tmp461}));
1720 56 : ca_.SetSourcePosition("../../src/builtins/array-findindex.tq", 110);
1721 56 : ca_.SetSourcePosition("../../src/builtins/array-findindex.tq", 112);
1722 : compiler::TNode<BoolT> tmp463;
1723 : USE(tmp463);
1724 168 : tmp463 = ca_.UncheckedCast<BoolT>(BaseBuiltinsFromDSLAssembler(state_).ToBoolean(compiler::TNode<Object>{tmp462}));
1725 56 : ca_.Branch(tmp463, &block37, &block38, tmp441, tmp442, tmp443, tmp444, tmp445, tmp446, tmp447, tmp448, tmp449, tmp450, tmp451, tmp452, tmp453, tmp454, tmp455, tmp462);
1726 : }
1727 :
1728 56 : if (block37.is_used()) {
1729 : compiler::TNode<Context> tmp464;
1730 : compiler::TNode<JSReceiver> tmp465;
1731 : compiler::TNode<Number> tmp466;
1732 : compiler::TNode<JSReceiver> tmp467;
1733 : compiler::TNode<Object> tmp468;
1734 : compiler::TNode<Smi> tmp469;
1735 : compiler::TNode<Smi> tmp470;
1736 : compiler::TNode<JSArray> tmp471;
1737 : compiler::TNode<JSArray> tmp472;
1738 : compiler::TNode<JSArray> tmp473;
1739 : compiler::TNode<Map> tmp474;
1740 : compiler::TNode<BoolT> tmp475;
1741 : compiler::TNode<BoolT> tmp476;
1742 : compiler::TNode<BoolT> tmp477;
1743 : compiler::TNode<Object> tmp478;
1744 : compiler::TNode<Object> tmp479;
1745 : ca_.Bind(&block37, &tmp464, &tmp465, &tmp466, &tmp467, &tmp468, &tmp469, &tmp470, &tmp471, &tmp472, &tmp473, &tmp474, &tmp475, &tmp476, &tmp477, &tmp478, &tmp479);
1746 56 : ca_.SetSourcePosition("../../src/builtins/array-findindex.tq", 113);
1747 : ca_.Goto(&block2, tmp464, tmp465, tmp466, tmp467, tmp468, tmp469);
1748 : }
1749 :
1750 56 : if (block38.is_used()) {
1751 : compiler::TNode<Context> tmp480;
1752 : compiler::TNode<JSReceiver> tmp481;
1753 : compiler::TNode<Number> tmp482;
1754 : compiler::TNode<JSReceiver> tmp483;
1755 : compiler::TNode<Object> tmp484;
1756 : compiler::TNode<Smi> tmp485;
1757 : compiler::TNode<Smi> tmp486;
1758 : compiler::TNode<JSArray> tmp487;
1759 : compiler::TNode<JSArray> tmp488;
1760 : compiler::TNode<JSArray> tmp489;
1761 : compiler::TNode<Map> tmp490;
1762 : compiler::TNode<BoolT> tmp491;
1763 : compiler::TNode<BoolT> tmp492;
1764 : compiler::TNode<BoolT> tmp493;
1765 : compiler::TNode<Object> tmp494;
1766 : compiler::TNode<Object> tmp495;
1767 : ca_.Bind(&block38, &tmp480, &tmp481, &tmp482, &tmp483, &tmp484, &tmp485, &tmp486, &tmp487, &tmp488, &tmp489, &tmp490, &tmp491, &tmp492, &tmp493, &tmp494, &tmp495);
1768 56 : ca_.SetSourcePosition("../../src/builtins/array-findindex.tq", 103);
1769 : ca_.Goto(&block14, tmp480, tmp481, tmp482, tmp483, tmp484, tmp485, tmp486, tmp487, tmp488, tmp489, tmp490, tmp491, tmp492, tmp493);
1770 : }
1771 :
1772 56 : if (block14.is_used()) {
1773 : compiler::TNode<Context> tmp496;
1774 : compiler::TNode<JSReceiver> tmp497;
1775 : compiler::TNode<Number> tmp498;
1776 : compiler::TNode<JSReceiver> tmp499;
1777 : compiler::TNode<Object> tmp500;
1778 : compiler::TNode<Smi> tmp501;
1779 : compiler::TNode<Smi> tmp502;
1780 : compiler::TNode<JSArray> tmp503;
1781 : compiler::TNode<JSArray> tmp504;
1782 : compiler::TNode<JSArray> tmp505;
1783 : compiler::TNode<Map> tmp506;
1784 : compiler::TNode<BoolT> tmp507;
1785 : compiler::TNode<BoolT> tmp508;
1786 : compiler::TNode<BoolT> tmp509;
1787 : ca_.Bind(&block14, &tmp496, &tmp497, &tmp498, &tmp499, &tmp500, &tmp501, &tmp502, &tmp503, &tmp504, &tmp505, &tmp506, &tmp507, &tmp508, &tmp509);
1788 : compiler::TNode<Smi> tmp510;
1789 : USE(tmp510);
1790 168 : tmp510 = ca_.UncheckedCast<Smi>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr5ATSmi17ATconstexpr_int31(1));
1791 : compiler::TNode<Smi> tmp511;
1792 : USE(tmp511);
1793 112 : tmp511 = ca_.UncheckedCast<Smi>(CodeStubAssembler(state_).SmiAdd(compiler::TNode<Smi>{tmp501}, compiler::TNode<Smi>{tmp510}));
1794 : ca_.Goto(&block13, tmp496, tmp497, tmp498, tmp499, tmp500, tmp511, tmp502, tmp503, tmp504, tmp505, tmp506, tmp507, tmp508, tmp509);
1795 : }
1796 :
1797 56 : if (block12.is_used()) {
1798 : compiler::TNode<Context> tmp512;
1799 : compiler::TNode<JSReceiver> tmp513;
1800 : compiler::TNode<Number> tmp514;
1801 : compiler::TNode<JSReceiver> tmp515;
1802 : compiler::TNode<Object> tmp516;
1803 : compiler::TNode<Smi> tmp517;
1804 : compiler::TNode<Smi> tmp518;
1805 : compiler::TNode<JSArray> tmp519;
1806 : compiler::TNode<JSArray> tmp520;
1807 : compiler::TNode<JSArray> tmp521;
1808 : compiler::TNode<Map> tmp522;
1809 : compiler::TNode<BoolT> tmp523;
1810 : compiler::TNode<BoolT> tmp524;
1811 : compiler::TNode<BoolT> tmp525;
1812 : ca_.Bind(&block12, &tmp512, &tmp513, &tmp514, &tmp515, &tmp516, &tmp517, &tmp518, &tmp519, &tmp520, &tmp521, &tmp522, &tmp523, &tmp524, &tmp525);
1813 56 : ca_.SetSourcePosition("../../src/builtins/array-findindex.tq", 116);
1814 : compiler::TNode<Number> tmp526;
1815 : USE(tmp526);
1816 168 : tmp526 = ca_.UncheckedCast<Number>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr20UT5ATSmi10HeapNumber17ATconstexpr_int31(-1));
1817 : ca_.Goto(&block2, tmp512, tmp513, tmp514, tmp515, tmp516, tmp526);
1818 : }
1819 :
1820 56 : if (block2.is_used()) {
1821 : compiler::TNode<Context> tmp527;
1822 : compiler::TNode<JSReceiver> tmp528;
1823 : compiler::TNode<Number> tmp529;
1824 : compiler::TNode<JSReceiver> tmp530;
1825 : compiler::TNode<Object> tmp531;
1826 : compiler::TNode<Number> tmp532;
1827 : ca_.Bind(&block2, &tmp527, &tmp528, &tmp529, &tmp530, &tmp531, &tmp532);
1828 56 : ca_.SetSourcePosition("../../src/builtins/array-findindex.tq", 94);
1829 : ca_.Goto(&block39, tmp527, tmp528, tmp529, tmp530, tmp531, tmp532);
1830 : }
1831 :
1832 56 : if (block1.is_used()) {
1833 : compiler::TNode<Smi> tmp533;
1834 : ca_.Bind(&block1, &tmp533);
1835 : *label_Bailout_parameter_0 = tmp533;
1836 56 : ca_.Goto(label_Bailout);
1837 : }
1838 :
1839 : compiler::TNode<Context> tmp534;
1840 : compiler::TNode<JSReceiver> tmp535;
1841 : compiler::TNode<Number> tmp536;
1842 : compiler::TNode<JSReceiver> tmp537;
1843 : compiler::TNode<Object> tmp538;
1844 : compiler::TNode<Number> tmp539;
1845 : ca_.Bind(&block39, &tmp534, &tmp535, &tmp536, &tmp537, &tmp538, &tmp539);
1846 112 : return compiler::TNode<Number>{tmp539};
1847 : }
1848 :
1849 224 : TF_BUILTIN(ArrayPrototypeFindIndex, CodeStubAssembler) {
1850 56 : compiler::CodeAssemblerState* state_ = state(); compiler::CodeAssembler ca_(state());
1851 : TNode<Context> parameter0 = UncheckedCast<Context>(Parameter(Descriptor::kContext));
1852 : USE(parameter0);
1853 : Node* argc = Parameter(Descriptor::kJSActualArgumentsCount);
1854 56 : TNode<IntPtrT> arguments_length(ChangeInt32ToIntPtr(argc));
1855 56 : TNode<RawPtrT> arguments_frame = UncheckedCast<RawPtrT>(LoadFramePointer());
1856 56 : BaseBuiltinsFromDSLAssembler::Arguments torque_arguments(GetFrameArguments(arguments_frame, arguments_length));
1857 : CodeStubArguments arguments(this, torque_arguments);
1858 56 : TNode<Object> parameter1 = arguments.GetReceiver();
1859 : USE(parameter1);
1860 : compiler::CodeAssemblerParameterizedLabel<Context, Object, RawPtrT, RawPtrT, IntPtrT> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1861 : compiler::CodeAssemblerParameterizedLabel<Context, Object, RawPtrT, RawPtrT, IntPtrT> block5(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1862 : compiler::CodeAssemblerParameterizedLabel<Context, Object, RawPtrT, RawPtrT, IntPtrT> block6(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1863 : compiler::CodeAssemblerParameterizedLabel<Context, Object, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number> block7(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1864 : compiler::CodeAssemblerParameterizedLabel<Context, Object, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number> block8(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1865 : compiler::CodeAssemblerParameterizedLabel<Context, Object, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Object> block10(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1866 : compiler::CodeAssemblerParameterizedLabel<Context, Object, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Object, JSReceiver> block9(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1867 : compiler::CodeAssemblerParameterizedLabel<Context, Object, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, JSReceiver> block11(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1868 : compiler::CodeAssemblerParameterizedLabel<Context, Object, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, JSReceiver> block12(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1869 : compiler::CodeAssemblerParameterizedLabel<Context, Object, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, JSReceiver, Object> block14(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1870 : compiler::CodeAssemblerParameterizedLabel<Context, Object, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, JSReceiver, Object> block13(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1871 : compiler::CodeAssemblerParameterizedLabel<Context, Object, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, JSReceiver, Object, JSReceiver, Number, JSReceiver, Object, Smi> block18(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1872 : compiler::CodeAssemblerParameterizedLabel<Context, Object, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, JSReceiver, Object, JSReceiver, Number, JSReceiver, Object, Number> block17(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1873 : compiler::CodeAssemblerParameterizedLabel<Context, Object, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, JSReceiver, Object, Smi> block16(&ca_, compiler::CodeAssemblerLabel::kDeferred);
1874 : compiler::CodeAssemblerParameterizedLabel<Context, Object, RawPtrT, RawPtrT, IntPtrT> block4(&ca_, compiler::CodeAssemblerLabel::kDeferred);
1875 : compiler::CodeAssemblerParameterizedLabel<Context, Object, RawPtrT, RawPtrT, IntPtrT> block2(&ca_, compiler::CodeAssemblerLabel::kDeferred);
1876 : ca_.Goto(&block0, parameter0, parameter1, torque_arguments.frame, torque_arguments.base, torque_arguments.length);
1877 :
1878 56 : if (block0.is_used()) {
1879 : compiler::TNode<Context> tmp0;
1880 : compiler::TNode<Object> tmp1;
1881 : compiler::TNode<RawPtrT> tmp2;
1882 : compiler::TNode<RawPtrT> tmp3;
1883 : compiler::TNode<IntPtrT> tmp4;
1884 : ca_.Bind(&block0, &tmp0, &tmp1, &tmp2, &tmp3, &tmp4);
1885 56 : ca_.SetSourcePosition("../../src/builtins/array-findindex.tq", 124);
1886 : compiler::TNode<BoolT> tmp5;
1887 : USE(tmp5);
1888 168 : tmp5 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).IsNullOrUndefined(compiler::TNode<Object>{tmp1}));
1889 56 : ca_.Branch(tmp5, &block5, &block6, tmp0, tmp1, tmp2, tmp3, tmp4);
1890 : }
1891 :
1892 56 : if (block5.is_used()) {
1893 : compiler::TNode<Context> tmp6;
1894 : compiler::TNode<Object> tmp7;
1895 : compiler::TNode<RawPtrT> tmp8;
1896 : compiler::TNode<RawPtrT> tmp9;
1897 : compiler::TNode<IntPtrT> tmp10;
1898 : ca_.Bind(&block5, &tmp6, &tmp7, &tmp8, &tmp9, &tmp10);
1899 56 : ca_.SetSourcePosition("../../src/builtins/array-findindex.tq", 125);
1900 : ca_.Goto(&block2, tmp6, tmp7, tmp8, tmp9, tmp10);
1901 : }
1902 :
1903 56 : if (block6.is_used()) {
1904 : compiler::TNode<Context> tmp11;
1905 : compiler::TNode<Object> tmp12;
1906 : compiler::TNode<RawPtrT> tmp13;
1907 : compiler::TNode<RawPtrT> tmp14;
1908 : compiler::TNode<IntPtrT> tmp15;
1909 : ca_.Bind(&block6, &tmp11, &tmp12, &tmp13, &tmp14, &tmp15);
1910 56 : ca_.SetSourcePosition("../../src/builtins/array-findindex.tq", 129);
1911 : compiler::TNode<JSReceiver> tmp16;
1912 : USE(tmp16);
1913 112 : tmp16 = ca_.UncheckedCast<JSReceiver>(CodeStubAssembler(state_).ToObject_Inline(compiler::TNode<Context>{tmp11}, compiler::TNode<Object>{tmp12}));
1914 56 : ca_.SetSourcePosition("../../src/builtins/array-findindex.tq", 132);
1915 : compiler::TNode<Number> tmp17;
1916 : USE(tmp17);
1917 112 : tmp17 = ca_.UncheckedCast<Number>(BaseBuiltinsFromDSLAssembler(state_).GetLengthProperty(compiler::TNode<Context>{tmp11}, compiler::TNode<Object>{tmp16}));
1918 56 : ca_.SetSourcePosition("../../src/builtins/array-findindex.tq", 135);
1919 : compiler::TNode<IntPtrT> tmp18;
1920 : USE(tmp18);
1921 112 : tmp18 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATintptr17ATconstexpr_int31(0));
1922 : compiler::TNode<BoolT> tmp19;
1923 : USE(tmp19);
1924 168 : tmp19 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).WordEqual(compiler::TNode<IntPtrT>{tmp15}, compiler::TNode<IntPtrT>{tmp18}));
1925 56 : ca_.Branch(tmp19, &block7, &block8, tmp11, tmp12, tmp13, tmp14, tmp15, tmp16, tmp17);
1926 : }
1927 :
1928 56 : if (block7.is_used()) {
1929 : compiler::TNode<Context> tmp20;
1930 : compiler::TNode<Object> tmp21;
1931 : compiler::TNode<RawPtrT> tmp22;
1932 : compiler::TNode<RawPtrT> tmp23;
1933 : compiler::TNode<IntPtrT> tmp24;
1934 : compiler::TNode<JSReceiver> tmp25;
1935 : compiler::TNode<Number> tmp26;
1936 : ca_.Bind(&block7, &tmp20, &tmp21, &tmp22, &tmp23, &tmp24, &tmp25, &tmp26);
1937 56 : ca_.SetSourcePosition("../../src/builtins/array-findindex.tq", 136);
1938 : ca_.Goto(&block4, tmp20, tmp21, tmp22, tmp23, tmp24);
1939 : }
1940 :
1941 56 : if (block8.is_used()) {
1942 : compiler::TNode<Context> tmp27;
1943 : compiler::TNode<Object> tmp28;
1944 : compiler::TNode<RawPtrT> tmp29;
1945 : compiler::TNode<RawPtrT> tmp30;
1946 : compiler::TNode<IntPtrT> tmp31;
1947 : compiler::TNode<JSReceiver> tmp32;
1948 : compiler::TNode<Number> tmp33;
1949 : ca_.Bind(&block8, &tmp27, &tmp28, &tmp29, &tmp30, &tmp31, &tmp32, &tmp33);
1950 56 : ca_.SetSourcePosition("../../src/builtins/array-findindex.tq", 139);
1951 : compiler::TNode<IntPtrT> tmp34;
1952 : USE(tmp34);
1953 112 : tmp34 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATintptr17ATconstexpr_int31(0));
1954 : compiler::TNode<Object> tmp35;
1955 : USE(tmp35);
1956 112 : tmp35 = ca_.UncheckedCast<Object>(CodeStubAssembler(state_).GetArgumentValue(BaseBuiltinsFromDSLAssembler::Arguments{compiler::TNode<RawPtrT>{tmp29}, compiler::TNode<RawPtrT>{tmp30}, compiler::TNode<IntPtrT>{tmp31}}, compiler::TNode<IntPtrT>{tmp34}));
1957 : compiler::TNode<JSReceiver> tmp36;
1958 : USE(tmp36);
1959 56 : compiler::CodeAssemblerLabel label0(&ca_);
1960 112 : tmp36 = BaseBuiltinsFromDSLAssembler(state_).Cast39UT15JSBoundFunction10JSFunction7JSProxy(compiler::TNode<Context>{tmp27}, compiler::TNode<Object>{tmp35}, &label0);
1961 : ca_.Goto(&block9, tmp27, tmp28, tmp29, tmp30, tmp31, tmp32, tmp33, tmp35, tmp36);
1962 56 : if (label0.is_used()) {
1963 56 : ca_.Bind(&label0);
1964 : ca_.Goto(&block10, tmp27, tmp28, tmp29, tmp30, tmp31, tmp32, tmp33, tmp35);
1965 : }
1966 : }
1967 :
1968 56 : if (block10.is_used()) {
1969 : compiler::TNode<Context> tmp37;
1970 : compiler::TNode<Object> tmp38;
1971 : compiler::TNode<RawPtrT> tmp39;
1972 : compiler::TNode<RawPtrT> tmp40;
1973 : compiler::TNode<IntPtrT> tmp41;
1974 : compiler::TNode<JSReceiver> tmp42;
1975 : compiler::TNode<Number> tmp43;
1976 : compiler::TNode<Object> tmp44;
1977 : ca_.Bind(&block10, &tmp37, &tmp38, &tmp39, &tmp40, &tmp41, &tmp42, &tmp43, &tmp44);
1978 : ca_.Goto(&block4, tmp37, tmp38, tmp39, tmp40, tmp41);
1979 : }
1980 :
1981 56 : if (block9.is_used()) {
1982 : compiler::TNode<Context> tmp45;
1983 : compiler::TNode<Object> tmp46;
1984 : compiler::TNode<RawPtrT> tmp47;
1985 : compiler::TNode<RawPtrT> tmp48;
1986 : compiler::TNode<IntPtrT> tmp49;
1987 : compiler::TNode<JSReceiver> tmp50;
1988 : compiler::TNode<Number> tmp51;
1989 : compiler::TNode<Object> tmp52;
1990 : compiler::TNode<JSReceiver> tmp53;
1991 : ca_.Bind(&block9, &tmp45, &tmp46, &tmp47, &tmp48, &tmp49, &tmp50, &tmp51, &tmp52, &tmp53);
1992 56 : ca_.SetSourcePosition("../../src/builtins/array-findindex.tq", 142);
1993 : compiler::TNode<IntPtrT> tmp54;
1994 : USE(tmp54);
1995 112 : tmp54 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATintptr17ATconstexpr_int31(1));
1996 : compiler::TNode<BoolT> tmp55;
1997 : USE(tmp55);
1998 168 : tmp55 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).IntPtrGreaterThan(compiler::TNode<IntPtrT>{tmp49}, compiler::TNode<IntPtrT>{tmp54}));
1999 56 : ca_.Branch(tmp55, &block11, &block12, tmp45, tmp46, tmp47, tmp48, tmp49, tmp50, tmp51, tmp53);
2000 : }
2001 :
2002 56 : if (block11.is_used()) {
2003 : compiler::TNode<Context> tmp56;
2004 : compiler::TNode<Object> tmp57;
2005 : compiler::TNode<RawPtrT> tmp58;
2006 : compiler::TNode<RawPtrT> tmp59;
2007 : compiler::TNode<IntPtrT> tmp60;
2008 : compiler::TNode<JSReceiver> tmp61;
2009 : compiler::TNode<Number> tmp62;
2010 : compiler::TNode<JSReceiver> tmp63;
2011 : ca_.Bind(&block11, &tmp56, &tmp57, &tmp58, &tmp59, &tmp60, &tmp61, &tmp62, &tmp63);
2012 : compiler::TNode<IntPtrT> tmp64;
2013 : USE(tmp64);
2014 112 : tmp64 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATintptr17ATconstexpr_int31(1));
2015 : compiler::TNode<Object> tmp65;
2016 : USE(tmp65);
2017 112 : tmp65 = ca_.UncheckedCast<Object>(CodeStubAssembler(state_).GetArgumentValue(BaseBuiltinsFromDSLAssembler::Arguments{compiler::TNode<RawPtrT>{tmp58}, compiler::TNode<RawPtrT>{tmp59}, compiler::TNode<IntPtrT>{tmp60}}, compiler::TNode<IntPtrT>{tmp64}));
2018 : ca_.Goto(&block14, tmp56, tmp57, tmp58, tmp59, tmp60, tmp61, tmp62, tmp63, tmp65);
2019 : }
2020 :
2021 56 : if (block12.is_used()) {
2022 : compiler::TNode<Context> tmp66;
2023 : compiler::TNode<Object> tmp67;
2024 : compiler::TNode<RawPtrT> tmp68;
2025 : compiler::TNode<RawPtrT> tmp69;
2026 : compiler::TNode<IntPtrT> tmp70;
2027 : compiler::TNode<JSReceiver> tmp71;
2028 : compiler::TNode<Number> tmp72;
2029 : compiler::TNode<JSReceiver> tmp73;
2030 : ca_.Bind(&block12, &tmp66, &tmp67, &tmp68, &tmp69, &tmp70, &tmp71, &tmp72, &tmp73);
2031 : compiler::TNode<Oddball> tmp74;
2032 : USE(tmp74);
2033 112 : tmp74 = BaseBuiltinsFromDSLAssembler(state_).Undefined();
2034 : ca_.Goto(&block13, tmp66, tmp67, tmp68, tmp69, tmp70, tmp71, tmp72, tmp73, tmp74);
2035 : }
2036 :
2037 56 : if (block14.is_used()) {
2038 : compiler::TNode<Context> tmp75;
2039 : compiler::TNode<Object> tmp76;
2040 : compiler::TNode<RawPtrT> tmp77;
2041 : compiler::TNode<RawPtrT> tmp78;
2042 : compiler::TNode<IntPtrT> tmp79;
2043 : compiler::TNode<JSReceiver> tmp80;
2044 : compiler::TNode<Number> tmp81;
2045 : compiler::TNode<JSReceiver> tmp82;
2046 : compiler::TNode<Object> tmp83;
2047 : ca_.Bind(&block14, &tmp75, &tmp76, &tmp77, &tmp78, &tmp79, &tmp80, &tmp81, &tmp82, &tmp83);
2048 : ca_.Goto(&block13, tmp75, tmp76, tmp77, tmp78, tmp79, tmp80, tmp81, tmp82, tmp83);
2049 : }
2050 :
2051 56 : if (block13.is_used()) {
2052 : compiler::TNode<Context> tmp84;
2053 : compiler::TNode<Object> tmp85;
2054 : compiler::TNode<RawPtrT> tmp86;
2055 : compiler::TNode<RawPtrT> tmp87;
2056 : compiler::TNode<IntPtrT> tmp88;
2057 : compiler::TNode<JSReceiver> tmp89;
2058 : compiler::TNode<Number> tmp90;
2059 : compiler::TNode<JSReceiver> tmp91;
2060 : compiler::TNode<Object> tmp92;
2061 : ca_.Bind(&block13, &tmp84, &tmp85, &tmp86, &tmp87, &tmp88, &tmp89, &tmp90, &tmp91, &tmp92);
2062 56 : ca_.SetSourcePosition("../../src/builtins/array-findindex.tq", 146);
2063 : compiler::TNode<Number> tmp93;
2064 : USE(tmp93);
2065 : compiler::TypedCodeAssemblerVariable<Smi> result_0_0(&ca_);
2066 56 : compiler::CodeAssemblerLabel label0(&ca_);
2067 112 : tmp93 = ArrayFindindexBuiltinsFromDSLAssembler(state_).FastArrayFindIndex(compiler::TNode<Context>{tmp84}, compiler::TNode<JSReceiver>{tmp89}, compiler::TNode<Number>{tmp90}, compiler::TNode<JSReceiver>{tmp91}, compiler::TNode<Object>{tmp92}, &label0, &result_0_0);
2068 : ca_.Goto(&block17, tmp84, tmp85, tmp86, tmp87, tmp88, tmp89, tmp90, tmp91, tmp92, tmp89, tmp90, tmp91, tmp92, tmp93);
2069 56 : if (label0.is_used()) {
2070 56 : ca_.Bind(&label0);
2071 : ca_.Goto(&block18, tmp84, tmp85, tmp86, tmp87, tmp88, tmp89, tmp90, tmp91, tmp92, tmp89, tmp90, tmp91, tmp92, result_0_0.value());
2072 : }
2073 : }
2074 :
2075 56 : if (block18.is_used()) {
2076 : compiler::TNode<Context> tmp94;
2077 : compiler::TNode<Object> tmp95;
2078 : compiler::TNode<RawPtrT> tmp96;
2079 : compiler::TNode<RawPtrT> tmp97;
2080 : compiler::TNode<IntPtrT> tmp98;
2081 : compiler::TNode<JSReceiver> tmp99;
2082 : compiler::TNode<Number> tmp100;
2083 : compiler::TNode<JSReceiver> tmp101;
2084 : compiler::TNode<Object> tmp102;
2085 : compiler::TNode<JSReceiver> tmp103;
2086 : compiler::TNode<Number> tmp104;
2087 : compiler::TNode<JSReceiver> tmp105;
2088 : compiler::TNode<Object> tmp106;
2089 : compiler::TNode<Smi> tmp107;
2090 : ca_.Bind(&block18, &tmp94, &tmp95, &tmp96, &tmp97, &tmp98, &tmp99, &tmp100, &tmp101, &tmp102, &tmp103, &tmp104, &tmp105, &tmp106, &tmp107);
2091 : ca_.Goto(&block16, tmp94, tmp95, tmp96, tmp97, tmp98, tmp99, tmp100, tmp101, tmp102, tmp107);
2092 : }
2093 :
2094 56 : if (block17.is_used()) {
2095 : compiler::TNode<Context> tmp108;
2096 : compiler::TNode<Object> tmp109;
2097 : compiler::TNode<RawPtrT> tmp110;
2098 : compiler::TNode<RawPtrT> tmp111;
2099 : compiler::TNode<IntPtrT> tmp112;
2100 : compiler::TNode<JSReceiver> tmp113;
2101 : compiler::TNode<Number> tmp114;
2102 : compiler::TNode<JSReceiver> tmp115;
2103 : compiler::TNode<Object> tmp116;
2104 : compiler::TNode<JSReceiver> tmp117;
2105 : compiler::TNode<Number> tmp118;
2106 : compiler::TNode<JSReceiver> tmp119;
2107 : compiler::TNode<Object> tmp120;
2108 : compiler::TNode<Number> tmp121;
2109 : ca_.Bind(&block17, &tmp108, &tmp109, &tmp110, &tmp111, &tmp112, &tmp113, &tmp114, &tmp115, &tmp116, &tmp117, &tmp118, &tmp119, &tmp120, &tmp121);
2110 56 : arguments.PopAndReturn(tmp121);
2111 : }
2112 :
2113 56 : if (block16.is_used()) {
2114 : compiler::TNode<Context> tmp122;
2115 : compiler::TNode<Object> tmp123;
2116 : compiler::TNode<RawPtrT> tmp124;
2117 : compiler::TNode<RawPtrT> tmp125;
2118 : compiler::TNode<IntPtrT> tmp126;
2119 : compiler::TNode<JSReceiver> tmp127;
2120 : compiler::TNode<Number> tmp128;
2121 : compiler::TNode<JSReceiver> tmp129;
2122 : compiler::TNode<Object> tmp130;
2123 : compiler::TNode<Smi> tmp131;
2124 : ca_.Bind(&block16, &tmp122, &tmp123, &tmp124, &tmp125, &tmp126, &tmp127, &tmp128, &tmp129, &tmp130, &tmp131);
2125 56 : ca_.SetSourcePosition("../../src/builtins/array-findindex.tq", 151);
2126 56 : ca_.SetSourcePosition("../../src/builtins/array-findindex.tq", 150);
2127 : compiler::TNode<Number> tmp132;
2128 112 : tmp132 = TORQUE_CAST(CodeStubAssembler(state_).CallBuiltin(Builtins::kArrayFindIndexLoopContinuation, tmp122, tmp127, tmp129, tmp130, tmp127, tmp131, tmp128));
2129 : USE(tmp132);
2130 56 : arguments.PopAndReturn(tmp132);
2131 : }
2132 :
2133 56 : if (block4.is_used()) {
2134 : compiler::TNode<Context> tmp133;
2135 : compiler::TNode<Object> tmp134;
2136 : compiler::TNode<RawPtrT> tmp135;
2137 : compiler::TNode<RawPtrT> tmp136;
2138 : compiler::TNode<IntPtrT> tmp137;
2139 : ca_.Bind(&block4, &tmp133, &tmp134, &tmp135, &tmp136, &tmp137);
2140 56 : ca_.SetSourcePosition("../../src/builtins/array-findindex.tq", 155);
2141 : compiler::TNode<IntPtrT> tmp138;
2142 : USE(tmp138);
2143 112 : tmp138 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATintptr17ATconstexpr_int31(0));
2144 : compiler::TNode<Object> tmp139;
2145 : USE(tmp139);
2146 112 : tmp139 = ca_.UncheckedCast<Object>(CodeStubAssembler(state_).GetArgumentValue(BaseBuiltinsFromDSLAssembler::Arguments{compiler::TNode<RawPtrT>{tmp135}, compiler::TNode<RawPtrT>{tmp136}, compiler::TNode<IntPtrT>{tmp137}}, compiler::TNode<IntPtrT>{tmp138}));
2147 112 : CodeStubAssembler(state_).ThrowTypeError(compiler::TNode<Context>{tmp133}, MessageTemplate::kCalledNonCallable, compiler::TNode<Object>{tmp139});
2148 : }
2149 :
2150 56 : if (block2.is_used()) {
2151 : compiler::TNode<Context> tmp140;
2152 : compiler::TNode<Object> tmp141;
2153 : compiler::TNode<RawPtrT> tmp142;
2154 : compiler::TNode<RawPtrT> tmp143;
2155 : compiler::TNode<IntPtrT> tmp144;
2156 : ca_.Bind(&block2, &tmp140, &tmp141, &tmp142, &tmp143, &tmp144);
2157 56 : ca_.SetSourcePosition("../../src/builtins/array-findindex.tq", 158);
2158 112 : CodeStubAssembler(state_).ThrowTypeError(compiler::TNode<Context>{tmp140}, MessageTemplate::kCalledOnNullOrUndefined, "Array.prototype.findIndex");
2159 : }
2160 56 : }
2161 :
2162 : } // namespace internal
2163 59456 : } // namespace v8
2164 :
|