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/builtins/builtins-array-gen.h"
10 : #include "src/builtins/builtins-collections-gen.h"
11 : #include "src/builtins/builtins-data-view-gen.h"
12 : #include "src/builtins/builtins-iterator-gen.h"
13 : #include "src/builtins/builtins-regexp-gen.h"
14 : #include "src/builtins/builtins-typed-array-gen.h"
15 : #include "src/builtins/builtins-constructor-gen.h"
16 : #include "torque-generated/builtins-base-from-dsl-gen.h"
17 : #include "torque-generated/builtins-arguments-from-dsl-gen.h"
18 : #include "torque-generated/builtins-array-from-dsl-gen.h"
19 : #include "torque-generated/builtins-array-copywithin-from-dsl-gen.h"
20 : #include "torque-generated/builtins-array-filter-from-dsl-gen.h"
21 : #include "torque-generated/builtins-array-foreach-from-dsl-gen.h"
22 : #include "torque-generated/builtins-array-join-from-dsl-gen.h"
23 : #include "torque-generated/builtins-array-lastindexof-from-dsl-gen.h"
24 : #include "torque-generated/builtins-array-of-from-dsl-gen.h"
25 : #include "torque-generated/builtins-array-map-from-dsl-gen.h"
26 : #include "torque-generated/builtins-array-reverse-from-dsl-gen.h"
27 : #include "torque-generated/builtins-array-slice-from-dsl-gen.h"
28 : #include "torque-generated/builtins-array-splice-from-dsl-gen.h"
29 : #include "torque-generated/builtins-array-unshift-from-dsl-gen.h"
30 : #include "torque-generated/builtins-collections-from-dsl-gen.h"
31 : #include "torque-generated/builtins-data-view-from-dsl-gen.h"
32 : #include "torque-generated/builtins-extras-utils-from-dsl-gen.h"
33 : #include "torque-generated/builtins-object-from-dsl-gen.h"
34 : #include "torque-generated/builtins-iterator-from-dsl-gen.h"
35 : #include "torque-generated/builtins-string-from-dsl-gen.h"
36 : #include "torque-generated/builtins-typed-array-from-dsl-gen.h"
37 : #include "torque-generated/builtins-typed-array-createtypedarray-from-dsl-gen.h"
38 : #include "torque-generated/builtins-test-from-dsl-gen.h"
39 :
40 : namespace v8 {
41 : namespace internal {
42 :
43 392 : TF_BUILTIN(LoadJoinElement20ATDictionaryElements, CodeStubAssembler) {
44 56 : compiler::CodeAssemblerState* state_ = state(); compiler::CodeAssembler ca_(state());
45 56 : TNode<Context> parameter0 = UncheckedCast<Context>(Parameter(Descriptor::kContext));
46 56 : USE(parameter0);
47 56 : compiler::TNode<JSReceiver> parameter1 = UncheckedCast<JSReceiver>(Parameter(Descriptor::kReceiver));
48 56 : USE(parameter1);
49 56 : compiler::TNode<Number> parameter2 = UncheckedCast<Number>(Parameter(Descriptor::kK));
50 56 : USE(parameter2);
51 112 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
52 112 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, JSArray, NumberDictionary, NumberDictionary, IntPtrT> block6(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
53 112 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, JSArray, NumberDictionary, NumberDictionary, IntPtrT> block7(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
54 112 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, JSArray, NumberDictionary, NumberDictionary, IntPtrT, Object> block5(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
55 112 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, JSArray, NumberDictionary> block4(&ca_, compiler::CodeAssemblerLabel::kDeferred);
56 112 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, JSArray, NumberDictionary> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
57 56 : ca_.Goto(&block0, parameter0, parameter1, parameter2);
58 :
59 56 : if (block0.is_used()) {
60 56 : compiler::TNode<Context> tmp0;
61 56 : compiler::TNode<JSReceiver> tmp1;
62 56 : compiler::TNode<Number> tmp2;
63 56 : ca_.Bind(&block0, &tmp0, &tmp1, &tmp2);
64 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 21);
65 56 : compiler::TNode<JSArray> tmp3;
66 56 : USE(tmp3);
67 56 : tmp3 = ca_.UncheckedCast<JSArray>(BaseBuiltinsFromDSLAssembler(state_).UnsafeCast7JSArray(compiler::TNode<Context>{tmp0}, compiler::TNode<Object>{tmp1}));
68 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 22);
69 56 : compiler::TNode<FixedArrayBase> tmp4;
70 56 : USE(tmp4);
71 56 : tmp4 = ca_.UncheckedCast<FixedArrayBase>(BaseBuiltinsFromDSLAssembler(state_).LoadJSObjectElements(compiler::TNode<JSObject>{tmp3}));
72 56 : compiler::TNode<NumberDictionary> tmp5;
73 56 : USE(tmp5);
74 56 : tmp5 = ca_.UncheckedCast<NumberDictionary>(BaseBuiltinsFromDSLAssembler(state_).UnsafeCast18ATNumberDictionary(compiler::TNode<Context>{tmp0}, compiler::TNode<Object>{tmp4}));
75 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 24);
76 56 : compiler::TNode<UintPtrT> tmp6;
77 56 : USE(tmp6);
78 56 : tmp6 = ca_.UncheckedCast<UintPtrT>(BaseBuiltinsFromDSLAssembler(state_).Convert9ATuintptr22UT12ATHeapNumber5ATSmi(compiler::TNode<Number>{tmp2}));
79 56 : compiler::TNode<IntPtrT> tmp7;
80 56 : USE(tmp7);
81 56 : tmp7 = ca_.UncheckedCast<IntPtrT>(CodeStubAssembler(state_).Signed(compiler::TNode<UintPtrT>{tmp6}));
82 56 : compiler::TNode<Object> tmp8;
83 56 : USE(tmp8);
84 56 : compiler::CodeAssemblerLabel label0(&ca_);
85 112 : compiler::CodeAssemblerLabel label1(&ca_);
86 56 : tmp8 = CodeStubAssembler(state_).BasicLoadNumberDictionaryElement(compiler::TNode<NumberDictionary>{tmp5}, compiler::TNode<IntPtrT>{tmp7}, &label0, &label1);
87 56 : ca_.Goto(&block5, tmp0, tmp1, tmp2, tmp3, tmp5, tmp5, tmp7, tmp8);
88 56 : if (label0.is_used()) {
89 56 : ca_.Bind(&label0);
90 56 : ca_.Goto(&block6, tmp0, tmp1, tmp2, tmp3, tmp5, tmp5, tmp7);
91 : }
92 56 : if (label1.is_used()) {
93 56 : ca_.Bind(&label1);
94 56 : ca_.Goto(&block7, tmp0, tmp1, tmp2, tmp3, tmp5, tmp5, tmp7);
95 56 : }
96 : }
97 :
98 56 : if (block6.is_used()) {
99 56 : compiler::TNode<Context> tmp9;
100 56 : compiler::TNode<JSReceiver> tmp10;
101 56 : compiler::TNode<Number> tmp11;
102 56 : compiler::TNode<JSArray> tmp12;
103 56 : compiler::TNode<NumberDictionary> tmp13;
104 56 : compiler::TNode<NumberDictionary> tmp14;
105 56 : compiler::TNode<IntPtrT> tmp15;
106 56 : ca_.Bind(&block6, &tmp9, &tmp10, &tmp11, &tmp12, &tmp13, &tmp14, &tmp15);
107 56 : ca_.Goto(&block4, tmp9, tmp10, tmp11, tmp12, tmp13);
108 : }
109 :
110 56 : if (block7.is_used()) {
111 56 : compiler::TNode<Context> tmp16;
112 56 : compiler::TNode<JSReceiver> tmp17;
113 56 : compiler::TNode<Number> tmp18;
114 56 : compiler::TNode<JSArray> tmp19;
115 56 : compiler::TNode<NumberDictionary> tmp20;
116 56 : compiler::TNode<NumberDictionary> tmp21;
117 56 : compiler::TNode<IntPtrT> tmp22;
118 56 : ca_.Bind(&block7, &tmp16, &tmp17, &tmp18, &tmp19, &tmp20, &tmp21, &tmp22);
119 56 : ca_.Goto(&block2, tmp16, tmp17, tmp18, tmp19, tmp20);
120 : }
121 :
122 56 : if (block5.is_used()) {
123 56 : compiler::TNode<Context> tmp23;
124 56 : compiler::TNode<JSReceiver> tmp24;
125 56 : compiler::TNode<Number> tmp25;
126 56 : compiler::TNode<JSArray> tmp26;
127 56 : compiler::TNode<NumberDictionary> tmp27;
128 56 : compiler::TNode<NumberDictionary> tmp28;
129 56 : compiler::TNode<IntPtrT> tmp29;
130 56 : compiler::TNode<Object> tmp30;
131 56 : ca_.Bind(&block5, &tmp23, &tmp24, &tmp25, &tmp26, &tmp27, &tmp28, &tmp29, &tmp30);
132 56 : CodeStubAssembler(state_).Return(tmp30);
133 : }
134 :
135 56 : if (block4.is_used()) {
136 56 : compiler::TNode<Context> tmp31;
137 56 : compiler::TNode<JSReceiver> tmp32;
138 56 : compiler::TNode<Number> tmp33;
139 56 : compiler::TNode<JSArray> tmp34;
140 56 : compiler::TNode<NumberDictionary> tmp35;
141 56 : ca_.Bind(&block4, &tmp31, &tmp32, &tmp33, &tmp34, &tmp35);
142 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 28);
143 56 : compiler::TNode<Object> tmp36;
144 56 : USE(tmp36);
145 56 : tmp36 = ca_.UncheckedCast<Object>(CodeStubAssembler(state_).GetProperty(compiler::TNode<Context>{tmp31}, compiler::TNode<Object>{tmp32}, compiler::TNode<Object>{tmp33}));
146 56 : CodeStubAssembler(state_).Return(tmp36);
147 : }
148 :
149 56 : if (block2.is_used()) {
150 56 : compiler::TNode<Context> tmp37;
151 56 : compiler::TNode<JSReceiver> tmp38;
152 56 : compiler::TNode<Number> tmp39;
153 56 : compiler::TNode<JSArray> tmp40;
154 56 : compiler::TNode<NumberDictionary> tmp41;
155 56 : ca_.Bind(&block2, &tmp37, &tmp38, &tmp39, &tmp40, &tmp41);
156 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 31);
157 56 : compiler::TNode<String> tmp42;
158 56 : USE(tmp42);
159 56 : tmp42 = BaseBuiltinsFromDSLAssembler(state_).kEmptyString();
160 56 : CodeStubAssembler(state_).Return(tmp42);
161 56 : }
162 56 : }
163 :
164 392 : TF_BUILTIN(LoadJoinElement25ATFastSmiOrObjectElements, CodeStubAssembler) {
165 56 : compiler::CodeAssemblerState* state_ = state(); compiler::CodeAssembler ca_(state());
166 56 : TNode<Context> parameter0 = UncheckedCast<Context>(Parameter(Descriptor::kContext));
167 56 : USE(parameter0);
168 56 : compiler::TNode<JSReceiver> parameter1 = UncheckedCast<JSReceiver>(Parameter(Descriptor::kReceiver));
169 56 : USE(parameter1);
170 56 : compiler::TNode<Number> parameter2 = UncheckedCast<Number>(Parameter(Descriptor::kK));
171 56 : USE(parameter2);
172 112 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
173 112 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, JSArray, FixedArray, Object> block1(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
174 112 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, JSArray, FixedArray, Object> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
175 112 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, JSArray, FixedArray, Object, String> block4(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
176 112 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, JSArray, FixedArray, Object, Object> block3(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
177 56 : ca_.Goto(&block0, parameter0, parameter1, parameter2);
178 :
179 56 : if (block0.is_used()) {
180 56 : compiler::TNode<Context> tmp0;
181 56 : compiler::TNode<JSReceiver> tmp1;
182 56 : compiler::TNode<Number> tmp2;
183 56 : ca_.Bind(&block0, &tmp0, &tmp1, &tmp2);
184 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 37);
185 56 : compiler::TNode<JSArray> tmp3;
186 56 : USE(tmp3);
187 56 : tmp3 = ca_.UncheckedCast<JSArray>(BaseBuiltinsFromDSLAssembler(state_).UnsafeCast7JSArray(compiler::TNode<Context>{tmp0}, compiler::TNode<Object>{tmp1}));
188 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 38);
189 56 : compiler::TNode<FixedArrayBase> tmp4;
190 56 : USE(tmp4);
191 56 : tmp4 = ca_.UncheckedCast<FixedArrayBase>(BaseBuiltinsFromDSLAssembler(state_).LoadJSObjectElements(compiler::TNode<JSObject>{tmp3}));
192 56 : compiler::TNode<FixedArray> tmp5;
193 56 : USE(tmp5);
194 56 : tmp5 = ca_.UncheckedCast<FixedArray>(BaseBuiltinsFromDSLAssembler(state_).UnsafeCast10FixedArray(compiler::TNode<Context>{tmp0}, compiler::TNode<Object>{tmp4}));
195 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 39);
196 56 : compiler::TNode<Smi> tmp6;
197 56 : USE(tmp6);
198 56 : tmp6 = ca_.UncheckedCast<Smi>(BaseBuiltinsFromDSLAssembler(state_).UnsafeCast5ATSmi(compiler::TNode<Context>{tmp0}, compiler::TNode<Object>{tmp2}));
199 56 : compiler::TNode<Object> tmp7;
200 56 : USE(tmp7);
201 56 : tmp7 = ca_.UncheckedCast<Object>(CodeStubAssembler(state_).LoadFixedArrayElement(compiler::TNode<FixedArray>{tmp5}, compiler::TNode<Smi>{tmp6}));
202 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 40);
203 56 : compiler::TNode<Oddball> tmp8;
204 56 : USE(tmp8);
205 56 : tmp8 = BaseBuiltinsFromDSLAssembler(state_).Hole();
206 56 : compiler::TNode<BoolT> tmp9;
207 56 : USE(tmp9);
208 56 : tmp9 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).WordEqual(compiler::TNode<Object>{tmp7}, compiler::TNode<HeapObject>{tmp8}));
209 56 : ca_.Branch(tmp9, &block1, &block2, tmp0, tmp1, tmp2, tmp3, tmp5, tmp7);
210 : }
211 :
212 56 : if (block1.is_used()) {
213 56 : compiler::TNode<Context> tmp10;
214 56 : compiler::TNode<JSReceiver> tmp11;
215 56 : compiler::TNode<Number> tmp12;
216 56 : compiler::TNode<JSArray> tmp13;
217 56 : compiler::TNode<FixedArray> tmp14;
218 56 : compiler::TNode<Object> tmp15;
219 56 : ca_.Bind(&block1, &tmp10, &tmp11, &tmp12, &tmp13, &tmp14, &tmp15);
220 56 : compiler::TNode<String> tmp16;
221 56 : USE(tmp16);
222 56 : tmp16 = BaseBuiltinsFromDSLAssembler(state_).kEmptyString();
223 56 : ca_.Goto(&block4, tmp10, tmp11, tmp12, tmp13, tmp14, tmp15, tmp16);
224 : }
225 :
226 56 : if (block2.is_used()) {
227 56 : compiler::TNode<Context> tmp17;
228 56 : compiler::TNode<JSReceiver> tmp18;
229 56 : compiler::TNode<Number> tmp19;
230 56 : compiler::TNode<JSArray> tmp20;
231 56 : compiler::TNode<FixedArray> tmp21;
232 56 : compiler::TNode<Object> tmp22;
233 56 : ca_.Bind(&block2, &tmp17, &tmp18, &tmp19, &tmp20, &tmp21, &tmp22);
234 56 : ca_.Goto(&block3, tmp17, tmp18, tmp19, tmp20, tmp21, tmp22, tmp22);
235 : }
236 :
237 56 : if (block4.is_used()) {
238 56 : compiler::TNode<Context> tmp23;
239 56 : compiler::TNode<JSReceiver> tmp24;
240 56 : compiler::TNode<Number> tmp25;
241 56 : compiler::TNode<JSArray> tmp26;
242 56 : compiler::TNode<FixedArray> tmp27;
243 56 : compiler::TNode<Object> tmp28;
244 56 : compiler::TNode<String> tmp29;
245 56 : ca_.Bind(&block4, &tmp23, &tmp24, &tmp25, &tmp26, &tmp27, &tmp28, &tmp29);
246 56 : ca_.Goto(&block3, tmp23, tmp24, tmp25, tmp26, tmp27, tmp28, tmp29);
247 : }
248 :
249 56 : if (block3.is_used()) {
250 56 : compiler::TNode<Context> tmp30;
251 56 : compiler::TNode<JSReceiver> tmp31;
252 56 : compiler::TNode<Number> tmp32;
253 56 : compiler::TNode<JSArray> tmp33;
254 56 : compiler::TNode<FixedArray> tmp34;
255 56 : compiler::TNode<Object> tmp35;
256 56 : compiler::TNode<Object> tmp36;
257 56 : ca_.Bind(&block3, &tmp30, &tmp31, &tmp32, &tmp33, &tmp34, &tmp35, &tmp36);
258 56 : CodeStubAssembler(state_).Return(tmp36);
259 56 : }
260 56 : }
261 :
262 392 : TF_BUILTIN(LoadJoinElement20ATFastDoubleElements, CodeStubAssembler) {
263 56 : compiler::CodeAssemblerState* state_ = state(); compiler::CodeAssembler ca_(state());
264 56 : TNode<Context> parameter0 = UncheckedCast<Context>(Parameter(Descriptor::kContext));
265 56 : USE(parameter0);
266 56 : compiler::TNode<JSReceiver> parameter1 = UncheckedCast<JSReceiver>(Parameter(Descriptor::kReceiver));
267 56 : USE(parameter1);
268 56 : compiler::TNode<Number> parameter2 = UncheckedCast<Number>(Parameter(Descriptor::kK));
269 56 : USE(parameter2);
270 112 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
271 112 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, JSArray, FixedDoubleArray, FixedDoubleArray, Smi> block4(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
272 112 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, JSArray, FixedDoubleArray, FixedDoubleArray, Smi, Float64T> block3(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
273 112 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, JSArray, FixedDoubleArray> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
274 112 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, JSArray, FixedDoubleArray, Float64T> block1(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
275 56 : ca_.Goto(&block0, parameter0, parameter1, parameter2);
276 :
277 56 : if (block0.is_used()) {
278 56 : compiler::TNode<Context> tmp0;
279 56 : compiler::TNode<JSReceiver> tmp1;
280 56 : compiler::TNode<Number> tmp2;
281 56 : ca_.Bind(&block0, &tmp0, &tmp1, &tmp2);
282 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 45);
283 56 : compiler::TNode<JSArray> tmp3;
284 56 : USE(tmp3);
285 56 : tmp3 = ca_.UncheckedCast<JSArray>(BaseBuiltinsFromDSLAssembler(state_).UnsafeCast7JSArray(compiler::TNode<Context>{tmp0}, compiler::TNode<Object>{tmp1}));
286 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 47);
287 56 : compiler::TNode<FixedArrayBase> tmp4;
288 56 : USE(tmp4);
289 56 : tmp4 = ca_.UncheckedCast<FixedArrayBase>(BaseBuiltinsFromDSLAssembler(state_).LoadJSObjectElements(compiler::TNode<JSObject>{tmp3}));
290 56 : compiler::TNode<FixedDoubleArray> tmp5;
291 56 : USE(tmp5);
292 56 : tmp5 = ca_.UncheckedCast<FixedDoubleArray>(BaseBuiltinsFromDSLAssembler(state_).UnsafeCast16FixedDoubleArray(compiler::TNode<Context>{tmp0}, compiler::TNode<Object>{tmp4}));
293 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 46);
294 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 49);
295 56 : compiler::TNode<Smi> tmp6;
296 56 : USE(tmp6);
297 56 : tmp6 = ca_.UncheckedCast<Smi>(BaseBuiltinsFromDSLAssembler(state_).UnsafeCast5ATSmi(compiler::TNode<Context>{tmp0}, compiler::TNode<Object>{tmp2}));
298 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 48);
299 56 : compiler::TNode<Float64T> tmp7;
300 56 : USE(tmp7);
301 56 : compiler::CodeAssemblerLabel label0(&ca_);
302 56 : tmp7 = CodeStubAssembler(state_).LoadDoubleWithHoleCheck(compiler::TNode<FixedDoubleArray>{tmp5}, compiler::TNode<Smi>{tmp6}, &label0);
303 56 : ca_.Goto(&block3, tmp0, tmp1, tmp2, tmp3, tmp5, tmp5, tmp6, tmp7);
304 56 : if (label0.is_used()) {
305 56 : ca_.Bind(&label0);
306 56 : ca_.Goto(&block4, tmp0, tmp1, tmp2, tmp3, tmp5, tmp5, tmp6);
307 56 : }
308 : }
309 :
310 56 : if (block4.is_used()) {
311 56 : compiler::TNode<Context> tmp8;
312 56 : compiler::TNode<JSReceiver> tmp9;
313 56 : compiler::TNode<Number> tmp10;
314 56 : compiler::TNode<JSArray> tmp11;
315 56 : compiler::TNode<FixedDoubleArray> tmp12;
316 56 : compiler::TNode<FixedDoubleArray> tmp13;
317 56 : compiler::TNode<Smi> tmp14;
318 56 : ca_.Bind(&block4, &tmp8, &tmp9, &tmp10, &tmp11, &tmp12, &tmp13, &tmp14);
319 56 : ca_.Goto(&block2, tmp8, tmp9, tmp10, tmp11, tmp12);
320 : }
321 :
322 56 : if (block3.is_used()) {
323 56 : compiler::TNode<Context> tmp15;
324 56 : compiler::TNode<JSReceiver> tmp16;
325 56 : compiler::TNode<Number> tmp17;
326 56 : compiler::TNode<JSArray> tmp18;
327 56 : compiler::TNode<FixedDoubleArray> tmp19;
328 56 : compiler::TNode<FixedDoubleArray> tmp20;
329 56 : compiler::TNode<Smi> tmp21;
330 56 : compiler::TNode<Float64T> tmp22;
331 56 : ca_.Bind(&block3, &tmp15, &tmp16, &tmp17, &tmp18, &tmp19, &tmp20, &tmp21, &tmp22);
332 56 : ca_.Goto(&block1, tmp15, tmp16, tmp17, tmp18, tmp19, tmp22);
333 : }
334 :
335 56 : if (block2.is_used()) {
336 56 : compiler::TNode<Context> tmp23;
337 56 : compiler::TNode<JSReceiver> tmp24;
338 56 : compiler::TNode<Number> tmp25;
339 56 : compiler::TNode<JSArray> tmp26;
340 56 : compiler::TNode<FixedDoubleArray> tmp27;
341 56 : ca_.Bind(&block2, &tmp23, &tmp24, &tmp25, &tmp26, &tmp27);
342 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 49);
343 56 : compiler::TNode<String> tmp28;
344 56 : USE(tmp28);
345 56 : tmp28 = BaseBuiltinsFromDSLAssembler(state_).kEmptyString();
346 56 : CodeStubAssembler(state_).Return(tmp28);
347 : }
348 :
349 56 : if (block1.is_used()) {
350 56 : compiler::TNode<Context> tmp29;
351 56 : compiler::TNode<JSReceiver> tmp30;
352 56 : compiler::TNode<Number> tmp31;
353 56 : compiler::TNode<JSArray> tmp32;
354 56 : compiler::TNode<FixedDoubleArray> tmp33;
355 56 : compiler::TNode<Float64T> tmp34;
356 56 : ca_.Bind(&block1, &tmp29, &tmp30, &tmp31, &tmp32, &tmp33, &tmp34);
357 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 48);
358 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 50);
359 56 : compiler::TNode<HeapNumber> tmp35;
360 56 : USE(tmp35);
361 56 : tmp35 = ca_.UncheckedCast<HeapNumber>(CodeStubAssembler(state_).AllocateHeapNumberWithValue(compiler::TNode<Float64T>{tmp34}));
362 56 : CodeStubAssembler(state_).Return(tmp35);
363 56 : }
364 56 : }
365 :
366 448 : TF_BUILTIN(ConvertToLocaleString, CodeStubAssembler) {
367 56 : compiler::CodeAssemblerState* state_ = state(); compiler::CodeAssembler ca_(state());
368 56 : TNode<Context> parameter0 = UncheckedCast<Context>(Parameter(Descriptor::kContext));
369 56 : USE(parameter0);
370 56 : compiler::TNode<Object> parameter1 = UncheckedCast<Object>(Parameter(Descriptor::kElement));
371 56 : USE(parameter1);
372 56 : compiler::TNode<Object> parameter2 = UncheckedCast<Object>(Parameter(Descriptor::kLocales));
373 56 : USE(parameter2);
374 56 : compiler::TNode<Object> parameter3 = UncheckedCast<Object>(Parameter(Descriptor::kOptions));
375 56 : USE(parameter3);
376 112 : compiler::CodeAssemblerParameterizedLabel<Context, Object, Object, Object> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
377 112 : compiler::CodeAssemblerParameterizedLabel<Context, Object, Object, Object> block1(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
378 112 : compiler::CodeAssemblerParameterizedLabel<Context, Object, Object, Object> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
379 112 : compiler::CodeAssemblerParameterizedLabel<Context, Object, Object, Object, Object, Object> block6(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
380 112 : compiler::CodeAssemblerParameterizedLabel<Context, Object, Object, Object, Object, Object, JSReceiver> block5(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
381 112 : compiler::CodeAssemblerParameterizedLabel<Context, Object, Object, Object, Object, JSReceiver, Object> block7(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
382 112 : compiler::CodeAssemblerParameterizedLabel<Context, Object, Object, Object, Object, JSReceiver, Object> block8(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
383 112 : compiler::CodeAssemblerParameterizedLabel<Context, Object, Object, Object, Object, JSReceiver, Object> block10(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
384 112 : compiler::CodeAssemblerParameterizedLabel<Context, Object, Object, Object, Object, JSReceiver, Object> block11(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
385 112 : compiler::CodeAssemblerParameterizedLabel<Context, Object, Object, Object, Object, JSReceiver, Object> block12(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
386 112 : compiler::CodeAssemblerParameterizedLabel<Context, Object, Object, Object, Object, JSReceiver, Object> block9(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
387 112 : compiler::CodeAssemblerParameterizedLabel<Context, Object, Object, Object, Object> block4(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
388 56 : ca_.Goto(&block0, parameter0, parameter1, parameter2, parameter3);
389 :
390 56 : if (block0.is_used()) {
391 56 : compiler::TNode<Context> tmp0;
392 56 : compiler::TNode<Object> tmp1;
393 56 : compiler::TNode<Object> tmp2;
394 56 : compiler::TNode<Object> tmp3;
395 56 : ca_.Bind(&block0, &tmp0, &tmp1, &tmp2, &tmp3);
396 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 65);
397 56 : compiler::TNode<BoolT> tmp4;
398 56 : USE(tmp4);
399 56 : tmp4 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).IsNullOrUndefined(compiler::TNode<Object>{tmp1}));
400 56 : ca_.Branch(tmp4, &block1, &block2, tmp0, tmp1, tmp2, tmp3);
401 : }
402 :
403 56 : if (block1.is_used()) {
404 56 : compiler::TNode<Context> tmp5;
405 56 : compiler::TNode<Object> tmp6;
406 56 : compiler::TNode<Object> tmp7;
407 56 : compiler::TNode<Object> tmp8;
408 56 : ca_.Bind(&block1, &tmp5, &tmp6, &tmp7, &tmp8);
409 56 : compiler::TNode<String> tmp9;
410 56 : USE(tmp9);
411 56 : tmp9 = BaseBuiltinsFromDSLAssembler(state_).kEmptyString();
412 56 : CodeStubAssembler(state_).Return(tmp9);
413 : }
414 :
415 56 : if (block2.is_used()) {
416 56 : compiler::TNode<Context> tmp10;
417 56 : compiler::TNode<Object> tmp11;
418 56 : compiler::TNode<Object> tmp12;
419 56 : compiler::TNode<Object> tmp13;
420 56 : ca_.Bind(&block2, &tmp10, &tmp11, &tmp12, &tmp13);
421 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 67);
422 56 : compiler::TNode<Object> tmp14;
423 56 : USE(tmp14);
424 56 : tmp14 = ca_.UncheckedCast<Object>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr20UT5ATSmi10HeapObject18ATconstexpr_string("toLocaleString"));
425 56 : compiler::TNode<Object> tmp15;
426 56 : USE(tmp15);
427 56 : tmp15 = ca_.UncheckedCast<Object>(CodeStubAssembler(state_).GetProperty(compiler::TNode<Context>{tmp10}, compiler::TNode<Object>{tmp11}, compiler::TNode<Object>{tmp14}));
428 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 69);
429 56 : compiler::TNode<JSReceiver> tmp16;
430 56 : USE(tmp16);
431 56 : compiler::CodeAssemblerLabel label0(&ca_);
432 56 : tmp16 = BaseBuiltinsFromDSLAssembler(state_).Cast41UT9ATJSProxy15JSBoundFunction10JSFunction(compiler::TNode<Context>{tmp10}, compiler::TNode<Object>{tmp15}, &label0);
433 56 : ca_.Goto(&block5, tmp10, tmp11, tmp12, tmp13, tmp15, tmp15, tmp16);
434 56 : if (label0.is_used()) {
435 56 : ca_.Bind(&label0);
436 56 : ca_.Goto(&block6, tmp10, tmp11, tmp12, tmp13, tmp15, tmp15);
437 56 : }
438 : }
439 :
440 56 : if (block6.is_used()) {
441 56 : compiler::TNode<Context> tmp17;
442 56 : compiler::TNode<Object> tmp18;
443 56 : compiler::TNode<Object> tmp19;
444 56 : compiler::TNode<Object> tmp20;
445 56 : compiler::TNode<Object> tmp21;
446 56 : compiler::TNode<Object> tmp22;
447 56 : ca_.Bind(&block6, &tmp17, &tmp18, &tmp19, &tmp20, &tmp21, &tmp22);
448 56 : ca_.Goto(&block4, tmp17, tmp18, tmp19, tmp20, tmp21);
449 : }
450 :
451 56 : if (block5.is_used()) {
452 56 : compiler::TNode<Context> tmp23;
453 56 : compiler::TNode<Object> tmp24;
454 56 : compiler::TNode<Object> tmp25;
455 56 : compiler::TNode<Object> tmp26;
456 56 : compiler::TNode<Object> tmp27;
457 56 : compiler::TNode<Object> tmp28;
458 56 : compiler::TNode<JSReceiver> tmp29;
459 56 : ca_.Bind(&block5, &tmp23, &tmp24, &tmp25, &tmp26, &tmp27, &tmp28, &tmp29);
460 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 70);
461 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 71);
462 56 : compiler::TNode<BoolT> tmp30;
463 56 : USE(tmp30);
464 56 : tmp30 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).IsNullOrUndefined(compiler::TNode<Object>{tmp25}));
465 56 : ca_.Branch(tmp30, &block7, &block8, tmp23, tmp24, tmp25, tmp26, tmp27, tmp29, ca_.Uninitialized<Object>());
466 : }
467 :
468 56 : if (block7.is_used()) {
469 56 : compiler::TNode<Context> tmp31;
470 56 : compiler::TNode<Object> tmp32;
471 56 : compiler::TNode<Object> tmp33;
472 56 : compiler::TNode<Object> tmp34;
473 56 : compiler::TNode<Object> tmp35;
474 56 : compiler::TNode<JSReceiver> tmp36;
475 56 : compiler::TNode<Object> tmp37;
476 56 : ca_.Bind(&block7, &tmp31, &tmp32, &tmp33, &tmp34, &tmp35, &tmp36, &tmp37);
477 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 72);
478 56 : compiler::TNode<Object> tmp38;
479 56 : USE(tmp38);
480 56 : tmp38 = ca_.UncheckedCast<Object>(CodeStubAssembler(state_).Call(compiler::TNode<Context>{tmp31}, compiler::TNode<JSReceiver>{tmp36}, compiler::TNode<Object>{tmp32}));
481 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 71);
482 56 : ca_.Goto(&block9, tmp31, tmp32, tmp33, tmp34, tmp35, tmp36, tmp38);
483 : }
484 :
485 56 : if (block8.is_used()) {
486 56 : compiler::TNode<Context> tmp39;
487 56 : compiler::TNode<Object> tmp40;
488 56 : compiler::TNode<Object> tmp41;
489 56 : compiler::TNode<Object> tmp42;
490 56 : compiler::TNode<Object> tmp43;
491 56 : compiler::TNode<JSReceiver> tmp44;
492 56 : compiler::TNode<Object> tmp45;
493 56 : ca_.Bind(&block8, &tmp39, &tmp40, &tmp41, &tmp42, &tmp43, &tmp44, &tmp45);
494 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 73);
495 56 : compiler::TNode<BoolT> tmp46;
496 56 : USE(tmp46);
497 56 : tmp46 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).IsNullOrUndefined(compiler::TNode<Object>{tmp42}));
498 56 : ca_.Branch(tmp46, &block10, &block11, tmp39, tmp40, tmp41, tmp42, tmp43, tmp44, tmp45);
499 : }
500 :
501 56 : if (block10.is_used()) {
502 56 : compiler::TNode<Context> tmp47;
503 56 : compiler::TNode<Object> tmp48;
504 56 : compiler::TNode<Object> tmp49;
505 56 : compiler::TNode<Object> tmp50;
506 56 : compiler::TNode<Object> tmp51;
507 56 : compiler::TNode<JSReceiver> tmp52;
508 56 : compiler::TNode<Object> tmp53;
509 56 : ca_.Bind(&block10, &tmp47, &tmp48, &tmp49, &tmp50, &tmp51, &tmp52, &tmp53);
510 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 74);
511 56 : compiler::TNode<Object> tmp54;
512 56 : USE(tmp54);
513 56 : tmp54 = ca_.UncheckedCast<Object>(CodeStubAssembler(state_).Call(compiler::TNode<Context>{tmp47}, compiler::TNode<JSReceiver>{tmp52}, compiler::TNode<Object>{tmp48}, compiler::TNode<Object>{tmp49}));
514 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 73);
515 56 : ca_.Goto(&block12, tmp47, tmp48, tmp49, tmp50, tmp51, tmp52, tmp54);
516 : }
517 :
518 56 : if (block11.is_used()) {
519 56 : compiler::TNode<Context> tmp55;
520 56 : compiler::TNode<Object> tmp56;
521 56 : compiler::TNode<Object> tmp57;
522 56 : compiler::TNode<Object> tmp58;
523 56 : compiler::TNode<Object> tmp59;
524 56 : compiler::TNode<JSReceiver> tmp60;
525 56 : compiler::TNode<Object> tmp61;
526 56 : ca_.Bind(&block11, &tmp55, &tmp56, &tmp57, &tmp58, &tmp59, &tmp60, &tmp61);
527 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 76);
528 56 : compiler::TNode<Object> tmp62;
529 56 : USE(tmp62);
530 56 : tmp62 = ca_.UncheckedCast<Object>(CodeStubAssembler(state_).Call(compiler::TNode<Context>{tmp55}, compiler::TNode<JSReceiver>{tmp60}, compiler::TNode<Object>{tmp56}, compiler::TNode<Object>{tmp57}, compiler::TNode<Object>{tmp58}));
531 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 73);
532 56 : ca_.Goto(&block12, tmp55, tmp56, tmp57, tmp58, tmp59, tmp60, tmp62);
533 : }
534 :
535 56 : if (block12.is_used()) {
536 56 : compiler::TNode<Context> tmp63;
537 56 : compiler::TNode<Object> tmp64;
538 56 : compiler::TNode<Object> tmp65;
539 56 : compiler::TNode<Object> tmp66;
540 56 : compiler::TNode<Object> tmp67;
541 56 : compiler::TNode<JSReceiver> tmp68;
542 56 : compiler::TNode<Object> tmp69;
543 56 : ca_.Bind(&block12, &tmp63, &tmp64, &tmp65, &tmp66, &tmp67, &tmp68, &tmp69);
544 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 71);
545 56 : ca_.Goto(&block9, tmp63, tmp64, tmp65, tmp66, tmp67, tmp68, tmp69);
546 : }
547 :
548 56 : if (block9.is_used()) {
549 56 : compiler::TNode<Context> tmp70;
550 56 : compiler::TNode<Object> tmp71;
551 56 : compiler::TNode<Object> tmp72;
552 56 : compiler::TNode<Object> tmp73;
553 56 : compiler::TNode<Object> tmp74;
554 56 : compiler::TNode<JSReceiver> tmp75;
555 56 : compiler::TNode<Object> tmp76;
556 56 : ca_.Bind(&block9, &tmp70, &tmp71, &tmp72, &tmp73, &tmp74, &tmp75, &tmp76);
557 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 78);
558 56 : compiler::TNode<String> tmp77;
559 56 : USE(tmp77);
560 56 : tmp77 = ca_.UncheckedCast<String>(CodeStubAssembler(state_).ToString_Inline(compiler::TNode<Context>{tmp70}, compiler::TNode<Object>{tmp76}));
561 56 : CodeStubAssembler(state_).Return(tmp77);
562 : }
563 :
564 56 : if (block4.is_used()) {
565 56 : compiler::TNode<Context> tmp78;
566 56 : compiler::TNode<Object> tmp79;
567 56 : compiler::TNode<Object> tmp80;
568 56 : compiler::TNode<Object> tmp81;
569 56 : compiler::TNode<Object> tmp82;
570 56 : ca_.Bind(&block4, &tmp78, &tmp79, &tmp80, &tmp81, &tmp82);
571 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 81);
572 56 : CodeStubAssembler(state_).ThrowTypeError(compiler::TNode<Context>{tmp78}, MessageTemplate::kCalledNonCallable, compiler::TNode<Object>{tmp82});
573 56 : }
574 56 : }
575 :
576 112 : void ArrayJoinBuiltinsFromDSLAssembler::CannotUseSameArrayAccessor7JSArray(compiler::TNode<Context> p_context, compiler::TNode<BuiltinPtr> p_loadFn, compiler::TNode<JSReceiver> p_receiver, compiler::TNode<Map> p_originalMap, compiler::TNode<Number> p_originalLen, compiler::CodeAssemblerLabel* label_Cannot, compiler::CodeAssemblerLabel* label_Can) {
577 112 : compiler::CodeAssemblerParameterizedLabel<Context, BuiltinPtr, JSReceiver, Map, Number> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
578 224 : compiler::CodeAssemblerParameterizedLabel<Context, BuiltinPtr, JSReceiver, Map, Number> block3(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
579 224 : compiler::CodeAssemblerParameterizedLabel<Context, BuiltinPtr, JSReceiver, Map, Number> block4(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
580 224 : compiler::CodeAssemblerParameterizedLabel<Context, BuiltinPtr, JSReceiver, Map, Number, JSArray> block5(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
581 224 : compiler::CodeAssemblerParameterizedLabel<Context, BuiltinPtr, JSReceiver, Map, Number, JSArray> block6(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
582 224 : compiler::CodeAssemblerParameterizedLabel<Context, BuiltinPtr, JSReceiver, Map, Number, JSArray> block7(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
583 224 : compiler::CodeAssemblerParameterizedLabel<Context, BuiltinPtr, JSReceiver, Map, Number, JSArray> block8(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
584 224 : compiler::CodeAssemblerParameterizedLabel<Context, BuiltinPtr, JSReceiver, Map, Number, JSArray> block9(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
585 224 : compiler::CodeAssemblerParameterizedLabel<Context, BuiltinPtr, JSReceiver, Map, Number, JSArray> block10(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
586 224 : compiler::CodeAssemblerParameterizedLabel<> block1(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
587 224 : compiler::CodeAssemblerParameterizedLabel<> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
588 112 : ca_.Goto(&block0, p_context, p_loadFn, p_receiver, p_originalMap, p_originalLen);
589 :
590 112 : if (block0.is_used()) {
591 112 : compiler::TNode<Context> tmp0;
592 112 : compiler::TNode<BuiltinPtr> tmp1;
593 112 : compiler::TNode<JSReceiver> tmp2;
594 112 : compiler::TNode<Map> tmp3;
595 112 : compiler::TNode<Number> tmp4;
596 112 : ca_.Bind(&block0, &tmp0, &tmp1, &tmp2, &tmp3, &tmp4);
597 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 96);
598 112 : compiler::TNode<BoolT> tmp5;
599 112 : USE(tmp5);
600 112 : tmp5 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).SmiEqual(compiler::TNode<Smi>{tmp1}, compiler::TNode<Smi>{ca_.UncheckedCast<BuiltinPtr>(ca_.SmiConstant(Builtins::kLoadJoinElement25ATGenericElementsAccessor))}));
601 112 : ca_.Branch(tmp5, &block3, &block4, tmp0, tmp1, tmp2, tmp3, tmp4);
602 : }
603 :
604 112 : if (block3.is_used()) {
605 112 : compiler::TNode<Context> tmp6;
606 112 : compiler::TNode<BuiltinPtr> tmp7;
607 112 : compiler::TNode<JSReceiver> tmp8;
608 112 : compiler::TNode<Map> tmp9;
609 112 : compiler::TNode<Number> tmp10;
610 112 : ca_.Bind(&block3, &tmp6, &tmp7, &tmp8, &tmp9, &tmp10);
611 112 : ca_.Goto(&block2);
612 : }
613 :
614 112 : if (block4.is_used()) {
615 112 : compiler::TNode<Context> tmp11;
616 112 : compiler::TNode<BuiltinPtr> tmp12;
617 112 : compiler::TNode<JSReceiver> tmp13;
618 112 : compiler::TNode<Map> tmp14;
619 112 : compiler::TNode<Number> tmp15;
620 112 : ca_.Bind(&block4, &tmp11, &tmp12, &tmp13, &tmp14, &tmp15);
621 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 98);
622 112 : compiler::TNode<JSArray> tmp16;
623 112 : USE(tmp16);
624 112 : tmp16 = ca_.UncheckedCast<JSArray>(BaseBuiltinsFromDSLAssembler(state_).UnsafeCast7JSArray(compiler::TNode<Context>{tmp11}, compiler::TNode<Object>{tmp13}));
625 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 99);
626 112 : compiler::TNode<Map> tmp17;
627 112 : USE(tmp17);
628 112 : tmp17 = ca_.UncheckedCast<Map>(BaseBuiltinsFromDSLAssembler(state_).LoadHeapObjectMap(compiler::TNode<HeapObject>{tmp16}));
629 112 : compiler::TNode<BoolT> tmp18;
630 112 : USE(tmp18);
631 112 : tmp18 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).WordNotEqual(compiler::TNode<HeapObject>{tmp14}, compiler::TNode<HeapObject>{tmp17}));
632 112 : ca_.Branch(tmp18, &block5, &block6, tmp11, tmp12, tmp13, tmp14, tmp15, tmp16);
633 : }
634 :
635 112 : if (block5.is_used()) {
636 112 : compiler::TNode<Context> tmp19;
637 112 : compiler::TNode<BuiltinPtr> tmp20;
638 112 : compiler::TNode<JSReceiver> tmp21;
639 112 : compiler::TNode<Map> tmp22;
640 112 : compiler::TNode<Number> tmp23;
641 112 : compiler::TNode<JSArray> tmp24;
642 112 : ca_.Bind(&block5, &tmp19, &tmp20, &tmp21, &tmp22, &tmp23, &tmp24);
643 112 : ca_.Goto(&block1);
644 : }
645 :
646 112 : if (block6.is_used()) {
647 112 : compiler::TNode<Context> tmp25;
648 112 : compiler::TNode<BuiltinPtr> tmp26;
649 112 : compiler::TNode<JSReceiver> tmp27;
650 112 : compiler::TNode<Map> tmp28;
651 112 : compiler::TNode<Number> tmp29;
652 112 : compiler::TNode<JSArray> tmp30;
653 112 : ca_.Bind(&block6, &tmp25, &tmp26, &tmp27, &tmp28, &tmp29, &tmp30);
654 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 100);
655 112 : compiler::TNode<Number> tmp31;
656 112 : USE(tmp31);
657 112 : tmp31 = ca_.UncheckedCast<Number>(BaseBuiltinsFromDSLAssembler(state_).LoadJSArrayLength(compiler::TNode<JSArray>{tmp30}));
658 112 : compiler::TNode<BoolT> tmp32;
659 112 : USE(tmp32);
660 112 : tmp32 = ca_.UncheckedCast<BoolT>(BaseBuiltinsFromDSLAssembler(state_).IsNumberNotEqual(compiler::TNode<Number>{tmp29}, compiler::TNode<Number>{tmp31}));
661 112 : ca_.Branch(tmp32, &block7, &block8, tmp25, tmp26, tmp27, tmp28, tmp29, tmp30);
662 : }
663 :
664 112 : if (block7.is_used()) {
665 112 : compiler::TNode<Context> tmp33;
666 112 : compiler::TNode<BuiltinPtr> tmp34;
667 112 : compiler::TNode<JSReceiver> tmp35;
668 112 : compiler::TNode<Map> tmp36;
669 112 : compiler::TNode<Number> tmp37;
670 112 : compiler::TNode<JSArray> tmp38;
671 112 : ca_.Bind(&block7, &tmp33, &tmp34, &tmp35, &tmp36, &tmp37, &tmp38);
672 112 : ca_.Goto(&block1);
673 : }
674 :
675 112 : if (block8.is_used()) {
676 112 : compiler::TNode<Context> tmp39;
677 112 : compiler::TNode<BuiltinPtr> tmp40;
678 112 : compiler::TNode<JSReceiver> tmp41;
679 112 : compiler::TNode<Map> tmp42;
680 112 : compiler::TNode<Number> tmp43;
681 112 : compiler::TNode<JSArray> tmp44;
682 112 : ca_.Bind(&block8, &tmp39, &tmp40, &tmp41, &tmp42, &tmp43, &tmp44);
683 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 101);
684 112 : compiler::TNode<BoolT> tmp45;
685 112 : USE(tmp45);
686 112 : tmp45 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).IsNoElementsProtectorCellInvalid());
687 112 : ca_.Branch(tmp45, &block9, &block10, tmp39, tmp40, tmp41, tmp42, tmp43, tmp44);
688 : }
689 :
690 112 : if (block9.is_used()) {
691 112 : compiler::TNode<Context> tmp46;
692 112 : compiler::TNode<BuiltinPtr> tmp47;
693 112 : compiler::TNode<JSReceiver> tmp48;
694 112 : compiler::TNode<Map> tmp49;
695 112 : compiler::TNode<Number> tmp50;
696 112 : compiler::TNode<JSArray> tmp51;
697 112 : ca_.Bind(&block9, &tmp46, &tmp47, &tmp48, &tmp49, &tmp50, &tmp51);
698 112 : ca_.Goto(&block1);
699 : }
700 :
701 112 : if (block10.is_used()) {
702 112 : compiler::TNode<Context> tmp52;
703 112 : compiler::TNode<BuiltinPtr> tmp53;
704 112 : compiler::TNode<JSReceiver> tmp54;
705 112 : compiler::TNode<Map> tmp55;
706 112 : compiler::TNode<Number> tmp56;
707 112 : compiler::TNode<JSArray> tmp57;
708 112 : ca_.Bind(&block10, &tmp52, &tmp53, &tmp54, &tmp55, &tmp56, &tmp57);
709 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 102);
710 112 : ca_.Goto(&block2);
711 : }
712 :
713 112 : if (block1.is_used()) {
714 112 : ca_.Bind(&block1);
715 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 87);
716 112 : ca_.Goto(label_Cannot);
717 : }
718 :
719 112 : if (block2.is_used()) {
720 112 : ca_.Bind(&block2);
721 112 : ca_.Goto(label_Can);
722 112 : }
723 112 : }
724 :
725 112 : void ArrayJoinBuiltinsFromDSLAssembler::CannotUseSameArrayAccessor12JSTypedArray(compiler::TNode<Context> p_context, compiler::TNode<BuiltinPtr> p_loadFn, compiler::TNode<JSReceiver> p_receiver, compiler::TNode<Map> p_initialMap, compiler::TNode<Number> p_initialLen, compiler::CodeAssemblerLabel* label_Cannot, compiler::CodeAssemblerLabel* label_Can) {
726 112 : compiler::CodeAssemblerParameterizedLabel<Context, BuiltinPtr, JSReceiver, Map, Number> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
727 224 : compiler::CodeAssemblerParameterizedLabel<Context, BuiltinPtr, JSReceiver, Map, Number, JSTypedArray> block3(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
728 224 : compiler::CodeAssemblerParameterizedLabel<Context, BuiltinPtr, JSReceiver, Map, Number, JSTypedArray> block4(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
729 224 : compiler::CodeAssemblerParameterizedLabel<> block1(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
730 224 : compiler::CodeAssemblerParameterizedLabel<> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
731 112 : ca_.Goto(&block0, p_context, p_loadFn, p_receiver, p_initialMap, p_initialLen);
732 :
733 112 : if (block0.is_used()) {
734 112 : compiler::TNode<Context> tmp0;
735 112 : compiler::TNode<BuiltinPtr> tmp1;
736 112 : compiler::TNode<JSReceiver> tmp2;
737 112 : compiler::TNode<Map> tmp3;
738 112 : compiler::TNode<Number> tmp4;
739 112 : ca_.Bind(&block0, &tmp0, &tmp1, &tmp2, &tmp3, &tmp4);
740 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 109);
741 112 : compiler::TNode<JSTypedArray> tmp5;
742 112 : USE(tmp5);
743 112 : tmp5 = ca_.UncheckedCast<JSTypedArray>(BaseBuiltinsFromDSLAssembler(state_).UnsafeCast12JSTypedArray(compiler::TNode<Context>{tmp0}, compiler::TNode<Object>{tmp2}));
744 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 110);
745 112 : compiler::TNode<JSArrayBuffer> tmp6;
746 112 : USE(tmp6);
747 112 : tmp6 = ca_.UncheckedCast<JSArrayBuffer>(BaseBuiltinsFromDSLAssembler(state_).LoadJSArrayBufferViewBuffer(compiler::TNode<JSArrayBufferView>{tmp5}));
748 112 : compiler::TNode<BoolT> tmp7;
749 112 : USE(tmp7);
750 112 : tmp7 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).IsDetachedBuffer(compiler::TNode<JSArrayBuffer>{tmp6}));
751 112 : ca_.Branch(tmp7, &block3, &block4, tmp0, tmp1, tmp2, tmp3, tmp4, tmp5);
752 : }
753 :
754 112 : if (block3.is_used()) {
755 112 : compiler::TNode<Context> tmp8;
756 112 : compiler::TNode<BuiltinPtr> tmp9;
757 112 : compiler::TNode<JSReceiver> tmp10;
758 112 : compiler::TNode<Map> tmp11;
759 112 : compiler::TNode<Number> tmp12;
760 112 : compiler::TNode<JSTypedArray> tmp13;
761 112 : ca_.Bind(&block3, &tmp8, &tmp9, &tmp10, &tmp11, &tmp12, &tmp13);
762 112 : ca_.Goto(&block1);
763 : }
764 :
765 112 : if (block4.is_used()) {
766 112 : compiler::TNode<Context> tmp14;
767 112 : compiler::TNode<BuiltinPtr> tmp15;
768 112 : compiler::TNode<JSReceiver> tmp16;
769 112 : compiler::TNode<Map> tmp17;
770 112 : compiler::TNode<Number> tmp18;
771 112 : compiler::TNode<JSTypedArray> tmp19;
772 112 : ca_.Bind(&block4, &tmp14, &tmp15, &tmp16, &tmp17, &tmp18, &tmp19);
773 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 111);
774 112 : ca_.Goto(&block2);
775 : }
776 :
777 112 : if (block1.is_used()) {
778 112 : ca_.Bind(&block1);
779 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 87);
780 112 : ca_.Goto(label_Cannot);
781 : }
782 :
783 112 : if (block2.is_used()) {
784 112 : ca_.Bind(&block2);
785 112 : ca_.Goto(label_Can);
786 112 : }
787 112 : }
788 :
789 672 : compiler::TNode<IntPtrT> ArrayJoinBuiltinsFromDSLAssembler::AddStringLength(compiler::TNode<Context> p_context, compiler::TNode<IntPtrT> p_lenA, compiler::TNode<IntPtrT> p_lenB) {
790 672 : compiler::CodeAssemblerParameterizedLabel<Context, IntPtrT, IntPtrT> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
791 1344 : compiler::CodeAssemblerParameterizedLabel<Context, IntPtrT, IntPtrT, IntPtrT, IntPtrT> block5(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
792 1344 : compiler::CodeAssemblerParameterizedLabel<Context, IntPtrT, IntPtrT, IntPtrT, IntPtrT, IntPtrT> block4(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
793 1344 : compiler::CodeAssemblerParameterizedLabel<Context, IntPtrT, IntPtrT, IntPtrT> block6(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
794 1344 : compiler::CodeAssemblerParameterizedLabel<Context, IntPtrT, IntPtrT, IntPtrT> block7(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
795 1344 : compiler::CodeAssemblerParameterizedLabel<Context, IntPtrT, IntPtrT> block3(&ca_, compiler::CodeAssemblerLabel::kDeferred);
796 1344 : compiler::CodeAssemblerParameterizedLabel<Context, IntPtrT, IntPtrT, IntPtrT> block1(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
797 1344 : compiler::CodeAssemblerParameterizedLabel<Context, IntPtrT, IntPtrT, IntPtrT> block8(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
798 672 : ca_.Goto(&block0, p_context, p_lenA, p_lenB);
799 :
800 672 : if (block0.is_used()) {
801 672 : compiler::TNode<Context> tmp0;
802 672 : compiler::TNode<IntPtrT> tmp1;
803 672 : compiler::TNode<IntPtrT> tmp2;
804 672 : ca_.Bind(&block0, &tmp0, &tmp1, &tmp2);
805 672 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 120);
806 672 : compiler::TNode<IntPtrT> tmp3;
807 672 : USE(tmp3);
808 672 : compiler::CodeAssemblerLabel label0(&ca_);
809 672 : tmp3 = CodeStubAssembler(state_).TryIntPtrAdd(compiler::TNode<IntPtrT>{tmp1}, compiler::TNode<IntPtrT>{tmp2}, &label0);
810 672 : ca_.Goto(&block4, tmp0, tmp1, tmp2, tmp1, tmp2, tmp3);
811 672 : if (label0.is_used()) {
812 672 : ca_.Bind(&label0);
813 672 : ca_.Goto(&block5, tmp0, tmp1, tmp2, tmp1, tmp2);
814 672 : }
815 : }
816 :
817 672 : if (block5.is_used()) {
818 672 : compiler::TNode<Context> tmp4;
819 672 : compiler::TNode<IntPtrT> tmp5;
820 672 : compiler::TNode<IntPtrT> tmp6;
821 672 : compiler::TNode<IntPtrT> tmp7;
822 672 : compiler::TNode<IntPtrT> tmp8;
823 672 : ca_.Bind(&block5, &tmp4, &tmp5, &tmp6, &tmp7, &tmp8);
824 672 : ca_.Goto(&block3, tmp4, tmp5, tmp6);
825 : }
826 :
827 672 : if (block4.is_used()) {
828 672 : compiler::TNode<Context> tmp9;
829 672 : compiler::TNode<IntPtrT> tmp10;
830 672 : compiler::TNode<IntPtrT> tmp11;
831 672 : compiler::TNode<IntPtrT> tmp12;
832 672 : compiler::TNode<IntPtrT> tmp13;
833 672 : compiler::TNode<IntPtrT> tmp14;
834 672 : ca_.Bind(&block4, &tmp9, &tmp10, &tmp11, &tmp12, &tmp13, &tmp14);
835 672 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 121);
836 672 : compiler::TNode<IntPtrT> tmp15;
837 672 : USE(tmp15);
838 672 : tmp15 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATintptr17ATconstexpr_int31(String::kMaxLength));
839 672 : compiler::TNode<BoolT> tmp16;
840 672 : USE(tmp16);
841 672 : tmp16 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).IntPtrGreaterThan(compiler::TNode<IntPtrT>{tmp14}, compiler::TNode<IntPtrT>{tmp15}));
842 672 : ca_.Branch(tmp16, &block6, &block7, tmp9, tmp10, tmp11, tmp14);
843 : }
844 :
845 672 : if (block6.is_used()) {
846 672 : compiler::TNode<Context> tmp17;
847 672 : compiler::TNode<IntPtrT> tmp18;
848 672 : compiler::TNode<IntPtrT> tmp19;
849 672 : compiler::TNode<IntPtrT> tmp20;
850 672 : ca_.Bind(&block6, &tmp17, &tmp18, &tmp19, &tmp20);
851 672 : ca_.Goto(&block3, tmp17, tmp18, tmp19);
852 : }
853 :
854 672 : if (block7.is_used()) {
855 672 : compiler::TNode<Context> tmp21;
856 672 : compiler::TNode<IntPtrT> tmp22;
857 672 : compiler::TNode<IntPtrT> tmp23;
858 672 : compiler::TNode<IntPtrT> tmp24;
859 672 : ca_.Bind(&block7, &tmp21, &tmp22, &tmp23, &tmp24);
860 672 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 122);
861 672 : ca_.Goto(&block1, tmp21, tmp22, tmp23, tmp24);
862 : }
863 :
864 672 : if (block3.is_used()) {
865 672 : compiler::TNode<Context> tmp25;
866 672 : compiler::TNode<IntPtrT> tmp26;
867 672 : compiler::TNode<IntPtrT> tmp27;
868 672 : ca_.Bind(&block3, &tmp25, &tmp26, &tmp27);
869 672 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 125);
870 672 : CodeStubAssembler(state_).CallRuntime(Runtime::kThrowInvalidStringLength, tmp25);
871 672 : CodeStubAssembler(state_).Unreachable();
872 : }
873 :
874 672 : if (block1.is_used()) {
875 672 : compiler::TNode<Context> tmp29;
876 672 : compiler::TNode<IntPtrT> tmp30;
877 672 : compiler::TNode<IntPtrT> tmp31;
878 672 : compiler::TNode<IntPtrT> tmp32;
879 672 : ca_.Bind(&block1, &tmp29, &tmp30, &tmp31, &tmp32);
880 672 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 117);
881 672 : ca_.Goto(&block8, tmp29, tmp30, tmp31, tmp32);
882 : }
883 :
884 672 : compiler::TNode<Context> tmp33;
885 672 : compiler::TNode<IntPtrT> tmp34;
886 672 : compiler::TNode<IntPtrT> tmp35;
887 672 : compiler::TNode<IntPtrT> tmp36;
888 672 : ca_.Bind(&block8, &tmp33, &tmp34, &tmp35, &tmp36);
889 1344 : return compiler::TNode<IntPtrT>{tmp36};
890 : }
891 :
892 224 : compiler::TNode<String> ArrayJoinBuiltinsFromDSLAssembler::BufferJoin(compiler::TNode<Context> p_context, ArrayJoinBuiltinsFromDSLAssembler::Buffer p_buffer, compiler::TNode<String> p_sep) {
893 224 : compiler::CodeAssemblerParameterizedLabel<Context, FixedArray, IntPtrT, IntPtrT, BoolT, String> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
894 448 : compiler::CodeAssemblerParameterizedLabel<Context, FixedArray, IntPtrT, IntPtrT, BoolT, String> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
895 448 : compiler::CodeAssemblerParameterizedLabel<Context, FixedArray, IntPtrT, IntPtrT, BoolT, String> block3(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
896 448 : compiler::CodeAssemblerParameterizedLabel<Context, FixedArray, IntPtrT, IntPtrT, BoolT, String> block4(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
897 448 : compiler::CodeAssemblerParameterizedLabel<Context, FixedArray, IntPtrT, IntPtrT, BoolT, String, FixedArray, Object, Object> block9(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
898 448 : compiler::CodeAssemblerParameterizedLabel<Context, FixedArray, IntPtrT, IntPtrT, BoolT, String, FixedArray, Object, Object, String> block8(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
899 448 : compiler::CodeAssemblerParameterizedLabel<Context, FixedArray, IntPtrT, IntPtrT, BoolT, String, FixedArray, Object> block7(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
900 448 : compiler::CodeAssemblerParameterizedLabel<Context, FixedArray, IntPtrT, IntPtrT, BoolT, String, FixedArray, Object, Object> block13(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
901 448 : compiler::CodeAssemblerParameterizedLabel<Context, FixedArray, IntPtrT, IntPtrT, BoolT, String, FixedArray, Object, Object, Number> block12(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
902 448 : compiler::CodeAssemblerParameterizedLabel<Context, FixedArray, IntPtrT, IntPtrT, BoolT, String, FixedArray, Object> block11(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
903 448 : compiler::CodeAssemblerParameterizedLabel<Context, FixedArray, IntPtrT, IntPtrT, BoolT, String> block5(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
904 448 : compiler::CodeAssemblerParameterizedLabel<Context, FixedArray, IntPtrT, IntPtrT, BoolT, String, Uint32T> block14(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
905 448 : compiler::CodeAssemblerParameterizedLabel<Context, FixedArray, IntPtrT, IntPtrT, BoolT, String, Uint32T> block15(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
906 448 : compiler::CodeAssemblerParameterizedLabel<Context, FixedArray, IntPtrT, IntPtrT, BoolT, String, Uint32T, String> block17(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
907 448 : compiler::CodeAssemblerParameterizedLabel<Context, FixedArray, IntPtrT, IntPtrT, BoolT, String, Uint32T, String> block16(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
908 448 : compiler::CodeAssemblerParameterizedLabel<Context, FixedArray, IntPtrT, IntPtrT, BoolT, String, String> block1(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
909 448 : compiler::CodeAssemblerParameterizedLabel<Context, FixedArray, IntPtrT, IntPtrT, BoolT, String, String> block18(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
910 224 : ca_.Goto(&block0, p_context, p_buffer.fixedArray, p_buffer.index, p_buffer.totalStringLength, p_buffer.isOneByte, p_sep);
911 :
912 224 : if (block0.is_used()) {
913 224 : compiler::TNode<Context> tmp0;
914 224 : compiler::TNode<FixedArray> tmp1;
915 224 : compiler::TNode<IntPtrT> tmp2;
916 224 : compiler::TNode<IntPtrT> tmp3;
917 224 : compiler::TNode<BoolT> tmp4;
918 224 : compiler::TNode<String> tmp5;
919 224 : ca_.Bind(&block0, &tmp0, &tmp1, &tmp2, &tmp3, &tmp4, &tmp5);
920 224 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 229);
921 224 : compiler::TNode<IntPtrT> tmp6;
922 224 : USE(tmp6);
923 224 : tmp6 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATintptr17ATconstexpr_int31(0));
924 224 : compiler::TNode<BoolT> tmp7;
925 224 : USE(tmp7);
926 224 : tmp7 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).WordEqual(compiler::TNode<IntPtrT>{tmp3}, compiler::TNode<IntPtrT>{tmp6}));
927 224 : ca_.Branch(tmp7, &block2, &block3, tmp0, tmp1, tmp2, tmp3, tmp4, tmp5);
928 : }
929 :
930 224 : if (block2.is_used()) {
931 224 : compiler::TNode<Context> tmp8;
932 224 : compiler::TNode<FixedArray> tmp9;
933 224 : compiler::TNode<IntPtrT> tmp10;
934 224 : compiler::TNode<IntPtrT> tmp11;
935 224 : compiler::TNode<BoolT> tmp12;
936 224 : compiler::TNode<String> tmp13;
937 224 : ca_.Bind(&block2, &tmp8, &tmp9, &tmp10, &tmp11, &tmp12, &tmp13);
938 224 : compiler::TNode<String> tmp14;
939 224 : USE(tmp14);
940 224 : tmp14 = BaseBuiltinsFromDSLAssembler(state_).kEmptyString();
941 224 : ca_.Goto(&block1, tmp8, tmp9, tmp10, tmp11, tmp12, tmp13, tmp14);
942 : }
943 :
944 224 : if (block3.is_used()) {
945 224 : compiler::TNode<Context> tmp15;
946 224 : compiler::TNode<FixedArray> tmp16;
947 224 : compiler::TNode<IntPtrT> tmp17;
948 224 : compiler::TNode<IntPtrT> tmp18;
949 224 : compiler::TNode<BoolT> tmp19;
950 224 : compiler::TNode<String> tmp20;
951 224 : ca_.Bind(&block3, &tmp15, &tmp16, &tmp17, &tmp18, &tmp19, &tmp20);
952 224 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 232);
953 224 : compiler::TNode<IntPtrT> tmp21;
954 224 : USE(tmp21);
955 224 : tmp21 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATintptr17ATconstexpr_int31(1));
956 224 : compiler::TNode<BoolT> tmp22;
957 224 : USE(tmp22);
958 224 : tmp22 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).WordEqual(compiler::TNode<IntPtrT>{tmp17}, compiler::TNode<IntPtrT>{tmp21}));
959 224 : ca_.Branch(tmp22, &block4, &block5, tmp15, tmp16, tmp17, tmp18, tmp19, tmp20);
960 : }
961 :
962 224 : if (block4.is_used()) {
963 224 : compiler::TNode<Context> tmp23;
964 224 : compiler::TNode<FixedArray> tmp24;
965 224 : compiler::TNode<IntPtrT> tmp25;
966 224 : compiler::TNode<IntPtrT> tmp26;
967 224 : compiler::TNode<BoolT> tmp27;
968 224 : compiler::TNode<String> tmp28;
969 224 : ca_.Bind(&block4, &tmp23, &tmp24, &tmp25, &tmp26, &tmp27, &tmp28);
970 224 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 233);
971 224 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 234);
972 224 : compiler::TNode<Object> tmp29;
973 224 : USE(tmp29);
974 224 : tmp29 = ca_.UncheckedCast<Object>(CodeStubAssembler(state_).LoadFixedArrayElement(compiler::TNode<FixedArray>{tmp24}, 0));
975 224 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 237);
976 224 : compiler::TNode<String> tmp30;
977 224 : USE(tmp30);
978 224 : compiler::CodeAssemblerLabel label0(&ca_);
979 224 : tmp30 = BaseBuiltinsFromDSLAssembler(state_).Cast8ATString(compiler::TNode<Context>{tmp23}, compiler::TNode<Object>{tmp29}, &label0);
980 224 : ca_.Goto(&block8, tmp23, tmp24, tmp25, tmp26, tmp27, tmp28, tmp24, tmp29, tmp29, tmp30);
981 224 : if (label0.is_used()) {
982 224 : ca_.Bind(&label0);
983 224 : ca_.Goto(&block9, tmp23, tmp24, tmp25, tmp26, tmp27, tmp28, tmp24, tmp29, tmp29);
984 224 : }
985 : }
986 :
987 224 : if (block9.is_used()) {
988 224 : compiler::TNode<Context> tmp31;
989 224 : compiler::TNode<FixedArray> tmp32;
990 224 : compiler::TNode<IntPtrT> tmp33;
991 224 : compiler::TNode<IntPtrT> tmp34;
992 224 : compiler::TNode<BoolT> tmp35;
993 224 : compiler::TNode<String> tmp36;
994 224 : compiler::TNode<FixedArray> tmp37;
995 224 : compiler::TNode<Object> tmp38;
996 224 : compiler::TNode<Object> tmp39;
997 224 : ca_.Bind(&block9, &tmp31, &tmp32, &tmp33, &tmp34, &tmp35, &tmp36, &tmp37, &tmp38, &tmp39);
998 224 : ca_.Goto(&block7, tmp31, tmp32, tmp33, tmp34, tmp35, tmp36, tmp37, tmp38);
999 : }
1000 :
1001 224 : if (block8.is_used()) {
1002 224 : compiler::TNode<Context> tmp40;
1003 224 : compiler::TNode<FixedArray> tmp41;
1004 224 : compiler::TNode<IntPtrT> tmp42;
1005 224 : compiler::TNode<IntPtrT> tmp43;
1006 224 : compiler::TNode<BoolT> tmp44;
1007 224 : compiler::TNode<String> tmp45;
1008 224 : compiler::TNode<FixedArray> tmp46;
1009 224 : compiler::TNode<Object> tmp47;
1010 224 : compiler::TNode<Object> tmp48;
1011 224 : compiler::TNode<String> tmp49;
1012 224 : ca_.Bind(&block8, &tmp40, &tmp41, &tmp42, &tmp43, &tmp44, &tmp45, &tmp46, &tmp47, &tmp48, &tmp49);
1013 224 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 238);
1014 224 : ca_.Goto(&block1, tmp40, tmp41, tmp42, tmp43, tmp44, tmp45, tmp49);
1015 : }
1016 :
1017 224 : if (block7.is_used()) {
1018 224 : compiler::TNode<Context> tmp50;
1019 224 : compiler::TNode<FixedArray> tmp51;
1020 224 : compiler::TNode<IntPtrT> tmp52;
1021 224 : compiler::TNode<IntPtrT> tmp53;
1022 224 : compiler::TNode<BoolT> tmp54;
1023 224 : compiler::TNode<String> tmp55;
1024 224 : compiler::TNode<FixedArray> tmp56;
1025 224 : compiler::TNode<Object> tmp57;
1026 224 : ca_.Bind(&block7, &tmp50, &tmp51, &tmp52, &tmp53, &tmp54, &tmp55, &tmp56, &tmp57);
1027 224 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 243);
1028 224 : compiler::TNode<Number> tmp58;
1029 224 : USE(tmp58);
1030 224 : compiler::CodeAssemblerLabel label0(&ca_);
1031 224 : tmp58 = BaseBuiltinsFromDSLAssembler(state_).Cast22UT12ATHeapNumber5ATSmi(compiler::TNode<Object>{ca_.UncheckedCast<Object>(tmp57)}, &label0);
1032 224 : ca_.Goto(&block12, tmp50, tmp51, tmp52, tmp53, tmp54, tmp55, tmp56, tmp57, ca_.UncheckedCast<Object>(tmp57), tmp58);
1033 224 : if (label0.is_used()) {
1034 224 : ca_.Bind(&label0);
1035 224 : ca_.Goto(&block13, tmp50, tmp51, tmp52, tmp53, tmp54, tmp55, tmp56, tmp57, ca_.UncheckedCast<Object>(tmp57));
1036 224 : }
1037 : }
1038 :
1039 224 : if (block13.is_used()) {
1040 224 : compiler::TNode<Context> tmp59;
1041 224 : compiler::TNode<FixedArray> tmp60;
1042 224 : compiler::TNode<IntPtrT> tmp61;
1043 224 : compiler::TNode<IntPtrT> tmp62;
1044 224 : compiler::TNode<BoolT> tmp63;
1045 224 : compiler::TNode<String> tmp64;
1046 224 : compiler::TNode<FixedArray> tmp65;
1047 224 : compiler::TNode<Object> tmp66;
1048 224 : compiler::TNode<Object> tmp67;
1049 224 : ca_.Bind(&block13, &tmp59, &tmp60, &tmp61, &tmp62, &tmp63, &tmp64, &tmp65, &tmp66, &tmp67);
1050 224 : ca_.Goto(&block11, tmp59, tmp60, tmp61, tmp62, tmp63, tmp64, tmp65, tmp66);
1051 : }
1052 :
1053 224 : if (block12.is_used()) {
1054 224 : compiler::TNode<Context> tmp68;
1055 224 : compiler::TNode<FixedArray> tmp69;
1056 224 : compiler::TNode<IntPtrT> tmp70;
1057 224 : compiler::TNode<IntPtrT> tmp71;
1058 224 : compiler::TNode<BoolT> tmp72;
1059 224 : compiler::TNode<String> tmp73;
1060 224 : compiler::TNode<FixedArray> tmp74;
1061 224 : compiler::TNode<Object> tmp75;
1062 224 : compiler::TNode<Object> tmp76;
1063 224 : compiler::TNode<Number> tmp77;
1064 224 : ca_.Bind(&block12, &tmp68, &tmp69, &tmp70, &tmp71, &tmp72, &tmp73, &tmp74, &tmp75, &tmp76, &tmp77);
1065 224 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 244);
1066 224 : compiler::TNode<String> tmp78;
1067 224 : tmp78 = TORQUE_CAST(CodeStubAssembler(state_).CallBuiltin(Builtins::kStringRepeat, tmp68, tmp73, tmp77));
1068 224 : USE(tmp78);
1069 224 : ca_.Goto(&block1, tmp68, tmp69, tmp70, tmp71, tmp72, tmp73, tmp78);
1070 : }
1071 :
1072 224 : if (block11.is_used()) {
1073 224 : compiler::TNode<Context> tmp79;
1074 224 : compiler::TNode<FixedArray> tmp80;
1075 224 : compiler::TNode<IntPtrT> tmp81;
1076 224 : compiler::TNode<IntPtrT> tmp82;
1077 224 : compiler::TNode<BoolT> tmp83;
1078 224 : compiler::TNode<String> tmp84;
1079 224 : compiler::TNode<FixedArray> tmp85;
1080 224 : compiler::TNode<Object> tmp86;
1081 224 : ca_.Bind(&block11, &tmp79, &tmp80, &tmp81, &tmp82, &tmp83, &tmp84, &tmp85, &tmp86);
1082 224 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 246);
1083 224 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 247);
1084 224 : CodeStubAssembler(state_).Unreachable();
1085 : }
1086 :
1087 224 : if (block5.is_used()) {
1088 224 : compiler::TNode<Context> tmp87;
1089 224 : compiler::TNode<FixedArray> tmp88;
1090 224 : compiler::TNode<IntPtrT> tmp89;
1091 224 : compiler::TNode<IntPtrT> tmp90;
1092 224 : compiler::TNode<BoolT> tmp91;
1093 224 : compiler::TNode<String> tmp92;
1094 224 : ca_.Bind(&block5, &tmp87, &tmp88, &tmp89, &tmp90, &tmp91, &tmp92);
1095 224 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 252);
1096 224 : compiler::TNode<UintPtrT> tmp93;
1097 224 : USE(tmp93);
1098 224 : tmp93 = ca_.UncheckedCast<UintPtrT>(CodeStubAssembler(state_).Unsigned(compiler::TNode<IntPtrT>{tmp90}));
1099 224 : compiler::TNode<Uint32T> tmp94;
1100 224 : USE(tmp94);
1101 224 : tmp94 = ca_.UncheckedCast<Uint32T>(BaseBuiltinsFromDSLAssembler(state_).Convert8ATuint329ATuintptr(compiler::TNode<UintPtrT>{tmp93}));
1102 224 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 253);
1103 224 : ca_.Branch(tmp91, &block14, &block15, tmp87, tmp88, tmp89, tmp90, tmp91, tmp92, tmp94);
1104 : }
1105 :
1106 224 : if (block14.is_used()) {
1107 224 : compiler::TNode<Context> tmp95;
1108 224 : compiler::TNode<FixedArray> tmp96;
1109 224 : compiler::TNode<IntPtrT> tmp97;
1110 224 : compiler::TNode<IntPtrT> tmp98;
1111 224 : compiler::TNode<BoolT> tmp99;
1112 224 : compiler::TNode<String> tmp100;
1113 224 : compiler::TNode<Uint32T> tmp101;
1114 224 : ca_.Bind(&block14, &tmp95, &tmp96, &tmp97, &tmp98, &tmp99, &tmp100, &tmp101);
1115 224 : compiler::TNode<String> tmp102;
1116 224 : USE(tmp102);
1117 224 : tmp102 = ca_.UncheckedCast<String>(CodeStubAssembler(state_).AllocateSeqOneByteString(compiler::TNode<Context>{tmp95}, compiler::TNode<Uint32T>{tmp101}));
1118 224 : ca_.Goto(&block17, tmp95, tmp96, tmp97, tmp98, tmp99, tmp100, tmp101, tmp102);
1119 : }
1120 :
1121 224 : if (block15.is_used()) {
1122 224 : compiler::TNode<Context> tmp103;
1123 224 : compiler::TNode<FixedArray> tmp104;
1124 224 : compiler::TNode<IntPtrT> tmp105;
1125 224 : compiler::TNode<IntPtrT> tmp106;
1126 224 : compiler::TNode<BoolT> tmp107;
1127 224 : compiler::TNode<String> tmp108;
1128 224 : compiler::TNode<Uint32T> tmp109;
1129 224 : ca_.Bind(&block15, &tmp103, &tmp104, &tmp105, &tmp106, &tmp107, &tmp108, &tmp109);
1130 224 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 254);
1131 224 : compiler::TNode<String> tmp110;
1132 224 : USE(tmp110);
1133 224 : tmp110 = ca_.UncheckedCast<String>(CodeStubAssembler(state_).AllocateSeqTwoByteString(compiler::TNode<Context>{tmp103}, compiler::TNode<Uint32T>{tmp109}));
1134 224 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 253);
1135 224 : ca_.Goto(&block16, tmp103, tmp104, tmp105, tmp106, tmp107, tmp108, tmp109, tmp110);
1136 : }
1137 :
1138 224 : if (block17.is_used()) {
1139 224 : compiler::TNode<Context> tmp111;
1140 224 : compiler::TNode<FixedArray> tmp112;
1141 224 : compiler::TNode<IntPtrT> tmp113;
1142 224 : compiler::TNode<IntPtrT> tmp114;
1143 224 : compiler::TNode<BoolT> tmp115;
1144 224 : compiler::TNode<String> tmp116;
1145 224 : compiler::TNode<Uint32T> tmp117;
1146 224 : compiler::TNode<String> tmp118;
1147 224 : ca_.Bind(&block17, &tmp111, &tmp112, &tmp113, &tmp114, &tmp115, &tmp116, &tmp117, &tmp118);
1148 224 : ca_.Goto(&block16, tmp111, tmp112, tmp113, tmp114, tmp115, tmp116, tmp117, tmp118);
1149 : }
1150 :
1151 224 : if (block16.is_used()) {
1152 224 : compiler::TNode<Context> tmp119;
1153 224 : compiler::TNode<FixedArray> tmp120;
1154 224 : compiler::TNode<IntPtrT> tmp121;
1155 224 : compiler::TNode<IntPtrT> tmp122;
1156 224 : compiler::TNode<BoolT> tmp123;
1157 224 : compiler::TNode<String> tmp124;
1158 224 : compiler::TNode<Uint32T> tmp125;
1159 224 : compiler::TNode<String> tmp126;
1160 224 : ca_.Bind(&block16, &tmp119, &tmp120, &tmp121, &tmp122, &tmp123, &tmp124, &tmp125, &tmp126);
1161 224 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 256);
1162 224 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 255);
1163 224 : compiler::TNode<String> tmp127;
1164 224 : USE(tmp127);
1165 224 : tmp127 = ca_.UncheckedCast<String>(ArrayBuiltinsAssembler(state_).CallJSArrayArrayJoinConcatToSequentialString(compiler::TNode<FixedArray>{tmp120}, compiler::TNode<IntPtrT>{tmp121}, compiler::TNode<String>{tmp124}, compiler::TNode<String>{tmp126}));
1166 224 : ca_.Goto(&block1, tmp119, tmp120, tmp121, tmp122, tmp123, tmp124, tmp127);
1167 : }
1168 :
1169 224 : if (block1.is_used()) {
1170 224 : compiler::TNode<Context> tmp128;
1171 224 : compiler::TNode<FixedArray> tmp129;
1172 224 : compiler::TNode<IntPtrT> tmp130;
1173 224 : compiler::TNode<IntPtrT> tmp131;
1174 224 : compiler::TNode<BoolT> tmp132;
1175 224 : compiler::TNode<String> tmp133;
1176 224 : compiler::TNode<String> tmp134;
1177 224 : ca_.Bind(&block1, &tmp128, &tmp129, &tmp130, &tmp131, &tmp132, &tmp133, &tmp134);
1178 224 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 226);
1179 224 : ca_.Goto(&block18, tmp128, tmp129, tmp130, tmp131, tmp132, tmp133, tmp134);
1180 : }
1181 :
1182 224 : compiler::TNode<Context> tmp135;
1183 224 : compiler::TNode<FixedArray> tmp136;
1184 224 : compiler::TNode<IntPtrT> tmp137;
1185 224 : compiler::TNode<IntPtrT> tmp138;
1186 224 : compiler::TNode<BoolT> tmp139;
1187 224 : compiler::TNode<String> tmp140;
1188 224 : compiler::TNode<String> tmp141;
1189 224 : ca_.Bind(&block18, &tmp135, &tmp136, &tmp137, &tmp138, &tmp139, &tmp140, &tmp141);
1190 448 : return compiler::TNode<String>{tmp141};
1191 : }
1192 :
1193 112 : compiler::TNode<Object> ArrayJoinBuiltinsFromDSLAssembler::ArrayJoin7JSArray(compiler::TNode<Context> p_context, bool p_useToLocaleString, compiler::TNode<JSReceiver> p_receiver, compiler::TNode<String> p_sep, compiler::TNode<Number> p_lenNumber, compiler::TNode<Object> p_locales, compiler::TNode<Object> p_options) {
1194 112 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1195 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, Map, Int32T, BuiltinPtr, JSReceiver> block5(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1196 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, Map, Int32T, BuiltinPtr, JSReceiver, JSArray> block4(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1197 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, Map, Int32T, BuiltinPtr, JSArray> block6(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1198 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, Map, Int32T, BuiltinPtr, JSArray> block7(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1199 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, Map, Int32T, BuiltinPtr, JSArray> block8(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1200 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, Map, Int32T, BuiltinPtr, JSArray> block9(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1201 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, Map, Int32T, BuiltinPtr, JSArray> block10(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1202 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, Map, Int32T, BuiltinPtr, JSArray> block11(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1203 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, Map, Int32T, BuiltinPtr, JSArray> block12(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1204 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, Map, Int32T, BuiltinPtr, JSArray> block13(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1205 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, Map, Int32T, BuiltinPtr, JSArray> block15(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1206 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, Map, Int32T, BuiltinPtr, JSArray> block16(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1207 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, Map, Int32T, BuiltinPtr, JSArray> block18(&ca_, compiler::CodeAssemblerLabel::kDeferred);
1208 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, Map, Int32T, BuiltinPtr, JSArray, NumberDictionary, Smi> block21(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1209 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, Map, Int32T, BuiltinPtr, JSArray, NumberDictionary, Smi> block24(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1210 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, Map, Int32T, BuiltinPtr, JSArray, NumberDictionary, Smi> block25(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1211 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, Map, Int32T, BuiltinPtr, JSArray, NumberDictionary, Smi, Number> block29(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1212 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, Map, Int32T, BuiltinPtr, JSArray, NumberDictionary, Smi, Number, Smi> block28(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1213 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, Map, Int32T, BuiltinPtr, JSArray, NumberDictionary, Smi> block27(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1214 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, Map, Int32T, BuiltinPtr, JSArray, NumberDictionary, Smi> block22(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1215 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, Map, Int32T, BuiltinPtr, JSArray, NumberDictionary, Smi> block23(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1216 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, Map, Int32T, BuiltinPtr, JSArray> block19(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1217 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, Map, Int32T, BuiltinPtr, JSArray> block20(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1218 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, Map, Int32T, BuiltinPtr, JSArray> block17(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1219 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, Map, Int32T, BuiltinPtr, JSArray> block14(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1220 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, Map, Int32T, BuiltinPtr> block3(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1221 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, Map, Int32T, BuiltinPtr> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1222 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, Object> block1(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1223 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, Object> block30(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1224 112 : ca_.Goto(&block0, p_context, p_receiver, p_sep, p_lenNumber, p_locales, p_options);
1225 :
1226 112 : if (block0.is_used()) {
1227 112 : compiler::TNode<Context> tmp0;
1228 112 : compiler::TNode<JSReceiver> tmp1;
1229 112 : compiler::TNode<String> tmp2;
1230 112 : compiler::TNode<Number> tmp3;
1231 112 : compiler::TNode<Object> tmp4;
1232 112 : compiler::TNode<Object> tmp5;
1233 112 : ca_.Bind(&block0, &tmp0, &tmp1, &tmp2, &tmp3, &tmp4, &tmp5);
1234 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 330);
1235 112 : compiler::TNode<Map> tmp6;
1236 112 : USE(tmp6);
1237 112 : tmp6 = ca_.UncheckedCast<Map>(BaseBuiltinsFromDSLAssembler(state_).LoadHeapObjectMap(compiler::TNode<HeapObject>{tmp1}));
1238 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 331);
1239 112 : compiler::TNode<Int32T> tmp7;
1240 112 : USE(tmp7);
1241 112 : tmp7 = ca_.UncheckedCast<Int32T>(CodeStubAssembler(state_).LoadMapElementsKind(compiler::TNode<Map>{tmp6}));
1242 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 332);
1243 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 335);
1244 112 : compiler::TNode<JSArray> tmp8;
1245 112 : USE(tmp8);
1246 112 : compiler::CodeAssemblerLabel label0(&ca_);
1247 112 : tmp8 = BaseBuiltinsFromDSLAssembler(state_).Cast7JSArray(compiler::TNode<HeapObject>{tmp1}, &label0);
1248 112 : ca_.Goto(&block4, tmp0, tmp1, tmp2, tmp3, tmp4, tmp5, tmp6, tmp7, ca_.Uninitialized<BuiltinPtr>(), tmp1, tmp8);
1249 112 : if (label0.is_used()) {
1250 112 : ca_.Bind(&label0);
1251 112 : ca_.Goto(&block5, tmp0, tmp1, tmp2, tmp3, tmp4, tmp5, tmp6, tmp7, ca_.Uninitialized<BuiltinPtr>(), tmp1);
1252 112 : }
1253 : }
1254 :
1255 112 : if (block5.is_used()) {
1256 112 : compiler::TNode<Context> tmp9;
1257 112 : compiler::TNode<JSReceiver> tmp10;
1258 112 : compiler::TNode<String> tmp11;
1259 112 : compiler::TNode<Number> tmp12;
1260 112 : compiler::TNode<Object> tmp13;
1261 112 : compiler::TNode<Object> tmp14;
1262 112 : compiler::TNode<Map> tmp15;
1263 112 : compiler::TNode<Int32T> tmp16;
1264 112 : compiler::TNode<BuiltinPtr> tmp17;
1265 112 : compiler::TNode<JSReceiver> tmp18;
1266 112 : ca_.Bind(&block5, &tmp9, &tmp10, &tmp11, &tmp12, &tmp13, &tmp14, &tmp15, &tmp16, &tmp17, &tmp18);
1267 112 : ca_.Goto(&block3, tmp9, tmp10, tmp11, tmp12, tmp13, tmp14, tmp15, tmp16, tmp17);
1268 : }
1269 :
1270 112 : if (block4.is_used()) {
1271 112 : compiler::TNode<Context> tmp19;
1272 112 : compiler::TNode<JSReceiver> tmp20;
1273 112 : compiler::TNode<String> tmp21;
1274 112 : compiler::TNode<Number> tmp22;
1275 112 : compiler::TNode<Object> tmp23;
1276 112 : compiler::TNode<Object> tmp24;
1277 112 : compiler::TNode<Map> tmp25;
1278 112 : compiler::TNode<Int32T> tmp26;
1279 112 : compiler::TNode<BuiltinPtr> tmp27;
1280 112 : compiler::TNode<JSReceiver> tmp28;
1281 112 : compiler::TNode<JSArray> tmp29;
1282 112 : ca_.Bind(&block4, &tmp19, &tmp20, &tmp21, &tmp22, &tmp23, &tmp24, &tmp25, &tmp26, &tmp27, &tmp28, &tmp29);
1283 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 336);
1284 112 : compiler::TNode<Number> tmp30;
1285 112 : USE(tmp30);
1286 112 : tmp30 = ca_.UncheckedCast<Number>(BaseBuiltinsFromDSLAssembler(state_).LoadJSArrayLength(compiler::TNode<JSArray>{tmp29}));
1287 112 : compiler::TNode<BoolT> tmp31;
1288 112 : USE(tmp31);
1289 112 : tmp31 = ca_.UncheckedCast<BoolT>(BaseBuiltinsFromDSLAssembler(state_).IsNumberNotEqual(compiler::TNode<Number>{tmp30}, compiler::TNode<Number>{tmp22}));
1290 112 : ca_.Branch(tmp31, &block6, &block7, tmp19, tmp20, tmp21, tmp22, tmp23, tmp24, tmp25, tmp26, tmp27, tmp29);
1291 : }
1292 :
1293 112 : if (block6.is_used()) {
1294 112 : compiler::TNode<Context> tmp32;
1295 112 : compiler::TNode<JSReceiver> tmp33;
1296 112 : compiler::TNode<String> tmp34;
1297 112 : compiler::TNode<Number> tmp35;
1298 112 : compiler::TNode<Object> tmp36;
1299 112 : compiler::TNode<Object> tmp37;
1300 112 : compiler::TNode<Map> tmp38;
1301 112 : compiler::TNode<Int32T> tmp39;
1302 112 : compiler::TNode<BuiltinPtr> tmp40;
1303 112 : compiler::TNode<JSArray> tmp41;
1304 112 : ca_.Bind(&block6, &tmp32, &tmp33, &tmp34, &tmp35, &tmp36, &tmp37, &tmp38, &tmp39, &tmp40, &tmp41);
1305 112 : ca_.Goto(&block3, tmp32, tmp33, tmp34, tmp35, tmp36, tmp37, tmp38, tmp39, tmp40);
1306 : }
1307 :
1308 112 : if (block7.is_used()) {
1309 112 : compiler::TNode<Context> tmp42;
1310 112 : compiler::TNode<JSReceiver> tmp43;
1311 112 : compiler::TNode<String> tmp44;
1312 112 : compiler::TNode<Number> tmp45;
1313 112 : compiler::TNode<Object> tmp46;
1314 112 : compiler::TNode<Object> tmp47;
1315 112 : compiler::TNode<Map> tmp48;
1316 112 : compiler::TNode<Int32T> tmp49;
1317 112 : compiler::TNode<BuiltinPtr> tmp50;
1318 112 : compiler::TNode<JSArray> tmp51;
1319 112 : ca_.Bind(&block7, &tmp42, &tmp43, &tmp44, &tmp45, &tmp46, &tmp47, &tmp48, &tmp49, &tmp50, &tmp51);
1320 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 337);
1321 112 : compiler::TNode<BoolT> tmp52;
1322 112 : USE(tmp52);
1323 112 : tmp52 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).IsPrototypeInitialArrayPrototype(compiler::TNode<Context>{tmp42}, compiler::TNode<Map>{tmp48}));
1324 112 : compiler::TNode<BoolT> tmp53;
1325 112 : USE(tmp53);
1326 112 : tmp53 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).Word32BinaryNot(compiler::TNode<BoolT>{tmp52}));
1327 112 : ca_.Branch(tmp53, &block8, &block9, tmp42, tmp43, tmp44, tmp45, tmp46, tmp47, tmp48, tmp49, tmp50, tmp51);
1328 : }
1329 :
1330 112 : if (block8.is_used()) {
1331 112 : compiler::TNode<Context> tmp54;
1332 112 : compiler::TNode<JSReceiver> tmp55;
1333 112 : compiler::TNode<String> tmp56;
1334 112 : compiler::TNode<Number> tmp57;
1335 112 : compiler::TNode<Object> tmp58;
1336 112 : compiler::TNode<Object> tmp59;
1337 112 : compiler::TNode<Map> tmp60;
1338 112 : compiler::TNode<Int32T> tmp61;
1339 112 : compiler::TNode<BuiltinPtr> tmp62;
1340 112 : compiler::TNode<JSArray> tmp63;
1341 112 : ca_.Bind(&block8, &tmp54, &tmp55, &tmp56, &tmp57, &tmp58, &tmp59, &tmp60, &tmp61, &tmp62, &tmp63);
1342 112 : ca_.Goto(&block3, tmp54, tmp55, tmp56, tmp57, tmp58, tmp59, tmp60, tmp61, tmp62);
1343 : }
1344 :
1345 112 : if (block9.is_used()) {
1346 112 : compiler::TNode<Context> tmp64;
1347 112 : compiler::TNode<JSReceiver> tmp65;
1348 112 : compiler::TNode<String> tmp66;
1349 112 : compiler::TNode<Number> tmp67;
1350 112 : compiler::TNode<Object> tmp68;
1351 112 : compiler::TNode<Object> tmp69;
1352 112 : compiler::TNode<Map> tmp70;
1353 112 : compiler::TNode<Int32T> tmp71;
1354 112 : compiler::TNode<BuiltinPtr> tmp72;
1355 112 : compiler::TNode<JSArray> tmp73;
1356 112 : ca_.Bind(&block9, &tmp64, &tmp65, &tmp66, &tmp67, &tmp68, &tmp69, &tmp70, &tmp71, &tmp72, &tmp73);
1357 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 338);
1358 112 : compiler::TNode<BoolT> tmp74;
1359 112 : USE(tmp74);
1360 112 : tmp74 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).IsNoElementsProtectorCellInvalid());
1361 112 : ca_.Branch(tmp74, &block10, &block11, tmp64, tmp65, tmp66, tmp67, tmp68, tmp69, tmp70, tmp71, tmp72, tmp73);
1362 : }
1363 :
1364 112 : if (block10.is_used()) {
1365 112 : compiler::TNode<Context> tmp75;
1366 112 : compiler::TNode<JSReceiver> tmp76;
1367 112 : compiler::TNode<String> tmp77;
1368 112 : compiler::TNode<Number> tmp78;
1369 112 : compiler::TNode<Object> tmp79;
1370 112 : compiler::TNode<Object> tmp80;
1371 112 : compiler::TNode<Map> tmp81;
1372 112 : compiler::TNode<Int32T> tmp82;
1373 112 : compiler::TNode<BuiltinPtr> tmp83;
1374 112 : compiler::TNode<JSArray> tmp84;
1375 112 : ca_.Bind(&block10, &tmp75, &tmp76, &tmp77, &tmp78, &tmp79, &tmp80, &tmp81, &tmp82, &tmp83, &tmp84);
1376 112 : ca_.Goto(&block3, tmp75, tmp76, tmp77, tmp78, tmp79, tmp80, tmp81, tmp82, tmp83);
1377 : }
1378 :
1379 112 : if (block11.is_used()) {
1380 112 : compiler::TNode<Context> tmp85;
1381 112 : compiler::TNode<JSReceiver> tmp86;
1382 112 : compiler::TNode<String> tmp87;
1383 112 : compiler::TNode<Number> tmp88;
1384 112 : compiler::TNode<Object> tmp89;
1385 112 : compiler::TNode<Object> tmp90;
1386 112 : compiler::TNode<Map> tmp91;
1387 112 : compiler::TNode<Int32T> tmp92;
1388 112 : compiler::TNode<BuiltinPtr> tmp93;
1389 112 : compiler::TNode<JSArray> tmp94;
1390 112 : ca_.Bind(&block11, &tmp85, &tmp86, &tmp87, &tmp88, &tmp89, &tmp90, &tmp91, &tmp92, &tmp93, &tmp94);
1391 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 340);
1392 112 : compiler::TNode<BoolT> tmp95;
1393 112 : USE(tmp95);
1394 112 : tmp95 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).IsElementsKindLessThanOrEqual(compiler::TNode<Int32T>{tmp92}, HOLEY_ELEMENTS));
1395 112 : ca_.Branch(tmp95, &block12, &block13, tmp85, tmp86, tmp87, tmp88, tmp89, tmp90, tmp91, tmp92, tmp93, tmp94);
1396 : }
1397 :
1398 112 : if (block12.is_used()) {
1399 112 : compiler::TNode<Context> tmp96;
1400 112 : compiler::TNode<JSReceiver> tmp97;
1401 112 : compiler::TNode<String> tmp98;
1402 112 : compiler::TNode<Number> tmp99;
1403 112 : compiler::TNode<Object> tmp100;
1404 112 : compiler::TNode<Object> tmp101;
1405 112 : compiler::TNode<Map> tmp102;
1406 112 : compiler::TNode<Int32T> tmp103;
1407 112 : compiler::TNode<BuiltinPtr> tmp104;
1408 112 : compiler::TNode<JSArray> tmp105;
1409 112 : ca_.Bind(&block12, &tmp96, &tmp97, &tmp98, &tmp99, &tmp100, &tmp101, &tmp102, &tmp103, &tmp104, &tmp105);
1410 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 341);
1411 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 340);
1412 112 : ca_.Goto(&block14, tmp96, tmp97, tmp98, tmp99, tmp100, tmp101, tmp102, tmp103, ca_.UncheckedCast<BuiltinPtr>(ca_.SmiConstant(Builtins::kLoadJoinElement25ATFastSmiOrObjectElements)), tmp105);
1413 : }
1414 :
1415 112 : if (block13.is_used()) {
1416 112 : compiler::TNode<Context> tmp106;
1417 112 : compiler::TNode<JSReceiver> tmp107;
1418 112 : compiler::TNode<String> tmp108;
1419 112 : compiler::TNode<Number> tmp109;
1420 112 : compiler::TNode<Object> tmp110;
1421 112 : compiler::TNode<Object> tmp111;
1422 112 : compiler::TNode<Map> tmp112;
1423 112 : compiler::TNode<Int32T> tmp113;
1424 112 : compiler::TNode<BuiltinPtr> tmp114;
1425 112 : compiler::TNode<JSArray> tmp115;
1426 112 : ca_.Bind(&block13, &tmp106, &tmp107, &tmp108, &tmp109, &tmp110, &tmp111, &tmp112, &tmp113, &tmp114, &tmp115);
1427 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 342);
1428 112 : compiler::TNode<BoolT> tmp116;
1429 112 : USE(tmp116);
1430 112 : tmp116 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).IsElementsKindLessThanOrEqual(compiler::TNode<Int32T>{tmp113}, HOLEY_DOUBLE_ELEMENTS));
1431 112 : ca_.Branch(tmp116, &block15, &block16, tmp106, tmp107, tmp108, tmp109, tmp110, tmp111, tmp112, tmp113, tmp114, tmp115);
1432 : }
1433 :
1434 112 : if (block15.is_used()) {
1435 112 : compiler::TNode<Context> tmp117;
1436 112 : compiler::TNode<JSReceiver> tmp118;
1437 112 : compiler::TNode<String> tmp119;
1438 112 : compiler::TNode<Number> tmp120;
1439 112 : compiler::TNode<Object> tmp121;
1440 112 : compiler::TNode<Object> tmp122;
1441 112 : compiler::TNode<Map> tmp123;
1442 112 : compiler::TNode<Int32T> tmp124;
1443 112 : compiler::TNode<BuiltinPtr> tmp125;
1444 112 : compiler::TNode<JSArray> tmp126;
1445 112 : ca_.Bind(&block15, &tmp117, &tmp118, &tmp119, &tmp120, &tmp121, &tmp122, &tmp123, &tmp124, &tmp125, &tmp126);
1446 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 343);
1447 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 342);
1448 112 : ca_.Goto(&block17, tmp117, tmp118, tmp119, tmp120, tmp121, tmp122, tmp123, tmp124, ca_.UncheckedCast<BuiltinPtr>(ca_.SmiConstant(Builtins::kLoadJoinElement20ATFastDoubleElements)), tmp126);
1449 : }
1450 :
1451 112 : if (block16.is_used()) {
1452 112 : compiler::TNode<Context> tmp127;
1453 112 : compiler::TNode<JSReceiver> tmp128;
1454 112 : compiler::TNode<String> tmp129;
1455 112 : compiler::TNode<Number> tmp130;
1456 112 : compiler::TNode<Object> tmp131;
1457 112 : compiler::TNode<Object> tmp132;
1458 112 : compiler::TNode<Map> tmp133;
1459 112 : compiler::TNode<Int32T> tmp134;
1460 112 : compiler::TNode<BuiltinPtr> tmp135;
1461 112 : compiler::TNode<JSArray> tmp136;
1462 112 : ca_.Bind(&block16, &tmp127, &tmp128, &tmp129, &tmp130, &tmp131, &tmp132, &tmp133, &tmp134, &tmp135, &tmp136);
1463 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 344);
1464 112 : compiler::TNode<Int32T> tmp137;
1465 112 : USE(tmp137);
1466 112 : tmp137 = ca_.UncheckedCast<Int32T>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr14ATElementsKind24ATconstexpr_ElementsKind(DICTIONARY_ELEMENTS));
1467 112 : compiler::TNode<BoolT> tmp138;
1468 112 : USE(tmp138);
1469 112 : tmp138 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).ElementsKindEqual(compiler::TNode<Int32T>{tmp134}, compiler::TNode<Int32T>{tmp137}));
1470 112 : ca_.Branch(tmp138, &block18, &block19, tmp127, tmp128, tmp129, tmp130, tmp131, tmp132, tmp133, tmp134, tmp135, tmp136);
1471 : }
1472 :
1473 112 : if (block18.is_used()) {
1474 112 : compiler::TNode<Context> tmp139;
1475 112 : compiler::TNode<JSReceiver> tmp140;
1476 112 : compiler::TNode<String> tmp141;
1477 112 : compiler::TNode<Number> tmp142;
1478 112 : compiler::TNode<Object> tmp143;
1479 112 : compiler::TNode<Object> tmp144;
1480 112 : compiler::TNode<Map> tmp145;
1481 112 : compiler::TNode<Int32T> tmp146;
1482 112 : compiler::TNode<BuiltinPtr> tmp147;
1483 112 : compiler::TNode<JSArray> tmp148;
1484 112 : ca_.Bind(&block18, &tmp139, &tmp140, &tmp141, &tmp142, &tmp143, &tmp144, &tmp145, &tmp146, &tmp147, &tmp148);
1485 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 347);
1486 112 : compiler::TNode<FixedArrayBase> tmp149;
1487 112 : USE(tmp149);
1488 112 : tmp149 = ca_.UncheckedCast<FixedArrayBase>(BaseBuiltinsFromDSLAssembler(state_).LoadJSObjectElements(compiler::TNode<JSObject>{tmp148}));
1489 112 : compiler::TNode<NumberDictionary> tmp150;
1490 112 : USE(tmp150);
1491 112 : tmp150 = ca_.UncheckedCast<NumberDictionary>(BaseBuiltinsFromDSLAssembler(state_).UnsafeCast18ATNumberDictionary(compiler::TNode<Context>{tmp139}, compiler::TNode<Object>{tmp149}));
1492 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 346);
1493 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 348);
1494 112 : compiler::TNode<Smi> tmp151;
1495 112 : USE(tmp151);
1496 112 : tmp151 = ca_.UncheckedCast<Smi>(CodeStubAssembler(state_).GetNumberDictionaryNumberOfElements(compiler::TNode<NumberDictionary>{tmp150}));
1497 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 349);
1498 112 : compiler::TNode<Smi> tmp152;
1499 112 : USE(tmp152);
1500 112 : tmp152 = ca_.UncheckedCast<Smi>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr5ATSmi17ATconstexpr_int31(0));
1501 112 : compiler::TNode<BoolT> tmp153;
1502 112 : USE(tmp153);
1503 112 : tmp153 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).SmiEqual(compiler::TNode<Smi>{tmp151}, compiler::TNode<Smi>{tmp152}));
1504 112 : ca_.Branch(tmp153, &block21, &block22, tmp139, tmp140, tmp141, tmp142, tmp143, tmp144, tmp145, tmp146, tmp147, tmp148, tmp150, tmp151);
1505 : }
1506 :
1507 112 : if (block21.is_used()) {
1508 112 : compiler::TNode<Context> tmp154;
1509 112 : compiler::TNode<JSReceiver> tmp155;
1510 112 : compiler::TNode<String> tmp156;
1511 112 : compiler::TNode<Number> tmp157;
1512 112 : compiler::TNode<Object> tmp158;
1513 112 : compiler::TNode<Object> tmp159;
1514 112 : compiler::TNode<Map> tmp160;
1515 112 : compiler::TNode<Int32T> tmp161;
1516 112 : compiler::TNode<BuiltinPtr> tmp162;
1517 112 : compiler::TNode<JSArray> tmp163;
1518 112 : compiler::TNode<NumberDictionary> tmp164;
1519 112 : compiler::TNode<Smi> tmp165;
1520 112 : ca_.Bind(&block21, &tmp154, &tmp155, &tmp156, &tmp157, &tmp158, &tmp159, &tmp160, &tmp161, &tmp162, &tmp163, &tmp164, &tmp165);
1521 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 350);
1522 112 : compiler::TNode<String> tmp166;
1523 112 : USE(tmp166);
1524 112 : tmp166 = BaseBuiltinsFromDSLAssembler(state_).kEmptyString();
1525 112 : compiler::TNode<BoolT> tmp167;
1526 112 : USE(tmp167);
1527 112 : tmp167 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).WordEqual(compiler::TNode<Object>{tmp156}, compiler::TNode<HeapObject>{tmp166}));
1528 112 : ca_.Branch(tmp167, &block24, &block25, tmp154, tmp155, tmp156, tmp157, tmp158, tmp159, tmp160, tmp161, tmp162, tmp163, tmp164, tmp165);
1529 : }
1530 :
1531 112 : if (block24.is_used()) {
1532 112 : compiler::TNode<Context> tmp168;
1533 112 : compiler::TNode<JSReceiver> tmp169;
1534 112 : compiler::TNode<String> tmp170;
1535 112 : compiler::TNode<Number> tmp171;
1536 112 : compiler::TNode<Object> tmp172;
1537 112 : compiler::TNode<Object> tmp173;
1538 112 : compiler::TNode<Map> tmp174;
1539 112 : compiler::TNode<Int32T> tmp175;
1540 112 : compiler::TNode<BuiltinPtr> tmp176;
1541 112 : compiler::TNode<JSArray> tmp177;
1542 112 : compiler::TNode<NumberDictionary> tmp178;
1543 112 : compiler::TNode<Smi> tmp179;
1544 112 : ca_.Bind(&block24, &tmp168, &tmp169, &tmp170, &tmp171, &tmp172, &tmp173, &tmp174, &tmp175, &tmp176, &tmp177, &tmp178, &tmp179);
1545 112 : compiler::TNode<String> tmp180;
1546 112 : USE(tmp180);
1547 112 : tmp180 = BaseBuiltinsFromDSLAssembler(state_).kEmptyString();
1548 112 : ca_.Goto(&block1, tmp168, tmp169, tmp170, tmp171, tmp172, tmp173, tmp180);
1549 : }
1550 :
1551 112 : if (block25.is_used()) {
1552 112 : compiler::TNode<Context> tmp181;
1553 112 : compiler::TNode<JSReceiver> tmp182;
1554 112 : compiler::TNode<String> tmp183;
1555 112 : compiler::TNode<Number> tmp184;
1556 112 : compiler::TNode<Object> tmp185;
1557 112 : compiler::TNode<Object> tmp186;
1558 112 : compiler::TNode<Map> tmp187;
1559 112 : compiler::TNode<Int32T> tmp188;
1560 112 : compiler::TNode<BuiltinPtr> tmp189;
1561 112 : compiler::TNode<JSArray> tmp190;
1562 112 : compiler::TNode<NumberDictionary> tmp191;
1563 112 : compiler::TNode<Smi> tmp192;
1564 112 : ca_.Bind(&block25, &tmp181, &tmp182, &tmp183, &tmp184, &tmp185, &tmp186, &tmp187, &tmp188, &tmp189, &tmp190, &tmp191, &tmp192);
1565 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 353);
1566 112 : compiler::TNode<Number> tmp193;
1567 112 : USE(tmp193);
1568 112 : tmp193 = ca_.UncheckedCast<Number>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr22UT12ATHeapNumber5ATSmi17ATconstexpr_int31(1));
1569 112 : compiler::TNode<Number> tmp194;
1570 112 : USE(tmp194);
1571 112 : tmp194 = ca_.UncheckedCast<Number>(CodeStubAssembler(state_).NumberSub(compiler::TNode<Number>{tmp184}, compiler::TNode<Number>{tmp193}));
1572 112 : compiler::TNode<Smi> tmp195;
1573 112 : USE(tmp195);
1574 112 : compiler::CodeAssemblerLabel label0(&ca_);
1575 112 : tmp195 = BaseBuiltinsFromDSLAssembler(state_).Cast5ATSmi(compiler::TNode<Object>{tmp194}, &label0);
1576 112 : ca_.Goto(&block28, tmp181, tmp182, tmp183, tmp184, tmp185, tmp186, tmp187, tmp188, tmp189, tmp190, tmp191, tmp192, tmp194, tmp195);
1577 112 : if (label0.is_used()) {
1578 112 : ca_.Bind(&label0);
1579 112 : ca_.Goto(&block29, tmp181, tmp182, tmp183, tmp184, tmp185, tmp186, tmp187, tmp188, tmp189, tmp190, tmp191, tmp192, tmp194);
1580 112 : }
1581 : }
1582 :
1583 112 : if (block29.is_used()) {
1584 112 : compiler::TNode<Context> tmp196;
1585 112 : compiler::TNode<JSReceiver> tmp197;
1586 112 : compiler::TNode<String> tmp198;
1587 112 : compiler::TNode<Number> tmp199;
1588 112 : compiler::TNode<Object> tmp200;
1589 112 : compiler::TNode<Object> tmp201;
1590 112 : compiler::TNode<Map> tmp202;
1591 112 : compiler::TNode<Int32T> tmp203;
1592 112 : compiler::TNode<BuiltinPtr> tmp204;
1593 112 : compiler::TNode<JSArray> tmp205;
1594 112 : compiler::TNode<NumberDictionary> tmp206;
1595 112 : compiler::TNode<Smi> tmp207;
1596 112 : compiler::TNode<Number> tmp208;
1597 112 : ca_.Bind(&block29, &tmp196, &tmp197, &tmp198, &tmp199, &tmp200, &tmp201, &tmp202, &tmp203, &tmp204, &tmp205, &tmp206, &tmp207, &tmp208);
1598 112 : ca_.Goto(&block27, tmp196, tmp197, tmp198, tmp199, tmp200, tmp201, tmp202, tmp203, tmp204, tmp205, tmp206, tmp207);
1599 : }
1600 :
1601 112 : if (block28.is_used()) {
1602 112 : compiler::TNode<Context> tmp209;
1603 112 : compiler::TNode<JSReceiver> tmp210;
1604 112 : compiler::TNode<String> tmp211;
1605 112 : compiler::TNode<Number> tmp212;
1606 112 : compiler::TNode<Object> tmp213;
1607 112 : compiler::TNode<Object> tmp214;
1608 112 : compiler::TNode<Map> tmp215;
1609 112 : compiler::TNode<Int32T> tmp216;
1610 112 : compiler::TNode<BuiltinPtr> tmp217;
1611 112 : compiler::TNode<JSArray> tmp218;
1612 112 : compiler::TNode<NumberDictionary> tmp219;
1613 112 : compiler::TNode<Smi> tmp220;
1614 112 : compiler::TNode<Number> tmp221;
1615 112 : compiler::TNode<Smi> tmp222;
1616 112 : ca_.Bind(&block28, &tmp209, &tmp210, &tmp211, &tmp212, &tmp213, &tmp214, &tmp215, &tmp216, &tmp217, &tmp218, &tmp219, &tmp220, &tmp221, &tmp222);
1617 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 352);
1618 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 354);
1619 112 : compiler::TNode<String> tmp223;
1620 112 : tmp223 = TORQUE_CAST(CodeStubAssembler(state_).CallBuiltin(Builtins::kStringRepeat, tmp209, tmp211, tmp222));
1621 112 : USE(tmp223);
1622 112 : ca_.Goto(&block1, tmp209, tmp210, tmp211, tmp212, tmp213, tmp214, tmp223);
1623 : }
1624 :
1625 112 : if (block27.is_used()) {
1626 112 : compiler::TNode<Context> tmp224;
1627 112 : compiler::TNode<JSReceiver> tmp225;
1628 112 : compiler::TNode<String> tmp226;
1629 112 : compiler::TNode<Number> tmp227;
1630 112 : compiler::TNode<Object> tmp228;
1631 112 : compiler::TNode<Object> tmp229;
1632 112 : compiler::TNode<Map> tmp230;
1633 112 : compiler::TNode<Int32T> tmp231;
1634 112 : compiler::TNode<BuiltinPtr> tmp232;
1635 112 : compiler::TNode<JSArray> tmp233;
1636 112 : compiler::TNode<NumberDictionary> tmp234;
1637 112 : compiler::TNode<Smi> tmp235;
1638 112 : ca_.Bind(&block27, &tmp224, &tmp225, &tmp226, &tmp227, &tmp228, &tmp229, &tmp230, &tmp231, &tmp232, &tmp233, &tmp234, &tmp235);
1639 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 357);
1640 112 : CodeStubAssembler(state_).CallRuntime(Runtime::kThrowInvalidStringLength, tmp224);
1641 112 : CodeStubAssembler(state_).Unreachable();
1642 : }
1643 :
1644 112 : if (block22.is_used()) {
1645 112 : compiler::TNode<Context> tmp237;
1646 112 : compiler::TNode<JSReceiver> tmp238;
1647 112 : compiler::TNode<String> tmp239;
1648 112 : compiler::TNode<Number> tmp240;
1649 112 : compiler::TNode<Object> tmp241;
1650 112 : compiler::TNode<Object> tmp242;
1651 112 : compiler::TNode<Map> tmp243;
1652 112 : compiler::TNode<Int32T> tmp244;
1653 112 : compiler::TNode<BuiltinPtr> tmp245;
1654 112 : compiler::TNode<JSArray> tmp246;
1655 112 : compiler::TNode<NumberDictionary> tmp247;
1656 112 : compiler::TNode<Smi> tmp248;
1657 112 : ca_.Bind(&block22, &tmp237, &tmp238, &tmp239, &tmp240, &tmp241, &tmp242, &tmp243, &tmp244, &tmp245, &tmp246, &tmp247, &tmp248);
1658 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 360);
1659 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 349);
1660 112 : ca_.Goto(&block23, tmp237, tmp238, tmp239, tmp240, tmp241, tmp242, tmp243, tmp244, ca_.UncheckedCast<BuiltinPtr>(ca_.SmiConstant(Builtins::kLoadJoinElement20ATDictionaryElements)), tmp246, tmp247, tmp248);
1661 : }
1662 :
1663 112 : if (block23.is_used()) {
1664 112 : compiler::TNode<Context> tmp249;
1665 112 : compiler::TNode<JSReceiver> tmp250;
1666 112 : compiler::TNode<String> tmp251;
1667 112 : compiler::TNode<Number> tmp252;
1668 112 : compiler::TNode<Object> tmp253;
1669 112 : compiler::TNode<Object> tmp254;
1670 112 : compiler::TNode<Map> tmp255;
1671 112 : compiler::TNode<Int32T> tmp256;
1672 112 : compiler::TNode<BuiltinPtr> tmp257;
1673 112 : compiler::TNode<JSArray> tmp258;
1674 112 : compiler::TNode<NumberDictionary> tmp259;
1675 112 : compiler::TNode<Smi> tmp260;
1676 112 : ca_.Bind(&block23, &tmp249, &tmp250, &tmp251, &tmp252, &tmp253, &tmp254, &tmp255, &tmp256, &tmp257, &tmp258, &tmp259, &tmp260);
1677 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 345);
1678 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 344);
1679 112 : ca_.Goto(&block20, tmp249, tmp250, tmp251, tmp252, tmp253, tmp254, tmp255, tmp256, tmp257, tmp258);
1680 : }
1681 :
1682 112 : if (block19.is_used()) {
1683 112 : compiler::TNode<Context> tmp261;
1684 112 : compiler::TNode<JSReceiver> tmp262;
1685 112 : compiler::TNode<String> tmp263;
1686 112 : compiler::TNode<Number> tmp264;
1687 112 : compiler::TNode<Object> tmp265;
1688 112 : compiler::TNode<Object> tmp266;
1689 112 : compiler::TNode<Map> tmp267;
1690 112 : compiler::TNode<Int32T> tmp268;
1691 112 : compiler::TNode<BuiltinPtr> tmp269;
1692 112 : compiler::TNode<JSArray> tmp270;
1693 112 : ca_.Bind(&block19, &tmp261, &tmp262, &tmp263, &tmp264, &tmp265, &tmp266, &tmp267, &tmp268, &tmp269, &tmp270);
1694 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 364);
1695 112 : ca_.Goto(&block3, tmp261, tmp262, tmp263, tmp264, tmp265, tmp266, tmp267, tmp268, tmp269);
1696 : }
1697 :
1698 112 : if (block20.is_used()) {
1699 112 : compiler::TNode<Context> tmp271;
1700 112 : compiler::TNode<JSReceiver> tmp272;
1701 112 : compiler::TNode<String> tmp273;
1702 112 : compiler::TNode<Number> tmp274;
1703 112 : compiler::TNode<Object> tmp275;
1704 112 : compiler::TNode<Object> tmp276;
1705 112 : compiler::TNode<Map> tmp277;
1706 112 : compiler::TNode<Int32T> tmp278;
1707 112 : compiler::TNode<BuiltinPtr> tmp279;
1708 112 : compiler::TNode<JSArray> tmp280;
1709 112 : ca_.Bind(&block20, &tmp271, &tmp272, &tmp273, &tmp274, &tmp275, &tmp276, &tmp277, &tmp278, &tmp279, &tmp280);
1710 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 342);
1711 112 : ca_.Goto(&block17, tmp271, tmp272, tmp273, tmp274, tmp275, tmp276, tmp277, tmp278, tmp279, tmp280);
1712 : }
1713 :
1714 112 : if (block17.is_used()) {
1715 112 : compiler::TNode<Context> tmp281;
1716 112 : compiler::TNode<JSReceiver> tmp282;
1717 112 : compiler::TNode<String> tmp283;
1718 112 : compiler::TNode<Number> tmp284;
1719 112 : compiler::TNode<Object> tmp285;
1720 112 : compiler::TNode<Object> tmp286;
1721 112 : compiler::TNode<Map> tmp287;
1722 112 : compiler::TNode<Int32T> tmp288;
1723 112 : compiler::TNode<BuiltinPtr> tmp289;
1724 112 : compiler::TNode<JSArray> tmp290;
1725 112 : ca_.Bind(&block17, &tmp281, &tmp282, &tmp283, &tmp284, &tmp285, &tmp286, &tmp287, &tmp288, &tmp289, &tmp290);
1726 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 340);
1727 112 : ca_.Goto(&block14, tmp281, tmp282, tmp283, tmp284, tmp285, tmp286, tmp287, tmp288, tmp289, tmp290);
1728 : }
1729 :
1730 112 : if (block14.is_used()) {
1731 112 : compiler::TNode<Context> tmp291;
1732 112 : compiler::TNode<JSReceiver> tmp292;
1733 112 : compiler::TNode<String> tmp293;
1734 112 : compiler::TNode<Number> tmp294;
1735 112 : compiler::TNode<Object> tmp295;
1736 112 : compiler::TNode<Object> tmp296;
1737 112 : compiler::TNode<Map> tmp297;
1738 112 : compiler::TNode<Int32T> tmp298;
1739 112 : compiler::TNode<BuiltinPtr> tmp299;
1740 112 : compiler::TNode<JSArray> tmp300;
1741 112 : ca_.Bind(&block14, &tmp291, &tmp292, &tmp293, &tmp294, &tmp295, &tmp296, &tmp297, &tmp298, &tmp299, &tmp300);
1742 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 334);
1743 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 367);
1744 112 : ca_.Goto(&block2, tmp291, tmp292, tmp293, tmp294, tmp295, tmp296, tmp297, tmp298, tmp299);
1745 : }
1746 :
1747 112 : if (block3.is_used()) {
1748 112 : compiler::TNode<Context> tmp301;
1749 112 : compiler::TNode<JSReceiver> tmp302;
1750 112 : compiler::TNode<String> tmp303;
1751 112 : compiler::TNode<Number> tmp304;
1752 112 : compiler::TNode<Object> tmp305;
1753 112 : compiler::TNode<Object> tmp306;
1754 112 : compiler::TNode<Map> tmp307;
1755 112 : compiler::TNode<Int32T> tmp308;
1756 112 : compiler::TNode<BuiltinPtr> tmp309;
1757 112 : ca_.Bind(&block3, &tmp301, &tmp302, &tmp303, &tmp304, &tmp305, &tmp306, &tmp307, &tmp308, &tmp309);
1758 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 368);
1759 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 334);
1760 112 : ca_.Goto(&block2, tmp301, tmp302, tmp303, tmp304, tmp305, tmp306, tmp307, tmp308, ca_.UncheckedCast<BuiltinPtr>(ca_.SmiConstant(Builtins::kLoadJoinElement25ATGenericElementsAccessor)));
1761 : }
1762 :
1763 112 : if (block2.is_used()) {
1764 112 : compiler::TNode<Context> tmp310;
1765 112 : compiler::TNode<JSReceiver> tmp311;
1766 112 : compiler::TNode<String> tmp312;
1767 112 : compiler::TNode<Number> tmp313;
1768 112 : compiler::TNode<Object> tmp314;
1769 112 : compiler::TNode<Object> tmp315;
1770 112 : compiler::TNode<Map> tmp316;
1771 112 : compiler::TNode<Int32T> tmp317;
1772 112 : compiler::TNode<BuiltinPtr> tmp318;
1773 112 : ca_.Bind(&block2, &tmp310, &tmp311, &tmp312, &tmp313, &tmp314, &tmp315, &tmp316, &tmp317, &tmp318);
1774 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 371);
1775 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 370);
1776 112 : compiler::TNode<String> tmp319;
1777 112 : USE(tmp319);
1778 112 : tmp319 = ca_.UncheckedCast<String>(ArrayJoinBuiltinsFromDSLAssembler(state_).ArrayJoinImpl7JSArray(compiler::TNode<Context>{tmp310}, compiler::TNode<JSReceiver>{tmp311}, compiler::TNode<String>{tmp312}, compiler::TNode<Number>{tmp313}, p_useToLocaleString, compiler::TNode<Object>{tmp314}, compiler::TNode<Object>{tmp315}, compiler::TNode<BuiltinPtr>{tmp318}));
1779 112 : ca_.Goto(&block1, tmp310, tmp311, tmp312, tmp313, tmp314, tmp315, tmp319);
1780 : }
1781 :
1782 112 : if (block1.is_used()) {
1783 112 : compiler::TNode<Context> tmp320;
1784 112 : compiler::TNode<JSReceiver> tmp321;
1785 112 : compiler::TNode<String> tmp322;
1786 112 : compiler::TNode<Number> tmp323;
1787 112 : compiler::TNode<Object> tmp324;
1788 112 : compiler::TNode<Object> tmp325;
1789 112 : compiler::TNode<Object> tmp326;
1790 112 : ca_.Bind(&block1, &tmp320, &tmp321, &tmp322, &tmp323, &tmp324, &tmp325, &tmp326);
1791 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 323);
1792 112 : ca_.Goto(&block30, tmp320, tmp321, tmp322, tmp323, tmp324, tmp325, tmp326);
1793 : }
1794 :
1795 112 : compiler::TNode<Context> tmp327;
1796 112 : compiler::TNode<JSReceiver> tmp328;
1797 112 : compiler::TNode<String> tmp329;
1798 112 : compiler::TNode<Number> tmp330;
1799 112 : compiler::TNode<Object> tmp331;
1800 112 : compiler::TNode<Object> tmp332;
1801 112 : compiler::TNode<Object> tmp333;
1802 112 : ca_.Bind(&block30, &tmp327, &tmp328, &tmp329, &tmp330, &tmp331, &tmp332, &tmp333);
1803 224 : return compiler::TNode<Object>{tmp333};
1804 : }
1805 :
1806 112 : compiler::TNode<Object> ArrayJoinBuiltinsFromDSLAssembler::ArrayJoin12JSTypedArray(compiler::TNode<Context> p_context, bool p_useToLocaleString, compiler::TNode<JSReceiver> p_receiver, compiler::TNode<String> p_sep, compiler::TNode<Number> p_lenNumber, compiler::TNode<Object> p_locales, compiler::TNode<Object> p_options) {
1807 112 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1808 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, Map, Int32T, BuiltinPtr> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1809 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, Map, Int32T, BuiltinPtr> block5(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1810 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, Map, Int32T, BuiltinPtr> block6(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1811 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, Map, Int32T, BuiltinPtr> block8(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1812 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, Map, Int32T, BuiltinPtr> block9(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1813 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, Map, Int32T, BuiltinPtr> block11(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1814 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, Map, Int32T, BuiltinPtr> block12(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1815 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, Map, Int32T, BuiltinPtr> block14(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1816 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, Map, Int32T, BuiltinPtr> block15(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1817 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, Map, Int32T, BuiltinPtr> block17(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1818 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, Map, Int32T, BuiltinPtr> block18(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1819 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, Map, Int32T, BuiltinPtr> block20(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1820 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, Map, Int32T, BuiltinPtr> block21(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1821 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, Map, Int32T, BuiltinPtr> block22(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1822 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, Map, Int32T, BuiltinPtr> block19(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1823 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, Map, Int32T, BuiltinPtr> block16(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1824 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, Map, Int32T, BuiltinPtr> block13(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1825 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, Map, Int32T, BuiltinPtr> block10(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1826 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, Map, Int32T, BuiltinPtr> block7(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1827 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, Map, Int32T, BuiltinPtr> block3(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1828 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, Map, Int32T, BuiltinPtr> block23(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1829 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, Map, Int32T, BuiltinPtr> block24(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1830 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, Map, Int32T, BuiltinPtr> block26(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1831 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, Map, Int32T, BuiltinPtr> block27(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1832 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, Map, Int32T, BuiltinPtr> block29(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1833 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, Map, Int32T, BuiltinPtr> block30(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1834 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, Map, Int32T, BuiltinPtr> block32(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1835 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, Map, Int32T, BuiltinPtr> block33(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1836 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, Map, Int32T, BuiltinPtr> block35(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1837 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, Map, Int32T, BuiltinPtr> block36(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1838 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, Map, Int32T, BuiltinPtr> block37(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1839 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, Map, Int32T, BuiltinPtr> block34(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1840 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, Map, Int32T, BuiltinPtr> block31(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1841 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, Map, Int32T, BuiltinPtr> block28(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1842 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, Map, Int32T, BuiltinPtr> block25(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1843 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, Map, Int32T, BuiltinPtr> block4(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1844 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, Object> block1(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1845 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, Object> block38(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
1846 112 : ca_.Goto(&block0, p_context, p_receiver, p_sep, p_lenNumber, p_locales, p_options);
1847 :
1848 112 : if (block0.is_used()) {
1849 112 : compiler::TNode<Context> tmp0;
1850 112 : compiler::TNode<JSReceiver> tmp1;
1851 112 : compiler::TNode<String> tmp2;
1852 112 : compiler::TNode<Number> tmp3;
1853 112 : compiler::TNode<Object> tmp4;
1854 112 : compiler::TNode<Object> tmp5;
1855 112 : ca_.Bind(&block0, &tmp0, &tmp1, &tmp2, &tmp3, &tmp4, &tmp5);
1856 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 377);
1857 112 : compiler::TNode<Map> tmp6;
1858 112 : USE(tmp6);
1859 112 : tmp6 = ca_.UncheckedCast<Map>(BaseBuiltinsFromDSLAssembler(state_).LoadHeapObjectMap(compiler::TNode<HeapObject>{tmp1}));
1860 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 378);
1861 112 : compiler::TNode<Int32T> tmp7;
1862 112 : USE(tmp7);
1863 112 : tmp7 = ca_.UncheckedCast<Int32T>(CodeStubAssembler(state_).LoadMapElementsKind(compiler::TNode<Map>{tmp6}));
1864 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 379);
1865 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 381);
1866 112 : compiler::TNode<BoolT> tmp8;
1867 112 : USE(tmp8);
1868 112 : tmp8 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).IsElementsKindGreaterThan(compiler::TNode<Int32T>{tmp7}, UINT32_ELEMENTS));
1869 112 : ca_.Branch(tmp8, &block2, &block3, tmp0, tmp1, tmp2, tmp3, tmp4, tmp5, tmp6, tmp7, ca_.Uninitialized<BuiltinPtr>());
1870 : }
1871 :
1872 112 : if (block2.is_used()) {
1873 112 : compiler::TNode<Context> tmp9;
1874 112 : compiler::TNode<JSReceiver> tmp10;
1875 112 : compiler::TNode<String> tmp11;
1876 112 : compiler::TNode<Number> tmp12;
1877 112 : compiler::TNode<Object> tmp13;
1878 112 : compiler::TNode<Object> tmp14;
1879 112 : compiler::TNode<Map> tmp15;
1880 112 : compiler::TNode<Int32T> tmp16;
1881 112 : compiler::TNode<BuiltinPtr> tmp17;
1882 112 : ca_.Bind(&block2, &tmp9, &tmp10, &tmp11, &tmp12, &tmp13, &tmp14, &tmp15, &tmp16, &tmp17);
1883 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 382);
1884 112 : compiler::TNode<Int32T> tmp18;
1885 112 : USE(tmp18);
1886 112 : tmp18 = ca_.UncheckedCast<Int32T>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr14ATElementsKind24ATconstexpr_ElementsKind(INT32_ELEMENTS));
1887 112 : compiler::TNode<BoolT> tmp19;
1888 112 : USE(tmp19);
1889 112 : tmp19 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).ElementsKindEqual(compiler::TNode<Int32T>{tmp16}, compiler::TNode<Int32T>{tmp18}));
1890 112 : ca_.Branch(tmp19, &block5, &block6, tmp9, tmp10, tmp11, tmp12, tmp13, tmp14, tmp15, tmp16, tmp17);
1891 : }
1892 :
1893 112 : if (block5.is_used()) {
1894 112 : compiler::TNode<Context> tmp20;
1895 112 : compiler::TNode<JSReceiver> tmp21;
1896 112 : compiler::TNode<String> tmp22;
1897 112 : compiler::TNode<Number> tmp23;
1898 112 : compiler::TNode<Object> tmp24;
1899 112 : compiler::TNode<Object> tmp25;
1900 112 : compiler::TNode<Map> tmp26;
1901 112 : compiler::TNode<Int32T> tmp27;
1902 112 : compiler::TNode<BuiltinPtr> tmp28;
1903 112 : ca_.Bind(&block5, &tmp20, &tmp21, &tmp22, &tmp23, &tmp24, &tmp25, &tmp26, &tmp27, &tmp28);
1904 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 383);
1905 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 382);
1906 112 : ca_.Goto(&block7, tmp20, tmp21, tmp22, tmp23, tmp24, tmp25, tmp26, tmp27, ca_.UncheckedCast<BuiltinPtr>(ca_.SmiConstant(Builtins::kLoadJoinTypedElement17ATFixedInt32Array)));
1907 : }
1908 :
1909 112 : if (block6.is_used()) {
1910 112 : compiler::TNode<Context> tmp29;
1911 112 : compiler::TNode<JSReceiver> tmp30;
1912 112 : compiler::TNode<String> tmp31;
1913 112 : compiler::TNode<Number> tmp32;
1914 112 : compiler::TNode<Object> tmp33;
1915 112 : compiler::TNode<Object> tmp34;
1916 112 : compiler::TNode<Map> tmp35;
1917 112 : compiler::TNode<Int32T> tmp36;
1918 112 : compiler::TNode<BuiltinPtr> tmp37;
1919 112 : ca_.Bind(&block6, &tmp29, &tmp30, &tmp31, &tmp32, &tmp33, &tmp34, &tmp35, &tmp36, &tmp37);
1920 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 384);
1921 112 : compiler::TNode<Int32T> tmp38;
1922 112 : USE(tmp38);
1923 112 : tmp38 = ca_.UncheckedCast<Int32T>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr14ATElementsKind24ATconstexpr_ElementsKind(FLOAT32_ELEMENTS));
1924 112 : compiler::TNode<BoolT> tmp39;
1925 112 : USE(tmp39);
1926 112 : tmp39 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).ElementsKindEqual(compiler::TNode<Int32T>{tmp36}, compiler::TNode<Int32T>{tmp38}));
1927 112 : ca_.Branch(tmp39, &block8, &block9, tmp29, tmp30, tmp31, tmp32, tmp33, tmp34, tmp35, tmp36, tmp37);
1928 : }
1929 :
1930 112 : if (block8.is_used()) {
1931 112 : compiler::TNode<Context> tmp40;
1932 112 : compiler::TNode<JSReceiver> tmp41;
1933 112 : compiler::TNode<String> tmp42;
1934 112 : compiler::TNode<Number> tmp43;
1935 112 : compiler::TNode<Object> tmp44;
1936 112 : compiler::TNode<Object> tmp45;
1937 112 : compiler::TNode<Map> tmp46;
1938 112 : compiler::TNode<Int32T> tmp47;
1939 112 : compiler::TNode<BuiltinPtr> tmp48;
1940 112 : ca_.Bind(&block8, &tmp40, &tmp41, &tmp42, &tmp43, &tmp44, &tmp45, &tmp46, &tmp47, &tmp48);
1941 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 385);
1942 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 384);
1943 112 : ca_.Goto(&block10, tmp40, tmp41, tmp42, tmp43, tmp44, tmp45, tmp46, tmp47, ca_.UncheckedCast<BuiltinPtr>(ca_.SmiConstant(Builtins::kLoadJoinTypedElement19ATFixedFloat32Array)));
1944 : }
1945 :
1946 112 : if (block9.is_used()) {
1947 112 : compiler::TNode<Context> tmp49;
1948 112 : compiler::TNode<JSReceiver> tmp50;
1949 112 : compiler::TNode<String> tmp51;
1950 112 : compiler::TNode<Number> tmp52;
1951 112 : compiler::TNode<Object> tmp53;
1952 112 : compiler::TNode<Object> tmp54;
1953 112 : compiler::TNode<Map> tmp55;
1954 112 : compiler::TNode<Int32T> tmp56;
1955 112 : compiler::TNode<BuiltinPtr> tmp57;
1956 112 : ca_.Bind(&block9, &tmp49, &tmp50, &tmp51, &tmp52, &tmp53, &tmp54, &tmp55, &tmp56, &tmp57);
1957 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 386);
1958 112 : compiler::TNode<Int32T> tmp58;
1959 112 : USE(tmp58);
1960 112 : tmp58 = ca_.UncheckedCast<Int32T>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr14ATElementsKind24ATconstexpr_ElementsKind(FLOAT64_ELEMENTS));
1961 112 : compiler::TNode<BoolT> tmp59;
1962 112 : USE(tmp59);
1963 112 : tmp59 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).ElementsKindEqual(compiler::TNode<Int32T>{tmp56}, compiler::TNode<Int32T>{tmp58}));
1964 112 : ca_.Branch(tmp59, &block11, &block12, tmp49, tmp50, tmp51, tmp52, tmp53, tmp54, tmp55, tmp56, tmp57);
1965 : }
1966 :
1967 112 : if (block11.is_used()) {
1968 112 : compiler::TNode<Context> tmp60;
1969 112 : compiler::TNode<JSReceiver> tmp61;
1970 112 : compiler::TNode<String> tmp62;
1971 112 : compiler::TNode<Number> tmp63;
1972 112 : compiler::TNode<Object> tmp64;
1973 112 : compiler::TNode<Object> tmp65;
1974 112 : compiler::TNode<Map> tmp66;
1975 112 : compiler::TNode<Int32T> tmp67;
1976 112 : compiler::TNode<BuiltinPtr> tmp68;
1977 112 : ca_.Bind(&block11, &tmp60, &tmp61, &tmp62, &tmp63, &tmp64, &tmp65, &tmp66, &tmp67, &tmp68);
1978 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 387);
1979 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 386);
1980 112 : ca_.Goto(&block13, tmp60, tmp61, tmp62, tmp63, tmp64, tmp65, tmp66, tmp67, ca_.UncheckedCast<BuiltinPtr>(ca_.SmiConstant(Builtins::kLoadJoinTypedElement19ATFixedFloat64Array)));
1981 : }
1982 :
1983 112 : if (block12.is_used()) {
1984 112 : compiler::TNode<Context> tmp69;
1985 112 : compiler::TNode<JSReceiver> tmp70;
1986 112 : compiler::TNode<String> tmp71;
1987 112 : compiler::TNode<Number> tmp72;
1988 112 : compiler::TNode<Object> tmp73;
1989 112 : compiler::TNode<Object> tmp74;
1990 112 : compiler::TNode<Map> tmp75;
1991 112 : compiler::TNode<Int32T> tmp76;
1992 112 : compiler::TNode<BuiltinPtr> tmp77;
1993 112 : ca_.Bind(&block12, &tmp69, &tmp70, &tmp71, &tmp72, &tmp73, &tmp74, &tmp75, &tmp76, &tmp77);
1994 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 388);
1995 112 : compiler::TNode<Int32T> tmp78;
1996 112 : USE(tmp78);
1997 112 : tmp78 = ca_.UncheckedCast<Int32T>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr14ATElementsKind24ATconstexpr_ElementsKind(UINT8_CLAMPED_ELEMENTS));
1998 112 : compiler::TNode<BoolT> tmp79;
1999 112 : USE(tmp79);
2000 112 : tmp79 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).ElementsKindEqual(compiler::TNode<Int32T>{tmp76}, compiler::TNode<Int32T>{tmp78}));
2001 112 : ca_.Branch(tmp79, &block14, &block15, tmp69, tmp70, tmp71, tmp72, tmp73, tmp74, tmp75, tmp76, tmp77);
2002 : }
2003 :
2004 112 : if (block14.is_used()) {
2005 112 : compiler::TNode<Context> tmp80;
2006 112 : compiler::TNode<JSReceiver> tmp81;
2007 112 : compiler::TNode<String> tmp82;
2008 112 : compiler::TNode<Number> tmp83;
2009 112 : compiler::TNode<Object> tmp84;
2010 112 : compiler::TNode<Object> tmp85;
2011 112 : compiler::TNode<Map> tmp86;
2012 112 : compiler::TNode<Int32T> tmp87;
2013 112 : compiler::TNode<BuiltinPtr> tmp88;
2014 112 : ca_.Bind(&block14, &tmp80, &tmp81, &tmp82, &tmp83, &tmp84, &tmp85, &tmp86, &tmp87, &tmp88);
2015 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 389);
2016 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 388);
2017 112 : ca_.Goto(&block16, tmp80, tmp81, tmp82, tmp83, tmp84, tmp85, tmp86, tmp87, ca_.UncheckedCast<BuiltinPtr>(ca_.SmiConstant(Builtins::kLoadJoinTypedElement24ATFixedUint8ClampedArray)));
2018 : }
2019 :
2020 112 : if (block15.is_used()) {
2021 112 : compiler::TNode<Context> tmp89;
2022 112 : compiler::TNode<JSReceiver> tmp90;
2023 112 : compiler::TNode<String> tmp91;
2024 112 : compiler::TNode<Number> tmp92;
2025 112 : compiler::TNode<Object> tmp93;
2026 112 : compiler::TNode<Object> tmp94;
2027 112 : compiler::TNode<Map> tmp95;
2028 112 : compiler::TNode<Int32T> tmp96;
2029 112 : compiler::TNode<BuiltinPtr> tmp97;
2030 112 : ca_.Bind(&block15, &tmp89, &tmp90, &tmp91, &tmp92, &tmp93, &tmp94, &tmp95, &tmp96, &tmp97);
2031 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 390);
2032 112 : compiler::TNode<Int32T> tmp98;
2033 112 : USE(tmp98);
2034 112 : tmp98 = ca_.UncheckedCast<Int32T>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr14ATElementsKind24ATconstexpr_ElementsKind(BIGUINT64_ELEMENTS));
2035 112 : compiler::TNode<BoolT> tmp99;
2036 112 : USE(tmp99);
2037 112 : tmp99 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).ElementsKindEqual(compiler::TNode<Int32T>{tmp96}, compiler::TNode<Int32T>{tmp98}));
2038 112 : ca_.Branch(tmp99, &block17, &block18, tmp89, tmp90, tmp91, tmp92, tmp93, tmp94, tmp95, tmp96, tmp97);
2039 : }
2040 :
2041 112 : if (block17.is_used()) {
2042 112 : compiler::TNode<Context> tmp100;
2043 112 : compiler::TNode<JSReceiver> tmp101;
2044 112 : compiler::TNode<String> tmp102;
2045 112 : compiler::TNode<Number> tmp103;
2046 112 : compiler::TNode<Object> tmp104;
2047 112 : compiler::TNode<Object> tmp105;
2048 112 : compiler::TNode<Map> tmp106;
2049 112 : compiler::TNode<Int32T> tmp107;
2050 112 : compiler::TNode<BuiltinPtr> tmp108;
2051 112 : ca_.Bind(&block17, &tmp100, &tmp101, &tmp102, &tmp103, &tmp104, &tmp105, &tmp106, &tmp107, &tmp108);
2052 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 391);
2053 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 390);
2054 112 : ca_.Goto(&block19, tmp100, tmp101, tmp102, tmp103, tmp104, tmp105, tmp106, tmp107, ca_.UncheckedCast<BuiltinPtr>(ca_.SmiConstant(Builtins::kLoadJoinTypedElement21ATFixedBigUint64Array)));
2055 : }
2056 :
2057 112 : if (block18.is_used()) {
2058 112 : compiler::TNode<Context> tmp109;
2059 112 : compiler::TNode<JSReceiver> tmp110;
2060 112 : compiler::TNode<String> tmp111;
2061 112 : compiler::TNode<Number> tmp112;
2062 112 : compiler::TNode<Object> tmp113;
2063 112 : compiler::TNode<Object> tmp114;
2064 112 : compiler::TNode<Map> tmp115;
2065 112 : compiler::TNode<Int32T> tmp116;
2066 112 : compiler::TNode<BuiltinPtr> tmp117;
2067 112 : ca_.Bind(&block18, &tmp109, &tmp110, &tmp111, &tmp112, &tmp113, &tmp114, &tmp115, &tmp116, &tmp117);
2068 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 392);
2069 112 : compiler::TNode<Int32T> tmp118;
2070 112 : USE(tmp118);
2071 112 : tmp118 = ca_.UncheckedCast<Int32T>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr14ATElementsKind24ATconstexpr_ElementsKind(BIGINT64_ELEMENTS));
2072 112 : compiler::TNode<BoolT> tmp119;
2073 112 : USE(tmp119);
2074 112 : tmp119 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).ElementsKindEqual(compiler::TNode<Int32T>{tmp116}, compiler::TNode<Int32T>{tmp118}));
2075 112 : ca_.Branch(tmp119, &block20, &block21, tmp109, tmp110, tmp111, tmp112, tmp113, tmp114, tmp115, tmp116, tmp117);
2076 : }
2077 :
2078 112 : if (block20.is_used()) {
2079 112 : compiler::TNode<Context> tmp120;
2080 112 : compiler::TNode<JSReceiver> tmp121;
2081 112 : compiler::TNode<String> tmp122;
2082 112 : compiler::TNode<Number> tmp123;
2083 112 : compiler::TNode<Object> tmp124;
2084 112 : compiler::TNode<Object> tmp125;
2085 112 : compiler::TNode<Map> tmp126;
2086 112 : compiler::TNode<Int32T> tmp127;
2087 112 : compiler::TNode<BuiltinPtr> tmp128;
2088 112 : ca_.Bind(&block20, &tmp120, &tmp121, &tmp122, &tmp123, &tmp124, &tmp125, &tmp126, &tmp127, &tmp128);
2089 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 393);
2090 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 392);
2091 112 : ca_.Goto(&block22, tmp120, tmp121, tmp122, tmp123, tmp124, tmp125, tmp126, tmp127, ca_.UncheckedCast<BuiltinPtr>(ca_.SmiConstant(Builtins::kLoadJoinTypedElement20ATFixedBigInt64Array)));
2092 : }
2093 :
2094 112 : if (block21.is_used()) {
2095 112 : compiler::TNode<Context> tmp129;
2096 112 : compiler::TNode<JSReceiver> tmp130;
2097 112 : compiler::TNode<String> tmp131;
2098 112 : compiler::TNode<Number> tmp132;
2099 112 : compiler::TNode<Object> tmp133;
2100 112 : compiler::TNode<Object> tmp134;
2101 112 : compiler::TNode<Map> tmp135;
2102 112 : compiler::TNode<Int32T> tmp136;
2103 112 : compiler::TNode<BuiltinPtr> tmp137;
2104 112 : ca_.Bind(&block21, &tmp129, &tmp130, &tmp131, &tmp132, &tmp133, &tmp134, &tmp135, &tmp136, &tmp137);
2105 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 395);
2106 112 : CodeStubAssembler(state_).Unreachable();
2107 : }
2108 :
2109 112 : if (block22.is_used()) {
2110 112 : compiler::TNode<Context> tmp138;
2111 112 : compiler::TNode<JSReceiver> tmp139;
2112 112 : compiler::TNode<String> tmp140;
2113 112 : compiler::TNode<Number> tmp141;
2114 112 : compiler::TNode<Object> tmp142;
2115 112 : compiler::TNode<Object> tmp143;
2116 112 : compiler::TNode<Map> tmp144;
2117 112 : compiler::TNode<Int32T> tmp145;
2118 112 : compiler::TNode<BuiltinPtr> tmp146;
2119 112 : ca_.Bind(&block22, &tmp138, &tmp139, &tmp140, &tmp141, &tmp142, &tmp143, &tmp144, &tmp145, &tmp146);
2120 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 390);
2121 112 : ca_.Goto(&block19, tmp138, tmp139, tmp140, tmp141, tmp142, tmp143, tmp144, tmp145, tmp146);
2122 : }
2123 :
2124 112 : if (block19.is_used()) {
2125 112 : compiler::TNode<Context> tmp147;
2126 112 : compiler::TNode<JSReceiver> tmp148;
2127 112 : compiler::TNode<String> tmp149;
2128 112 : compiler::TNode<Number> tmp150;
2129 112 : compiler::TNode<Object> tmp151;
2130 112 : compiler::TNode<Object> tmp152;
2131 112 : compiler::TNode<Map> tmp153;
2132 112 : compiler::TNode<Int32T> tmp154;
2133 112 : compiler::TNode<BuiltinPtr> tmp155;
2134 112 : ca_.Bind(&block19, &tmp147, &tmp148, &tmp149, &tmp150, &tmp151, &tmp152, &tmp153, &tmp154, &tmp155);
2135 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 388);
2136 112 : ca_.Goto(&block16, tmp147, tmp148, tmp149, tmp150, tmp151, tmp152, tmp153, tmp154, tmp155);
2137 : }
2138 :
2139 112 : if (block16.is_used()) {
2140 112 : compiler::TNode<Context> tmp156;
2141 112 : compiler::TNode<JSReceiver> tmp157;
2142 112 : compiler::TNode<String> tmp158;
2143 112 : compiler::TNode<Number> tmp159;
2144 112 : compiler::TNode<Object> tmp160;
2145 112 : compiler::TNode<Object> tmp161;
2146 112 : compiler::TNode<Map> tmp162;
2147 112 : compiler::TNode<Int32T> tmp163;
2148 112 : compiler::TNode<BuiltinPtr> tmp164;
2149 112 : ca_.Bind(&block16, &tmp156, &tmp157, &tmp158, &tmp159, &tmp160, &tmp161, &tmp162, &tmp163, &tmp164);
2150 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 386);
2151 112 : ca_.Goto(&block13, tmp156, tmp157, tmp158, tmp159, tmp160, tmp161, tmp162, tmp163, tmp164);
2152 : }
2153 :
2154 112 : if (block13.is_used()) {
2155 112 : compiler::TNode<Context> tmp165;
2156 112 : compiler::TNode<JSReceiver> tmp166;
2157 112 : compiler::TNode<String> tmp167;
2158 112 : compiler::TNode<Number> tmp168;
2159 112 : compiler::TNode<Object> tmp169;
2160 112 : compiler::TNode<Object> tmp170;
2161 112 : compiler::TNode<Map> tmp171;
2162 112 : compiler::TNode<Int32T> tmp172;
2163 112 : compiler::TNode<BuiltinPtr> tmp173;
2164 112 : ca_.Bind(&block13, &tmp165, &tmp166, &tmp167, &tmp168, &tmp169, &tmp170, &tmp171, &tmp172, &tmp173);
2165 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 384);
2166 112 : ca_.Goto(&block10, tmp165, tmp166, tmp167, tmp168, tmp169, tmp170, tmp171, tmp172, tmp173);
2167 : }
2168 :
2169 112 : if (block10.is_used()) {
2170 112 : compiler::TNode<Context> tmp174;
2171 112 : compiler::TNode<JSReceiver> tmp175;
2172 112 : compiler::TNode<String> tmp176;
2173 112 : compiler::TNode<Number> tmp177;
2174 112 : compiler::TNode<Object> tmp178;
2175 112 : compiler::TNode<Object> tmp179;
2176 112 : compiler::TNode<Map> tmp180;
2177 112 : compiler::TNode<Int32T> tmp181;
2178 112 : compiler::TNode<BuiltinPtr> tmp182;
2179 112 : ca_.Bind(&block10, &tmp174, &tmp175, &tmp176, &tmp177, &tmp178, &tmp179, &tmp180, &tmp181, &tmp182);
2180 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 382);
2181 112 : ca_.Goto(&block7, tmp174, tmp175, tmp176, tmp177, tmp178, tmp179, tmp180, tmp181, tmp182);
2182 : }
2183 :
2184 112 : if (block7.is_used()) {
2185 112 : compiler::TNode<Context> tmp183;
2186 112 : compiler::TNode<JSReceiver> tmp184;
2187 112 : compiler::TNode<String> tmp185;
2188 112 : compiler::TNode<Number> tmp186;
2189 112 : compiler::TNode<Object> tmp187;
2190 112 : compiler::TNode<Object> tmp188;
2191 112 : compiler::TNode<Map> tmp189;
2192 112 : compiler::TNode<Int32T> tmp190;
2193 112 : compiler::TNode<BuiltinPtr> tmp191;
2194 112 : ca_.Bind(&block7, &tmp183, &tmp184, &tmp185, &tmp186, &tmp187, &tmp188, &tmp189, &tmp190, &tmp191);
2195 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 381);
2196 112 : ca_.Goto(&block4, tmp183, tmp184, tmp185, tmp186, tmp187, tmp188, tmp189, tmp190, tmp191);
2197 : }
2198 :
2199 112 : if (block3.is_used()) {
2200 112 : compiler::TNode<Context> tmp192;
2201 112 : compiler::TNode<JSReceiver> tmp193;
2202 112 : compiler::TNode<String> tmp194;
2203 112 : compiler::TNode<Number> tmp195;
2204 112 : compiler::TNode<Object> tmp196;
2205 112 : compiler::TNode<Object> tmp197;
2206 112 : compiler::TNode<Map> tmp198;
2207 112 : compiler::TNode<Int32T> tmp199;
2208 112 : compiler::TNode<BuiltinPtr> tmp200;
2209 112 : ca_.Bind(&block3, &tmp192, &tmp193, &tmp194, &tmp195, &tmp196, &tmp197, &tmp198, &tmp199, &tmp200);
2210 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 398);
2211 112 : compiler::TNode<Int32T> tmp201;
2212 112 : USE(tmp201);
2213 112 : tmp201 = ca_.UncheckedCast<Int32T>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr14ATElementsKind24ATconstexpr_ElementsKind(UINT8_ELEMENTS));
2214 112 : compiler::TNode<BoolT> tmp202;
2215 112 : USE(tmp202);
2216 112 : tmp202 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).ElementsKindEqual(compiler::TNode<Int32T>{tmp199}, compiler::TNode<Int32T>{tmp201}));
2217 112 : ca_.Branch(tmp202, &block23, &block24, tmp192, tmp193, tmp194, tmp195, tmp196, tmp197, tmp198, tmp199, tmp200);
2218 : }
2219 :
2220 112 : if (block23.is_used()) {
2221 112 : compiler::TNode<Context> tmp203;
2222 112 : compiler::TNode<JSReceiver> tmp204;
2223 112 : compiler::TNode<String> tmp205;
2224 112 : compiler::TNode<Number> tmp206;
2225 112 : compiler::TNode<Object> tmp207;
2226 112 : compiler::TNode<Object> tmp208;
2227 112 : compiler::TNode<Map> tmp209;
2228 112 : compiler::TNode<Int32T> tmp210;
2229 112 : compiler::TNode<BuiltinPtr> tmp211;
2230 112 : ca_.Bind(&block23, &tmp203, &tmp204, &tmp205, &tmp206, &tmp207, &tmp208, &tmp209, &tmp210, &tmp211);
2231 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 399);
2232 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 398);
2233 112 : ca_.Goto(&block25, tmp203, tmp204, tmp205, tmp206, tmp207, tmp208, tmp209, tmp210, ca_.UncheckedCast<BuiltinPtr>(ca_.SmiConstant(Builtins::kLoadJoinTypedElement17ATFixedUint8Array)));
2234 : }
2235 :
2236 112 : if (block24.is_used()) {
2237 112 : compiler::TNode<Context> tmp212;
2238 112 : compiler::TNode<JSReceiver> tmp213;
2239 112 : compiler::TNode<String> tmp214;
2240 112 : compiler::TNode<Number> tmp215;
2241 112 : compiler::TNode<Object> tmp216;
2242 112 : compiler::TNode<Object> tmp217;
2243 112 : compiler::TNode<Map> tmp218;
2244 112 : compiler::TNode<Int32T> tmp219;
2245 112 : compiler::TNode<BuiltinPtr> tmp220;
2246 112 : ca_.Bind(&block24, &tmp212, &tmp213, &tmp214, &tmp215, &tmp216, &tmp217, &tmp218, &tmp219, &tmp220);
2247 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 400);
2248 112 : compiler::TNode<Int32T> tmp221;
2249 112 : USE(tmp221);
2250 112 : tmp221 = ca_.UncheckedCast<Int32T>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr14ATElementsKind24ATconstexpr_ElementsKind(INT8_ELEMENTS));
2251 112 : compiler::TNode<BoolT> tmp222;
2252 112 : USE(tmp222);
2253 112 : tmp222 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).ElementsKindEqual(compiler::TNode<Int32T>{tmp219}, compiler::TNode<Int32T>{tmp221}));
2254 112 : ca_.Branch(tmp222, &block26, &block27, tmp212, tmp213, tmp214, tmp215, tmp216, tmp217, tmp218, tmp219, tmp220);
2255 : }
2256 :
2257 112 : if (block26.is_used()) {
2258 112 : compiler::TNode<Context> tmp223;
2259 112 : compiler::TNode<JSReceiver> tmp224;
2260 112 : compiler::TNode<String> tmp225;
2261 112 : compiler::TNode<Number> tmp226;
2262 112 : compiler::TNode<Object> tmp227;
2263 112 : compiler::TNode<Object> tmp228;
2264 112 : compiler::TNode<Map> tmp229;
2265 112 : compiler::TNode<Int32T> tmp230;
2266 112 : compiler::TNode<BuiltinPtr> tmp231;
2267 112 : ca_.Bind(&block26, &tmp223, &tmp224, &tmp225, &tmp226, &tmp227, &tmp228, &tmp229, &tmp230, &tmp231);
2268 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 401);
2269 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 400);
2270 112 : ca_.Goto(&block28, tmp223, tmp224, tmp225, tmp226, tmp227, tmp228, tmp229, tmp230, ca_.UncheckedCast<BuiltinPtr>(ca_.SmiConstant(Builtins::kLoadJoinTypedElement16ATFixedInt8Array)));
2271 : }
2272 :
2273 112 : if (block27.is_used()) {
2274 112 : compiler::TNode<Context> tmp232;
2275 112 : compiler::TNode<JSReceiver> tmp233;
2276 112 : compiler::TNode<String> tmp234;
2277 112 : compiler::TNode<Number> tmp235;
2278 112 : compiler::TNode<Object> tmp236;
2279 112 : compiler::TNode<Object> tmp237;
2280 112 : compiler::TNode<Map> tmp238;
2281 112 : compiler::TNode<Int32T> tmp239;
2282 112 : compiler::TNode<BuiltinPtr> tmp240;
2283 112 : ca_.Bind(&block27, &tmp232, &tmp233, &tmp234, &tmp235, &tmp236, &tmp237, &tmp238, &tmp239, &tmp240);
2284 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 402);
2285 112 : compiler::TNode<Int32T> tmp241;
2286 112 : USE(tmp241);
2287 112 : tmp241 = ca_.UncheckedCast<Int32T>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr14ATElementsKind24ATconstexpr_ElementsKind(UINT16_ELEMENTS));
2288 112 : compiler::TNode<BoolT> tmp242;
2289 112 : USE(tmp242);
2290 112 : tmp242 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).ElementsKindEqual(compiler::TNode<Int32T>{tmp239}, compiler::TNode<Int32T>{tmp241}));
2291 112 : ca_.Branch(tmp242, &block29, &block30, tmp232, tmp233, tmp234, tmp235, tmp236, tmp237, tmp238, tmp239, tmp240);
2292 : }
2293 :
2294 112 : if (block29.is_used()) {
2295 112 : compiler::TNode<Context> tmp243;
2296 112 : compiler::TNode<JSReceiver> tmp244;
2297 112 : compiler::TNode<String> tmp245;
2298 112 : compiler::TNode<Number> tmp246;
2299 112 : compiler::TNode<Object> tmp247;
2300 112 : compiler::TNode<Object> tmp248;
2301 112 : compiler::TNode<Map> tmp249;
2302 112 : compiler::TNode<Int32T> tmp250;
2303 112 : compiler::TNode<BuiltinPtr> tmp251;
2304 112 : ca_.Bind(&block29, &tmp243, &tmp244, &tmp245, &tmp246, &tmp247, &tmp248, &tmp249, &tmp250, &tmp251);
2305 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 403);
2306 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 402);
2307 112 : ca_.Goto(&block31, tmp243, tmp244, tmp245, tmp246, tmp247, tmp248, tmp249, tmp250, ca_.UncheckedCast<BuiltinPtr>(ca_.SmiConstant(Builtins::kLoadJoinTypedElement18ATFixedUint16Array)));
2308 : }
2309 :
2310 112 : if (block30.is_used()) {
2311 112 : compiler::TNode<Context> tmp252;
2312 112 : compiler::TNode<JSReceiver> tmp253;
2313 112 : compiler::TNode<String> tmp254;
2314 112 : compiler::TNode<Number> tmp255;
2315 112 : compiler::TNode<Object> tmp256;
2316 112 : compiler::TNode<Object> tmp257;
2317 112 : compiler::TNode<Map> tmp258;
2318 112 : compiler::TNode<Int32T> tmp259;
2319 112 : compiler::TNode<BuiltinPtr> tmp260;
2320 112 : ca_.Bind(&block30, &tmp252, &tmp253, &tmp254, &tmp255, &tmp256, &tmp257, &tmp258, &tmp259, &tmp260);
2321 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 404);
2322 112 : compiler::TNode<Int32T> tmp261;
2323 112 : USE(tmp261);
2324 112 : tmp261 = ca_.UncheckedCast<Int32T>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr14ATElementsKind24ATconstexpr_ElementsKind(INT16_ELEMENTS));
2325 112 : compiler::TNode<BoolT> tmp262;
2326 112 : USE(tmp262);
2327 112 : tmp262 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).ElementsKindEqual(compiler::TNode<Int32T>{tmp259}, compiler::TNode<Int32T>{tmp261}));
2328 112 : ca_.Branch(tmp262, &block32, &block33, tmp252, tmp253, tmp254, tmp255, tmp256, tmp257, tmp258, tmp259, tmp260);
2329 : }
2330 :
2331 112 : if (block32.is_used()) {
2332 112 : compiler::TNode<Context> tmp263;
2333 112 : compiler::TNode<JSReceiver> tmp264;
2334 112 : compiler::TNode<String> tmp265;
2335 112 : compiler::TNode<Number> tmp266;
2336 112 : compiler::TNode<Object> tmp267;
2337 112 : compiler::TNode<Object> tmp268;
2338 112 : compiler::TNode<Map> tmp269;
2339 112 : compiler::TNode<Int32T> tmp270;
2340 112 : compiler::TNode<BuiltinPtr> tmp271;
2341 112 : ca_.Bind(&block32, &tmp263, &tmp264, &tmp265, &tmp266, &tmp267, &tmp268, &tmp269, &tmp270, &tmp271);
2342 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 405);
2343 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 404);
2344 112 : ca_.Goto(&block34, tmp263, tmp264, tmp265, tmp266, tmp267, tmp268, tmp269, tmp270, ca_.UncheckedCast<BuiltinPtr>(ca_.SmiConstant(Builtins::kLoadJoinTypedElement17ATFixedInt16Array)));
2345 : }
2346 :
2347 112 : if (block33.is_used()) {
2348 112 : compiler::TNode<Context> tmp272;
2349 112 : compiler::TNode<JSReceiver> tmp273;
2350 112 : compiler::TNode<String> tmp274;
2351 112 : compiler::TNode<Number> tmp275;
2352 112 : compiler::TNode<Object> tmp276;
2353 112 : compiler::TNode<Object> tmp277;
2354 112 : compiler::TNode<Map> tmp278;
2355 112 : compiler::TNode<Int32T> tmp279;
2356 112 : compiler::TNode<BuiltinPtr> tmp280;
2357 112 : ca_.Bind(&block33, &tmp272, &tmp273, &tmp274, &tmp275, &tmp276, &tmp277, &tmp278, &tmp279, &tmp280);
2358 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 406);
2359 112 : compiler::TNode<Int32T> tmp281;
2360 112 : USE(tmp281);
2361 112 : tmp281 = ca_.UncheckedCast<Int32T>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr14ATElementsKind24ATconstexpr_ElementsKind(UINT32_ELEMENTS));
2362 112 : compiler::TNode<BoolT> tmp282;
2363 112 : USE(tmp282);
2364 112 : tmp282 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).ElementsKindEqual(compiler::TNode<Int32T>{tmp279}, compiler::TNode<Int32T>{tmp281}));
2365 112 : ca_.Branch(tmp282, &block35, &block36, tmp272, tmp273, tmp274, tmp275, tmp276, tmp277, tmp278, tmp279, tmp280);
2366 : }
2367 :
2368 112 : if (block35.is_used()) {
2369 112 : compiler::TNode<Context> tmp283;
2370 112 : compiler::TNode<JSReceiver> tmp284;
2371 112 : compiler::TNode<String> tmp285;
2372 112 : compiler::TNode<Number> tmp286;
2373 112 : compiler::TNode<Object> tmp287;
2374 112 : compiler::TNode<Object> tmp288;
2375 112 : compiler::TNode<Map> tmp289;
2376 112 : compiler::TNode<Int32T> tmp290;
2377 112 : compiler::TNode<BuiltinPtr> tmp291;
2378 112 : ca_.Bind(&block35, &tmp283, &tmp284, &tmp285, &tmp286, &tmp287, &tmp288, &tmp289, &tmp290, &tmp291);
2379 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 407);
2380 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 406);
2381 112 : ca_.Goto(&block37, tmp283, tmp284, tmp285, tmp286, tmp287, tmp288, tmp289, tmp290, ca_.UncheckedCast<BuiltinPtr>(ca_.SmiConstant(Builtins::kLoadJoinTypedElement18ATFixedUint32Array)));
2382 : }
2383 :
2384 112 : if (block36.is_used()) {
2385 112 : compiler::TNode<Context> tmp292;
2386 112 : compiler::TNode<JSReceiver> tmp293;
2387 112 : compiler::TNode<String> tmp294;
2388 112 : compiler::TNode<Number> tmp295;
2389 112 : compiler::TNode<Object> tmp296;
2390 112 : compiler::TNode<Object> tmp297;
2391 112 : compiler::TNode<Map> tmp298;
2392 112 : compiler::TNode<Int32T> tmp299;
2393 112 : compiler::TNode<BuiltinPtr> tmp300;
2394 112 : ca_.Bind(&block36, &tmp292, &tmp293, &tmp294, &tmp295, &tmp296, &tmp297, &tmp298, &tmp299, &tmp300);
2395 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 409);
2396 112 : CodeStubAssembler(state_).Unreachable();
2397 : }
2398 :
2399 112 : if (block37.is_used()) {
2400 112 : compiler::TNode<Context> tmp301;
2401 112 : compiler::TNode<JSReceiver> tmp302;
2402 112 : compiler::TNode<String> tmp303;
2403 112 : compiler::TNode<Number> tmp304;
2404 112 : compiler::TNode<Object> tmp305;
2405 112 : compiler::TNode<Object> tmp306;
2406 112 : compiler::TNode<Map> tmp307;
2407 112 : compiler::TNode<Int32T> tmp308;
2408 112 : compiler::TNode<BuiltinPtr> tmp309;
2409 112 : ca_.Bind(&block37, &tmp301, &tmp302, &tmp303, &tmp304, &tmp305, &tmp306, &tmp307, &tmp308, &tmp309);
2410 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 404);
2411 112 : ca_.Goto(&block34, tmp301, tmp302, tmp303, tmp304, tmp305, tmp306, tmp307, tmp308, tmp309);
2412 : }
2413 :
2414 112 : if (block34.is_used()) {
2415 112 : compiler::TNode<Context> tmp310;
2416 112 : compiler::TNode<JSReceiver> tmp311;
2417 112 : compiler::TNode<String> tmp312;
2418 112 : compiler::TNode<Number> tmp313;
2419 112 : compiler::TNode<Object> tmp314;
2420 112 : compiler::TNode<Object> tmp315;
2421 112 : compiler::TNode<Map> tmp316;
2422 112 : compiler::TNode<Int32T> tmp317;
2423 112 : compiler::TNode<BuiltinPtr> tmp318;
2424 112 : ca_.Bind(&block34, &tmp310, &tmp311, &tmp312, &tmp313, &tmp314, &tmp315, &tmp316, &tmp317, &tmp318);
2425 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 402);
2426 112 : ca_.Goto(&block31, tmp310, tmp311, tmp312, tmp313, tmp314, tmp315, tmp316, tmp317, tmp318);
2427 : }
2428 :
2429 112 : if (block31.is_used()) {
2430 112 : compiler::TNode<Context> tmp319;
2431 112 : compiler::TNode<JSReceiver> tmp320;
2432 112 : compiler::TNode<String> tmp321;
2433 112 : compiler::TNode<Number> tmp322;
2434 112 : compiler::TNode<Object> tmp323;
2435 112 : compiler::TNode<Object> tmp324;
2436 112 : compiler::TNode<Map> tmp325;
2437 112 : compiler::TNode<Int32T> tmp326;
2438 112 : compiler::TNode<BuiltinPtr> tmp327;
2439 112 : ca_.Bind(&block31, &tmp319, &tmp320, &tmp321, &tmp322, &tmp323, &tmp324, &tmp325, &tmp326, &tmp327);
2440 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 400);
2441 112 : ca_.Goto(&block28, tmp319, tmp320, tmp321, tmp322, tmp323, tmp324, tmp325, tmp326, tmp327);
2442 : }
2443 :
2444 112 : if (block28.is_used()) {
2445 112 : compiler::TNode<Context> tmp328;
2446 112 : compiler::TNode<JSReceiver> tmp329;
2447 112 : compiler::TNode<String> tmp330;
2448 112 : compiler::TNode<Number> tmp331;
2449 112 : compiler::TNode<Object> tmp332;
2450 112 : compiler::TNode<Object> tmp333;
2451 112 : compiler::TNode<Map> tmp334;
2452 112 : compiler::TNode<Int32T> tmp335;
2453 112 : compiler::TNode<BuiltinPtr> tmp336;
2454 112 : ca_.Bind(&block28, &tmp328, &tmp329, &tmp330, &tmp331, &tmp332, &tmp333, &tmp334, &tmp335, &tmp336);
2455 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 398);
2456 112 : ca_.Goto(&block25, tmp328, tmp329, tmp330, tmp331, tmp332, tmp333, tmp334, tmp335, tmp336);
2457 : }
2458 :
2459 112 : if (block25.is_used()) {
2460 112 : compiler::TNode<Context> tmp337;
2461 112 : compiler::TNode<JSReceiver> tmp338;
2462 112 : compiler::TNode<String> tmp339;
2463 112 : compiler::TNode<Number> tmp340;
2464 112 : compiler::TNode<Object> tmp341;
2465 112 : compiler::TNode<Object> tmp342;
2466 112 : compiler::TNode<Map> tmp343;
2467 112 : compiler::TNode<Int32T> tmp344;
2468 112 : compiler::TNode<BuiltinPtr> tmp345;
2469 112 : ca_.Bind(&block25, &tmp337, &tmp338, &tmp339, &tmp340, &tmp341, &tmp342, &tmp343, &tmp344, &tmp345);
2470 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 381);
2471 112 : ca_.Goto(&block4, tmp337, tmp338, tmp339, tmp340, tmp341, tmp342, tmp343, tmp344, tmp345);
2472 : }
2473 :
2474 112 : if (block4.is_used()) {
2475 112 : compiler::TNode<Context> tmp346;
2476 112 : compiler::TNode<JSReceiver> tmp347;
2477 112 : compiler::TNode<String> tmp348;
2478 112 : compiler::TNode<Number> tmp349;
2479 112 : compiler::TNode<Object> tmp350;
2480 112 : compiler::TNode<Object> tmp351;
2481 112 : compiler::TNode<Map> tmp352;
2482 112 : compiler::TNode<Int32T> tmp353;
2483 112 : compiler::TNode<BuiltinPtr> tmp354;
2484 112 : ca_.Bind(&block4, &tmp346, &tmp347, &tmp348, &tmp349, &tmp350, &tmp351, &tmp352, &tmp353, &tmp354);
2485 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 413);
2486 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 412);
2487 112 : compiler::TNode<String> tmp355;
2488 112 : USE(tmp355);
2489 112 : tmp355 = ca_.UncheckedCast<String>(ArrayJoinBuiltinsFromDSLAssembler(state_).ArrayJoinImpl12JSTypedArray(compiler::TNode<Context>{tmp346}, compiler::TNode<JSReceiver>{tmp347}, compiler::TNode<String>{tmp348}, compiler::TNode<Number>{tmp349}, p_useToLocaleString, compiler::TNode<Object>{tmp350}, compiler::TNode<Object>{tmp351}, compiler::TNode<BuiltinPtr>{tmp354}));
2490 112 : ca_.Goto(&block1, tmp346, tmp347, tmp348, tmp349, tmp350, tmp351, tmp355);
2491 : }
2492 :
2493 112 : if (block1.is_used()) {
2494 112 : compiler::TNode<Context> tmp356;
2495 112 : compiler::TNode<JSReceiver> tmp357;
2496 112 : compiler::TNode<String> tmp358;
2497 112 : compiler::TNode<Number> tmp359;
2498 112 : compiler::TNode<Object> tmp360;
2499 112 : compiler::TNode<Object> tmp361;
2500 112 : compiler::TNode<Object> tmp362;
2501 112 : ca_.Bind(&block1, &tmp356, &tmp357, &tmp358, &tmp359, &tmp360, &tmp361, &tmp362);
2502 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 323);
2503 112 : ca_.Goto(&block38, tmp356, tmp357, tmp358, tmp359, tmp360, tmp361, tmp362);
2504 : }
2505 :
2506 112 : compiler::TNode<Context> tmp363;
2507 112 : compiler::TNode<JSReceiver> tmp364;
2508 112 : compiler::TNode<String> tmp365;
2509 112 : compiler::TNode<Number> tmp366;
2510 112 : compiler::TNode<Object> tmp367;
2511 112 : compiler::TNode<Object> tmp368;
2512 112 : compiler::TNode<Object> tmp369;
2513 112 : ca_.Bind(&block38, &tmp363, &tmp364, &tmp365, &tmp366, &tmp367, &tmp368, &tmp369);
2514 224 : return compiler::TNode<Object>{tmp369};
2515 : }
2516 :
2517 672 : compiler::TNode<FixedArray> ArrayJoinBuiltinsFromDSLAssembler::LoadJoinStack(compiler::TNode<Context> p_context, compiler::CodeAssemblerLabel* label_IfUninitialized) {
2518 672 : compiler::CodeAssemblerParameterizedLabel<Context> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
2519 1344 : compiler::CodeAssemblerParameterizedLabel<Context, Context, HeapObject> block3(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
2520 1344 : compiler::CodeAssemblerParameterizedLabel<Context, Context, HeapObject> block4(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
2521 1344 : compiler::CodeAssemblerParameterizedLabel<Context, FixedArray> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
2522 1344 : compiler::CodeAssemblerParameterizedLabel<> block1(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
2523 1344 : compiler::CodeAssemblerParameterizedLabel<Context, FixedArray> block5(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
2524 672 : ca_.Goto(&block0, p_context);
2525 :
2526 672 : if (block0.is_used()) {
2527 672 : compiler::TNode<Context> tmp0;
2528 672 : ca_.Bind(&block0, &tmp0);
2529 672 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 425);
2530 672 : compiler::TNode<Context> tmp1;
2531 672 : USE(tmp1);
2532 672 : tmp1 = ca_.UncheckedCast<Context>(CodeStubAssembler(state_).LoadNativeContext(compiler::TNode<Context>{tmp0}));
2533 672 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 427);
2534 672 : compiler::TNode<IntPtrT> tmp2;
2535 672 : USE(tmp2);
2536 672 : tmp2 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr19ATNativeContextSlot29ATconstexpr_NativeContextSlot(Context::ARRAY_JOIN_STACK_INDEX));
2537 672 : compiler::TNode<Object> tmp3;
2538 672 : USE(tmp3);
2539 672 : tmp3 = ca_.UncheckedCast<Object>(CodeStubAssembler(state_).LoadContextElement(compiler::TNode<Context>{tmp1}, compiler::TNode<IntPtrT>{tmp2}));
2540 672 : compiler::TNode<HeapObject> tmp4;
2541 672 : USE(tmp4);
2542 672 : tmp4 = ca_.UncheckedCast<HeapObject>(BaseBuiltinsFromDSLAssembler(state_).UnsafeCast10HeapObject(compiler::TNode<Context>{tmp0}, compiler::TNode<Object>{tmp3}));
2543 672 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 426);
2544 672 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 428);
2545 672 : compiler::TNode<Oddball> tmp5;
2546 672 : USE(tmp5);
2547 672 : tmp5 = BaseBuiltinsFromDSLAssembler(state_).Undefined();
2548 672 : compiler::TNode<BoolT> tmp6;
2549 672 : USE(tmp6);
2550 672 : tmp6 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).WordEqual(compiler::TNode<Object>{tmp4}, compiler::TNode<HeapObject>{tmp5}));
2551 672 : ca_.Branch(tmp6, &block3, &block4, tmp0, tmp1, tmp4);
2552 : }
2553 :
2554 672 : if (block3.is_used()) {
2555 672 : compiler::TNode<Context> tmp7;
2556 672 : compiler::TNode<Context> tmp8;
2557 672 : compiler::TNode<HeapObject> tmp9;
2558 672 : ca_.Bind(&block3, &tmp7, &tmp8, &tmp9);
2559 672 : ca_.Goto(&block1);
2560 : }
2561 :
2562 672 : if (block4.is_used()) {
2563 672 : compiler::TNode<Context> tmp10;
2564 672 : compiler::TNode<Context> tmp11;
2565 672 : compiler::TNode<HeapObject> tmp12;
2566 672 : ca_.Bind(&block4, &tmp10, &tmp11, &tmp12);
2567 672 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 430);
2568 672 : compiler::TNode<FixedArray> tmp13;
2569 672 : USE(tmp13);
2570 672 : tmp13 = ca_.UncheckedCast<FixedArray>(BaseBuiltinsFromDSLAssembler(state_).UnsafeCast10FixedArray(compiler::TNode<Context>{tmp10}, compiler::TNode<Object>{tmp12}));
2571 672 : ca_.Goto(&block2, tmp10, tmp13);
2572 : }
2573 :
2574 672 : if (block2.is_used()) {
2575 672 : compiler::TNode<Context> tmp14;
2576 672 : compiler::TNode<FixedArray> tmp15;
2577 672 : ca_.Bind(&block2, &tmp14, &tmp15);
2578 672 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 423);
2579 672 : ca_.Goto(&block5, tmp14, tmp15);
2580 : }
2581 :
2582 672 : if (block1.is_used()) {
2583 672 : ca_.Bind(&block1);
2584 672 : ca_.Goto(label_IfUninitialized);
2585 : }
2586 :
2587 672 : compiler::TNode<Context> tmp16;
2588 672 : compiler::TNode<FixedArray> tmp17;
2589 672 : ca_.Bind(&block5, &tmp16, &tmp17);
2590 1344 : return compiler::TNode<FixedArray>{tmp17};
2591 : }
2592 :
2593 336 : void ArrayJoinBuiltinsFromDSLAssembler::SetJoinStack(compiler::TNode<Context> p_context, compiler::TNode<FixedArray> p_stack) {
2594 336 : compiler::CodeAssemblerParameterizedLabel<Context, FixedArray> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
2595 672 : compiler::CodeAssemblerParameterizedLabel<Context, FixedArray> block1(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
2596 672 : compiler::CodeAssemblerParameterizedLabel<Context, FixedArray> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
2597 336 : ca_.Goto(&block0, p_context, p_stack);
2598 :
2599 336 : if (block0.is_used()) {
2600 336 : compiler::TNode<Context> tmp0;
2601 336 : compiler::TNode<FixedArray> tmp1;
2602 336 : ca_.Bind(&block0, &tmp0, &tmp1);
2603 336 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 434);
2604 336 : compiler::TNode<Context> tmp2;
2605 336 : USE(tmp2);
2606 336 : tmp2 = ca_.UncheckedCast<Context>(CodeStubAssembler(state_).LoadNativeContext(compiler::TNode<Context>{tmp0}));
2607 336 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 435);
2608 336 : compiler::TNode<IntPtrT> tmp3;
2609 336 : USE(tmp3);
2610 336 : tmp3 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr19ATNativeContextSlot29ATconstexpr_NativeContextSlot(Context::ARRAY_JOIN_STACK_INDEX));
2611 336 : CodeStubAssembler(state_).StoreContextElement(compiler::TNode<Context>{tmp2}, compiler::TNode<IntPtrT>{tmp3}, compiler::TNode<Object>{tmp1});
2612 336 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 433);
2613 336 : ca_.Goto(&block1, tmp0, tmp1);
2614 : }
2615 :
2616 336 : if (block1.is_used()) {
2617 336 : compiler::TNode<Context> tmp4;
2618 336 : compiler::TNode<FixedArray> tmp5;
2619 336 : ca_.Bind(&block1, &tmp4, &tmp5);
2620 336 : ca_.Goto(&block2, tmp4, tmp5);
2621 : }
2622 :
2623 336 : compiler::TNode<Context> tmp6;
2624 336 : compiler::TNode<FixedArray> tmp7;
2625 672 : ca_.Bind(&block2, &tmp6, &tmp7);
2626 336 : }
2627 :
2628 392 : TF_BUILTIN(JoinStackPush, CodeStubAssembler) {
2629 56 : compiler::CodeAssemblerState* state_ = state(); compiler::CodeAssembler ca_(state());
2630 56 : TNode<Context> parameter0 = UncheckedCast<Context>(Parameter(Descriptor::kContext));
2631 56 : USE(parameter0);
2632 56 : compiler::TNode<FixedArray> parameter1 = UncheckedCast<FixedArray>(Parameter(Descriptor::kStack));
2633 56 : USE(parameter1);
2634 56 : compiler::TNode<JSReceiver> parameter2 = UncheckedCast<JSReceiver>(Parameter(Descriptor::kReceiver));
2635 56 : USE(parameter2);
2636 112 : compiler::CodeAssemblerParameterizedLabel<Context, FixedArray, JSReceiver> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
2637 112 : compiler::CodeAssemblerParameterizedLabel<Context, FixedArray, JSReceiver, IntPtrT, IntPtrT> block3(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
2638 112 : compiler::CodeAssemblerParameterizedLabel<Context, FixedArray, JSReceiver, IntPtrT, IntPtrT> block1(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
2639 112 : compiler::CodeAssemblerParameterizedLabel<Context, FixedArray, JSReceiver, IntPtrT, IntPtrT, Object> block5(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
2640 112 : compiler::CodeAssemblerParameterizedLabel<Context, FixedArray, JSReceiver, IntPtrT, IntPtrT, Object> block6(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
2641 112 : compiler::CodeAssemblerParameterizedLabel<Context, FixedArray, JSReceiver, IntPtrT, IntPtrT, Object> block7(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
2642 112 : compiler::CodeAssemblerParameterizedLabel<Context, FixedArray, JSReceiver, IntPtrT, IntPtrT, Object> block8(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
2643 112 : compiler::CodeAssemblerParameterizedLabel<Context, FixedArray, JSReceiver, IntPtrT, IntPtrT> block4(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
2644 112 : compiler::CodeAssemblerParameterizedLabel<Context, FixedArray, JSReceiver, IntPtrT, IntPtrT> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
2645 56 : ca_.Goto(&block0, parameter0, parameter1, parameter2);
2646 :
2647 56 : if (block0.is_used()) {
2648 56 : compiler::TNode<Context> tmp0;
2649 56 : compiler::TNode<FixedArray> tmp1;
2650 56 : compiler::TNode<JSReceiver> tmp2;
2651 56 : ca_.Bind(&block0, &tmp0, &tmp1, &tmp2);
2652 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 443);
2653 56 : compiler::TNode<IntPtrT> tmp3;
2654 56 : USE(tmp3);
2655 56 : tmp3 = ca_.UncheckedCast<IntPtrT>(CodeStubAssembler(state_).LoadAndUntagFixedArrayBaseLength(compiler::TNode<FixedArrayBase>{tmp1}));
2656 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 444);
2657 56 : compiler::TNode<IntPtrT> tmp4;
2658 56 : USE(tmp4);
2659 56 : tmp4 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATintptr17ATconstexpr_int31(0));
2660 56 : ca_.Goto(&block3, tmp0, tmp1, tmp2, tmp3, tmp4);
2661 : }
2662 :
2663 56 : if (block3.is_used()) {
2664 56 : compiler::TNode<Context> tmp5;
2665 56 : compiler::TNode<FixedArray> tmp6;
2666 56 : compiler::TNode<JSReceiver> tmp7;
2667 56 : compiler::TNode<IntPtrT> tmp8;
2668 56 : compiler::TNode<IntPtrT> tmp9;
2669 56 : ca_.Bind(&block3, &tmp5, &tmp6, &tmp7, &tmp8, &tmp9);
2670 56 : compiler::TNode<BoolT> tmp10;
2671 56 : USE(tmp10);
2672 56 : tmp10 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).IntPtrLessThan(compiler::TNode<IntPtrT>{tmp9}, compiler::TNode<IntPtrT>{tmp8}));
2673 56 : ca_.Branch(tmp10, &block1, &block2, tmp5, tmp6, tmp7, tmp8, tmp9);
2674 : }
2675 :
2676 56 : if (block1.is_used()) {
2677 56 : compiler::TNode<Context> tmp11;
2678 56 : compiler::TNode<FixedArray> tmp12;
2679 56 : compiler::TNode<JSReceiver> tmp13;
2680 56 : compiler::TNode<IntPtrT> tmp14;
2681 56 : compiler::TNode<IntPtrT> tmp15;
2682 56 : ca_.Bind(&block1, &tmp11, &tmp12, &tmp13, &tmp14, &tmp15);
2683 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 445);
2684 56 : compiler::TNode<Object> tmp16;
2685 56 : USE(tmp16);
2686 56 : tmp16 = ca_.UncheckedCast<Object>(CodeStubAssembler(state_).LoadFixedArrayElement(compiler::TNode<FixedArray>{tmp12}, compiler::TNode<IntPtrT>{tmp15}));
2687 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 448);
2688 56 : compiler::TNode<Oddball> tmp17;
2689 56 : USE(tmp17);
2690 56 : tmp17 = BaseBuiltinsFromDSLAssembler(state_).Hole();
2691 56 : compiler::TNode<BoolT> tmp18;
2692 56 : USE(tmp18);
2693 56 : tmp18 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).WordEqual(compiler::TNode<Object>{tmp16}, compiler::TNode<HeapObject>{tmp17}));
2694 56 : ca_.Branch(tmp18, &block5, &block6, tmp11, tmp12, tmp13, tmp14, tmp15, tmp16);
2695 : }
2696 :
2697 56 : if (block5.is_used()) {
2698 56 : compiler::TNode<Context> tmp19;
2699 56 : compiler::TNode<FixedArray> tmp20;
2700 56 : compiler::TNode<JSReceiver> tmp21;
2701 56 : compiler::TNode<IntPtrT> tmp22;
2702 56 : compiler::TNode<IntPtrT> tmp23;
2703 56 : compiler::TNode<Object> tmp24;
2704 56 : ca_.Bind(&block5, &tmp19, &tmp20, &tmp21, &tmp22, &tmp23, &tmp24);
2705 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 449);
2706 56 : CodeStubAssembler(state_).StoreFixedArrayElement(compiler::TNode<FixedArray>{tmp20}, compiler::TNode<IntPtrT>{tmp23}, compiler::TNode<HeapObject>{tmp21});
2707 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 450);
2708 56 : compiler::TNode<Oddball> tmp25;
2709 56 : USE(tmp25);
2710 56 : tmp25 = BaseBuiltinsFromDSLAssembler(state_).True();
2711 56 : CodeStubAssembler(state_).Return(tmp25);
2712 : }
2713 :
2714 56 : if (block6.is_used()) {
2715 56 : compiler::TNode<Context> tmp26;
2716 56 : compiler::TNode<FixedArray> tmp27;
2717 56 : compiler::TNode<JSReceiver> tmp28;
2718 56 : compiler::TNode<IntPtrT> tmp29;
2719 56 : compiler::TNode<IntPtrT> tmp30;
2720 56 : compiler::TNode<Object> tmp31;
2721 56 : ca_.Bind(&block6, &tmp26, &tmp27, &tmp28, &tmp29, &tmp30, &tmp31);
2722 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 454);
2723 56 : compiler::TNode<BoolT> tmp32;
2724 56 : USE(tmp32);
2725 56 : tmp32 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).WordEqual(compiler::TNode<HeapObject>{tmp28}, compiler::TNode<Object>{tmp31}));
2726 56 : ca_.Branch(tmp32, &block7, &block8, tmp26, tmp27, tmp28, tmp29, tmp30, tmp31);
2727 : }
2728 :
2729 56 : if (block7.is_used()) {
2730 56 : compiler::TNode<Context> tmp33;
2731 56 : compiler::TNode<FixedArray> tmp34;
2732 56 : compiler::TNode<JSReceiver> tmp35;
2733 56 : compiler::TNode<IntPtrT> tmp36;
2734 56 : compiler::TNode<IntPtrT> tmp37;
2735 56 : compiler::TNode<Object> tmp38;
2736 56 : ca_.Bind(&block7, &tmp33, &tmp34, &tmp35, &tmp36, &tmp37, &tmp38);
2737 56 : compiler::TNode<Oddball> tmp39;
2738 56 : USE(tmp39);
2739 56 : tmp39 = BaseBuiltinsFromDSLAssembler(state_).False();
2740 56 : CodeStubAssembler(state_).Return(tmp39);
2741 : }
2742 :
2743 56 : if (block8.is_used()) {
2744 56 : compiler::TNode<Context> tmp40;
2745 56 : compiler::TNode<FixedArray> tmp41;
2746 56 : compiler::TNode<JSReceiver> tmp42;
2747 56 : compiler::TNode<IntPtrT> tmp43;
2748 56 : compiler::TNode<IntPtrT> tmp44;
2749 56 : compiler::TNode<Object> tmp45;
2750 56 : ca_.Bind(&block8, &tmp40, &tmp41, &tmp42, &tmp43, &tmp44, &tmp45);
2751 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 444);
2752 56 : ca_.Goto(&block4, tmp40, tmp41, tmp42, tmp43, tmp44);
2753 : }
2754 :
2755 56 : if (block4.is_used()) {
2756 56 : compiler::TNode<Context> tmp46;
2757 56 : compiler::TNode<FixedArray> tmp47;
2758 56 : compiler::TNode<JSReceiver> tmp48;
2759 56 : compiler::TNode<IntPtrT> tmp49;
2760 56 : compiler::TNode<IntPtrT> tmp50;
2761 56 : ca_.Bind(&block4, &tmp46, &tmp47, &tmp48, &tmp49, &tmp50);
2762 56 : compiler::TNode<IntPtrT> tmp51;
2763 56 : USE(tmp51);
2764 56 : tmp51 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATintptr17ATconstexpr_int31(1));
2765 56 : compiler::TNode<IntPtrT> tmp52;
2766 56 : USE(tmp52);
2767 56 : tmp52 = ca_.UncheckedCast<IntPtrT>(CodeStubAssembler(state_).IntPtrAdd(compiler::TNode<IntPtrT>{tmp50}, compiler::TNode<IntPtrT>{tmp51}));
2768 56 : ca_.Goto(&block3, tmp46, tmp47, tmp48, tmp49, tmp52);
2769 : }
2770 :
2771 56 : if (block2.is_used()) {
2772 56 : compiler::TNode<Context> tmp53;
2773 56 : compiler::TNode<FixedArray> tmp54;
2774 56 : compiler::TNode<JSReceiver> tmp55;
2775 56 : compiler::TNode<IntPtrT> tmp56;
2776 56 : compiler::TNode<IntPtrT> tmp57;
2777 56 : ca_.Bind(&block2, &tmp53, &tmp54, &tmp55, &tmp56, &tmp57);
2778 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 459);
2779 56 : compiler::TNode<FixedArray> tmp58;
2780 56 : USE(tmp58);
2781 56 : tmp58 = ca_.UncheckedCast<FixedArray>(ArrayJoinBuiltinsFromDSLAssembler(state_).StoreAndGrowFixedArray10JSReceiver(compiler::TNode<FixedArray>{tmp54}, compiler::TNode<IntPtrT>{tmp56}, compiler::TNode<JSReceiver>{tmp55}));
2782 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 458);
2783 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 460);
2784 56 : ArrayJoinBuiltinsFromDSLAssembler(state_).SetJoinStack(compiler::TNode<Context>{tmp53}, compiler::TNode<FixedArray>{tmp58});
2785 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 461);
2786 56 : compiler::TNode<Oddball> tmp59;
2787 56 : USE(tmp59);
2788 56 : tmp59 = BaseBuiltinsFromDSLAssembler(state_).True();
2789 56 : CodeStubAssembler(state_).Return(tmp59);
2790 56 : }
2791 56 : }
2792 :
2793 224 : void ArrayJoinBuiltinsFromDSLAssembler::JoinStackPushInline(compiler::TNode<Context> p_context, compiler::TNode<JSReceiver> p_receiver, compiler::CodeAssemblerLabel* label_ReceiverAdded, compiler::CodeAssemblerLabel* label_ReceiverNotAdded) {
2794 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
2795 448 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver> block6(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
2796 448 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, FixedArray> block5(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
2797 448 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, FixedArray> block7(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
2798 448 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, FixedArray> block8(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
2799 448 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, FixedArray> block10(&ca_, compiler::CodeAssemblerLabel::kDeferred);
2800 448 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, FixedArray> block11(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
2801 448 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, FixedArray> block9(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
2802 448 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver> block4(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
2803 448 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver> block3(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
2804 448 : compiler::CodeAssemblerParameterizedLabel<> block1(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
2805 448 : compiler::CodeAssemblerParameterizedLabel<> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
2806 224 : ca_.Goto(&block0, p_context, p_receiver);
2807 :
2808 224 : if (block0.is_used()) {
2809 224 : compiler::TNode<Context> tmp0;
2810 224 : compiler::TNode<JSReceiver> tmp1;
2811 224 : ca_.Bind(&block0, &tmp0, &tmp1);
2812 224 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 471);
2813 224 : compiler::TNode<FixedArray> tmp2;
2814 224 : USE(tmp2);
2815 224 : compiler::CodeAssemblerLabel label0(&ca_);
2816 224 : tmp2 = ArrayJoinBuiltinsFromDSLAssembler(state_).LoadJoinStack(compiler::TNode<Context>{tmp0}, &label0);
2817 224 : ca_.Goto(&block5, tmp0, tmp1, tmp2);
2818 224 : if (label0.is_used()) {
2819 224 : ca_.Bind(&label0);
2820 224 : ca_.Goto(&block6, tmp0, tmp1);
2821 224 : }
2822 : }
2823 :
2824 224 : if (block6.is_used()) {
2825 224 : compiler::TNode<Context> tmp3;
2826 224 : compiler::TNode<JSReceiver> tmp4;
2827 224 : ca_.Bind(&block6, &tmp3, &tmp4);
2828 224 : ca_.Goto(&block4, tmp3, tmp4);
2829 : }
2830 :
2831 224 : if (block5.is_used()) {
2832 224 : compiler::TNode<Context> tmp5;
2833 224 : compiler::TNode<JSReceiver> tmp6;
2834 224 : compiler::TNode<FixedArray> tmp7;
2835 224 : ca_.Bind(&block5, &tmp5, &tmp6, &tmp7);
2836 224 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 473);
2837 224 : compiler::TNode<Object> tmp8;
2838 224 : USE(tmp8);
2839 224 : tmp8 = ca_.UncheckedCast<Object>(CodeStubAssembler(state_).LoadFixedArrayElement(compiler::TNode<FixedArray>{tmp7}, 0));
2840 224 : compiler::TNode<Oddball> tmp9;
2841 224 : USE(tmp9);
2842 224 : tmp9 = BaseBuiltinsFromDSLAssembler(state_).Hole();
2843 224 : compiler::TNode<BoolT> tmp10;
2844 224 : USE(tmp10);
2845 224 : tmp10 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).WordEqual(compiler::TNode<Object>{tmp8}, compiler::TNode<HeapObject>{tmp9}));
2846 224 : ca_.Branch(tmp10, &block7, &block8, tmp5, tmp6, tmp7);
2847 : }
2848 :
2849 224 : if (block7.is_used()) {
2850 224 : compiler::TNode<Context> tmp11;
2851 224 : compiler::TNode<JSReceiver> tmp12;
2852 224 : compiler::TNode<FixedArray> tmp13;
2853 224 : ca_.Bind(&block7, &tmp11, &tmp12, &tmp13);
2854 224 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 474);
2855 224 : CodeStubAssembler(state_).StoreFixedArrayElement(compiler::TNode<FixedArray>{tmp13}, 0, compiler::TNode<HeapObject>{tmp12});
2856 224 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 473);
2857 224 : ca_.Goto(&block9, tmp11, tmp12, tmp13);
2858 : }
2859 :
2860 224 : if (block8.is_used()) {
2861 224 : compiler::TNode<Context> tmp14;
2862 224 : compiler::TNode<JSReceiver> tmp15;
2863 224 : compiler::TNode<FixedArray> tmp16;
2864 224 : ca_.Bind(&block8, &tmp14, &tmp15, &tmp16);
2865 224 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 475);
2866 224 : compiler::TNode<Oddball> tmp17;
2867 224 : tmp17 = TORQUE_CAST(CodeStubAssembler(state_).CallBuiltin(Builtins::kJoinStackPush, tmp14, tmp16, tmp15));
2868 224 : USE(tmp17);
2869 224 : compiler::TNode<Oddball> tmp18;
2870 224 : USE(tmp18);
2871 224 : tmp18 = BaseBuiltinsFromDSLAssembler(state_).False();
2872 224 : compiler::TNode<BoolT> tmp19;
2873 224 : USE(tmp19);
2874 224 : tmp19 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).WordEqual(compiler::TNode<HeapObject>{tmp17}, compiler::TNode<HeapObject>{tmp18}));
2875 224 : ca_.Branch(tmp19, &block10, &block11, tmp14, tmp15, tmp16);
2876 : }
2877 :
2878 224 : if (block10.is_used()) {
2879 224 : compiler::TNode<Context> tmp20;
2880 224 : compiler::TNode<JSReceiver> tmp21;
2881 224 : compiler::TNode<FixedArray> tmp22;
2882 224 : ca_.Bind(&block10, &tmp20, &tmp21, &tmp22);
2883 224 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 477);
2884 224 : ca_.Goto(&block2);
2885 : }
2886 :
2887 224 : if (block11.is_used()) {
2888 224 : compiler::TNode<Context> tmp23;
2889 224 : compiler::TNode<JSReceiver> tmp24;
2890 224 : compiler::TNode<FixedArray> tmp25;
2891 224 : ca_.Bind(&block11, &tmp23, &tmp24, &tmp25);
2892 224 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 473);
2893 224 : ca_.Goto(&block9, tmp23, tmp24, tmp25);
2894 : }
2895 :
2896 224 : if (block9.is_used()) {
2897 224 : compiler::TNode<Context> tmp26;
2898 224 : compiler::TNode<JSReceiver> tmp27;
2899 224 : compiler::TNode<FixedArray> tmp28;
2900 224 : ca_.Bind(&block9, &tmp26, &tmp27, &tmp28);
2901 224 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 470);
2902 224 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 480);
2903 224 : ca_.Goto(&block3, tmp26, tmp27);
2904 : }
2905 :
2906 224 : if (block4.is_used()) {
2907 224 : compiler::TNode<Context> tmp29;
2908 224 : compiler::TNode<JSReceiver> tmp30;
2909 224 : ca_.Bind(&block4, &tmp29, &tmp30);
2910 224 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 482);
2911 224 : compiler::TNode<IntPtrT> tmp31;
2912 224 : USE(tmp31);
2913 224 : tmp31 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATintptr17ATconstexpr_int31(JSArray::kMinJoinStackSize));
2914 224 : compiler::TNode<FixedArray> tmp32;
2915 224 : USE(tmp32);
2916 224 : tmp32 = ca_.UncheckedCast<FixedArray>(CodeStubAssembler(state_).AllocateFixedArrayWithHoles(compiler::TNode<IntPtrT>{tmp31}, CodeStubAssembler::kNone));
2917 224 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 481);
2918 224 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 483);
2919 224 : CodeStubAssembler(state_).StoreFixedArrayElement(compiler::TNode<FixedArray>{tmp32}, 0, compiler::TNode<HeapObject>{tmp30});
2920 224 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 484);
2921 224 : ArrayJoinBuiltinsFromDSLAssembler(state_).SetJoinStack(compiler::TNode<Context>{tmp29}, compiler::TNode<FixedArray>{tmp32});
2922 224 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 480);
2923 224 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 470);
2924 224 : ca_.Goto(&block3, tmp29, tmp30);
2925 : }
2926 :
2927 224 : if (block3.is_used()) {
2928 224 : compiler::TNode<Context> tmp33;
2929 224 : compiler::TNode<JSReceiver> tmp34;
2930 224 : ca_.Bind(&block3, &tmp33, &tmp34);
2931 224 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 486);
2932 224 : ca_.Goto(&block1);
2933 : }
2934 :
2935 224 : if (block1.is_used()) {
2936 224 : ca_.Bind(&block1);
2937 224 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 467);
2938 224 : ca_.Goto(label_ReceiverAdded);
2939 : }
2940 :
2941 224 : if (block2.is_used()) {
2942 224 : ca_.Bind(&block2);
2943 224 : ca_.Goto(label_ReceiverNotAdded);
2944 224 : }
2945 224 : }
2946 :
2947 392 : TF_BUILTIN(JoinStackPop, CodeStubAssembler) {
2948 56 : compiler::CodeAssemblerState* state_ = state(); compiler::CodeAssembler ca_(state());
2949 56 : TNode<Context> parameter0 = UncheckedCast<Context>(Parameter(Descriptor::kContext));
2950 56 : USE(parameter0);
2951 56 : compiler::TNode<FixedArray> parameter1 = UncheckedCast<FixedArray>(Parameter(Descriptor::kStack));
2952 56 : USE(parameter1);
2953 56 : compiler::TNode<JSReceiver> parameter2 = UncheckedCast<JSReceiver>(Parameter(Descriptor::kReceiver));
2954 56 : USE(parameter2);
2955 112 : compiler::CodeAssemblerParameterizedLabel<Context, FixedArray, JSReceiver> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
2956 112 : compiler::CodeAssemblerParameterizedLabel<Context, FixedArray, JSReceiver, IntPtrT, IntPtrT> block3(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
2957 112 : compiler::CodeAssemblerParameterizedLabel<Context, FixedArray, JSReceiver, IntPtrT, IntPtrT> block1(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
2958 112 : compiler::CodeAssemblerParameterizedLabel<Context, FixedArray, JSReceiver, IntPtrT, IntPtrT> block5(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
2959 112 : compiler::CodeAssemblerParameterizedLabel<Context, FixedArray, JSReceiver, IntPtrT, IntPtrT> block9(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
2960 112 : compiler::CodeAssemblerParameterizedLabel<Context, FixedArray, JSReceiver, IntPtrT, IntPtrT> block7(&ca_, compiler::CodeAssemblerLabel::kDeferred);
2961 112 : compiler::CodeAssemblerParameterizedLabel<Context, FixedArray, JSReceiver, IntPtrT, IntPtrT> block8(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
2962 112 : compiler::CodeAssemblerParameterizedLabel<Context, FixedArray, JSReceiver, IntPtrT, IntPtrT> block10(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
2963 112 : compiler::CodeAssemblerParameterizedLabel<Context, FixedArray, JSReceiver, IntPtrT, IntPtrT> block6(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
2964 112 : compiler::CodeAssemblerParameterizedLabel<Context, FixedArray, JSReceiver, IntPtrT, IntPtrT> block4(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
2965 112 : compiler::CodeAssemblerParameterizedLabel<Context, FixedArray, JSReceiver, IntPtrT, IntPtrT> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
2966 56 : ca_.Goto(&block0, parameter0, parameter1, parameter2);
2967 :
2968 56 : if (block0.is_used()) {
2969 56 : compiler::TNode<Context> tmp0;
2970 56 : compiler::TNode<FixedArray> tmp1;
2971 56 : compiler::TNode<JSReceiver> tmp2;
2972 56 : ca_.Bind(&block0, &tmp0, &tmp1, &tmp2);
2973 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 493);
2974 56 : compiler::TNode<IntPtrT> tmp3;
2975 56 : USE(tmp3);
2976 56 : tmp3 = ca_.UncheckedCast<IntPtrT>(CodeStubAssembler(state_).LoadAndUntagFixedArrayBaseLength(compiler::TNode<FixedArrayBase>{tmp1}));
2977 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 494);
2978 56 : compiler::TNode<IntPtrT> tmp4;
2979 56 : USE(tmp4);
2980 56 : tmp4 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATintptr17ATconstexpr_int31(0));
2981 56 : ca_.Goto(&block3, tmp0, tmp1, tmp2, tmp3, tmp4);
2982 : }
2983 :
2984 56 : if (block3.is_used()) {
2985 56 : compiler::TNode<Context> tmp5;
2986 56 : compiler::TNode<FixedArray> tmp6;
2987 56 : compiler::TNode<JSReceiver> tmp7;
2988 56 : compiler::TNode<IntPtrT> tmp8;
2989 56 : compiler::TNode<IntPtrT> tmp9;
2990 56 : ca_.Bind(&block3, &tmp5, &tmp6, &tmp7, &tmp8, &tmp9);
2991 56 : compiler::TNode<BoolT> tmp10;
2992 56 : USE(tmp10);
2993 56 : tmp10 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).IntPtrLessThan(compiler::TNode<IntPtrT>{tmp9}, compiler::TNode<IntPtrT>{tmp8}));
2994 56 : ca_.Branch(tmp10, &block1, &block2, tmp5, tmp6, tmp7, tmp8, tmp9);
2995 : }
2996 :
2997 56 : if (block1.is_used()) {
2998 56 : compiler::TNode<Context> tmp11;
2999 56 : compiler::TNode<FixedArray> tmp12;
3000 56 : compiler::TNode<JSReceiver> tmp13;
3001 56 : compiler::TNode<IntPtrT> tmp14;
3002 56 : compiler::TNode<IntPtrT> tmp15;
3003 56 : ca_.Bind(&block1, &tmp11, &tmp12, &tmp13, &tmp14, &tmp15);
3004 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 495);
3005 56 : compiler::TNode<Object> tmp16;
3006 56 : USE(tmp16);
3007 56 : tmp16 = ca_.UncheckedCast<Object>(CodeStubAssembler(state_).LoadFixedArrayElement(compiler::TNode<FixedArray>{tmp12}, compiler::TNode<IntPtrT>{tmp15}));
3008 56 : compiler::TNode<BoolT> tmp17;
3009 56 : USE(tmp17);
3010 56 : tmp17 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).WordEqual(compiler::TNode<Object>{tmp16}, compiler::TNode<HeapObject>{tmp13}));
3011 56 : ca_.Branch(tmp17, &block5, &block6, tmp11, tmp12, tmp13, tmp14, tmp15);
3012 : }
3013 :
3014 56 : if (block5.is_used()) {
3015 56 : compiler::TNode<Context> tmp18;
3016 56 : compiler::TNode<FixedArray> tmp19;
3017 56 : compiler::TNode<JSReceiver> tmp20;
3018 56 : compiler::TNode<IntPtrT> tmp21;
3019 56 : compiler::TNode<IntPtrT> tmp22;
3020 56 : ca_.Bind(&block5, &tmp18, &tmp19, &tmp20, &tmp21, &tmp22);
3021 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 498);
3022 56 : compiler::TNode<IntPtrT> tmp23;
3023 56 : USE(tmp23);
3024 56 : tmp23 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATintptr17ATconstexpr_int31(0));
3025 56 : compiler::TNode<BoolT> tmp24;
3026 56 : USE(tmp24);
3027 56 : tmp24 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).WordEqual(compiler::TNode<IntPtrT>{tmp22}, compiler::TNode<IntPtrT>{tmp23}));
3028 56 : ca_.Branch(tmp24, &block9, &block8, tmp18, tmp19, tmp20, tmp21, tmp22);
3029 : }
3030 :
3031 56 : if (block9.is_used()) {
3032 56 : compiler::TNode<Context> tmp25;
3033 56 : compiler::TNode<FixedArray> tmp26;
3034 56 : compiler::TNode<JSReceiver> tmp27;
3035 56 : compiler::TNode<IntPtrT> tmp28;
3036 56 : compiler::TNode<IntPtrT> tmp29;
3037 56 : ca_.Bind(&block9, &tmp25, &tmp26, &tmp27, &tmp28, &tmp29);
3038 56 : compiler::TNode<IntPtrT> tmp30;
3039 56 : USE(tmp30);
3040 56 : tmp30 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATintptr17ATconstexpr_int31(JSArray::kMinJoinStackSize));
3041 56 : compiler::TNode<BoolT> tmp31;
3042 56 : USE(tmp31);
3043 56 : tmp31 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).IntPtrGreaterThan(compiler::TNode<IntPtrT>{tmp28}, compiler::TNode<IntPtrT>{tmp30}));
3044 56 : ca_.Branch(tmp31, &block7, &block8, tmp25, tmp26, tmp27, tmp28, tmp29);
3045 : }
3046 :
3047 56 : if (block7.is_used()) {
3048 56 : compiler::TNode<Context> tmp32;
3049 56 : compiler::TNode<FixedArray> tmp33;
3050 56 : compiler::TNode<JSReceiver> tmp34;
3051 56 : compiler::TNode<IntPtrT> tmp35;
3052 56 : compiler::TNode<IntPtrT> tmp36;
3053 56 : ca_.Bind(&block7, &tmp32, &tmp33, &tmp34, &tmp35, &tmp36);
3054 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 500);
3055 56 : compiler::TNode<IntPtrT> tmp37;
3056 56 : USE(tmp37);
3057 56 : tmp37 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATintptr17ATconstexpr_int31(JSArray::kMinJoinStackSize));
3058 56 : compiler::TNode<FixedArray> tmp38;
3059 56 : USE(tmp38);
3060 56 : tmp38 = ca_.UncheckedCast<FixedArray>(CodeStubAssembler(state_).AllocateFixedArrayWithHoles(compiler::TNode<IntPtrT>{tmp37}, CodeStubAssembler::kNone));
3061 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 499);
3062 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 501);
3063 56 : ArrayJoinBuiltinsFromDSLAssembler(state_).SetJoinStack(compiler::TNode<Context>{tmp32}, compiler::TNode<FixedArray>{tmp38});
3064 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 498);
3065 56 : ca_.Goto(&block10, tmp32, tmp33, tmp34, tmp35, tmp36);
3066 : }
3067 :
3068 56 : if (block8.is_used()) {
3069 56 : compiler::TNode<Context> tmp39;
3070 56 : compiler::TNode<FixedArray> tmp40;
3071 56 : compiler::TNode<JSReceiver> tmp41;
3072 56 : compiler::TNode<IntPtrT> tmp42;
3073 56 : compiler::TNode<IntPtrT> tmp43;
3074 56 : ca_.Bind(&block8, &tmp39, &tmp40, &tmp41, &tmp42, &tmp43);
3075 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 504);
3076 56 : compiler::TNode<Oddball> tmp44;
3077 56 : USE(tmp44);
3078 56 : tmp44 = BaseBuiltinsFromDSLAssembler(state_).Hole();
3079 56 : CodeStubAssembler(state_).StoreFixedArrayElement(compiler::TNode<FixedArray>{tmp40}, compiler::TNode<IntPtrT>{tmp43}, compiler::TNode<HeapObject>{tmp44});
3080 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 498);
3081 56 : ca_.Goto(&block10, tmp39, tmp40, tmp41, tmp42, tmp43);
3082 : }
3083 :
3084 56 : if (block10.is_used()) {
3085 56 : compiler::TNode<Context> tmp45;
3086 56 : compiler::TNode<FixedArray> tmp46;
3087 56 : compiler::TNode<JSReceiver> tmp47;
3088 56 : compiler::TNode<IntPtrT> tmp48;
3089 56 : compiler::TNode<IntPtrT> tmp49;
3090 56 : ca_.Bind(&block10, &tmp45, &tmp46, &tmp47, &tmp48, &tmp49);
3091 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 506);
3092 56 : compiler::TNode<Oddball> tmp50;
3093 56 : USE(tmp50);
3094 56 : tmp50 = BaseBuiltinsFromDSLAssembler(state_).Undefined();
3095 56 : CodeStubAssembler(state_).Return(tmp50);
3096 : }
3097 :
3098 56 : if (block6.is_used()) {
3099 56 : compiler::TNode<Context> tmp51;
3100 56 : compiler::TNode<FixedArray> tmp52;
3101 56 : compiler::TNode<JSReceiver> tmp53;
3102 56 : compiler::TNode<IntPtrT> tmp54;
3103 56 : compiler::TNode<IntPtrT> tmp55;
3104 56 : ca_.Bind(&block6, &tmp51, &tmp52, &tmp53, &tmp54, &tmp55);
3105 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 494);
3106 56 : ca_.Goto(&block4, tmp51, tmp52, tmp53, tmp54, tmp55);
3107 : }
3108 :
3109 56 : if (block4.is_used()) {
3110 56 : compiler::TNode<Context> tmp56;
3111 56 : compiler::TNode<FixedArray> tmp57;
3112 56 : compiler::TNode<JSReceiver> tmp58;
3113 56 : compiler::TNode<IntPtrT> tmp59;
3114 56 : compiler::TNode<IntPtrT> tmp60;
3115 56 : ca_.Bind(&block4, &tmp56, &tmp57, &tmp58, &tmp59, &tmp60);
3116 56 : compiler::TNode<IntPtrT> tmp61;
3117 56 : USE(tmp61);
3118 56 : tmp61 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATintptr17ATconstexpr_int31(1));
3119 56 : compiler::TNode<IntPtrT> tmp62;
3120 56 : USE(tmp62);
3121 56 : tmp62 = ca_.UncheckedCast<IntPtrT>(CodeStubAssembler(state_).IntPtrAdd(compiler::TNode<IntPtrT>{tmp60}, compiler::TNode<IntPtrT>{tmp61}));
3122 56 : ca_.Goto(&block3, tmp56, tmp57, tmp58, tmp59, tmp62);
3123 : }
3124 :
3125 56 : if (block2.is_used()) {
3126 56 : compiler::TNode<Context> tmp63;
3127 56 : compiler::TNode<FixedArray> tmp64;
3128 56 : compiler::TNode<JSReceiver> tmp65;
3129 56 : compiler::TNode<IntPtrT> tmp66;
3130 56 : compiler::TNode<IntPtrT> tmp67;
3131 56 : ca_.Bind(&block2, &tmp63, &tmp64, &tmp65, &tmp66, &tmp67);
3132 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 509);
3133 56 : CodeStubAssembler(state_).Unreachable();
3134 56 : }
3135 56 : }
3136 :
3137 448 : void ArrayJoinBuiltinsFromDSLAssembler::JoinStackPopInline(compiler::TNode<Context> p_context, compiler::TNode<JSReceiver> p_receiver) {
3138 448 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3139 896 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver> block5(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3140 896 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, FixedArray> block4(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3141 896 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver> block3(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3142 896 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, FixedArray> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3143 896 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, FixedArray, IntPtrT> block8(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3144 896 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, FixedArray, IntPtrT> block6(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3145 896 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, FixedArray, IntPtrT> block7(&ca_, compiler::CodeAssemblerLabel::kDeferred);
3146 896 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, FixedArray, IntPtrT> block9(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3147 896 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver> block1(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3148 896 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver> block10(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3149 448 : ca_.Goto(&block0, p_context, p_receiver);
3150 :
3151 448 : if (block0.is_used()) {
3152 448 : compiler::TNode<Context> tmp0;
3153 448 : compiler::TNode<JSReceiver> tmp1;
3154 448 : ca_.Bind(&block0, &tmp0, &tmp1);
3155 448 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 514);
3156 448 : compiler::TNode<FixedArray> tmp2;
3157 448 : USE(tmp2);
3158 448 : compiler::CodeAssemblerLabel label0(&ca_);
3159 448 : tmp2 = ArrayJoinBuiltinsFromDSLAssembler(state_).LoadJoinStack(compiler::TNode<Context>{tmp0}, &label0);
3160 448 : ca_.Goto(&block4, tmp0, tmp1, tmp2);
3161 448 : if (label0.is_used()) {
3162 448 : ca_.Bind(&label0);
3163 448 : ca_.Goto(&block5, tmp0, tmp1);
3164 448 : }
3165 : }
3166 :
3167 448 : if (block5.is_used()) {
3168 448 : compiler::TNode<Context> tmp3;
3169 448 : compiler::TNode<JSReceiver> tmp4;
3170 448 : ca_.Bind(&block5, &tmp3, &tmp4);
3171 448 : ca_.Goto(&block3, tmp3, tmp4);
3172 : }
3173 :
3174 448 : if (block4.is_used()) {
3175 448 : compiler::TNode<Context> tmp5;
3176 448 : compiler::TNode<JSReceiver> tmp6;
3177 448 : compiler::TNode<FixedArray> tmp7;
3178 448 : ca_.Bind(&block4, &tmp5, &tmp6, &tmp7);
3179 448 : ca_.Goto(&block2, tmp5, tmp6, tmp7);
3180 : }
3181 :
3182 448 : if (block3.is_used()) {
3183 448 : compiler::TNode<Context> tmp8;
3184 448 : compiler::TNode<JSReceiver> tmp9;
3185 448 : ca_.Bind(&block3, &tmp8, &tmp9);
3186 448 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 515);
3187 448 : CodeStubAssembler(state_).Unreachable();
3188 : }
3189 :
3190 448 : if (block2.is_used()) {
3191 448 : compiler::TNode<Context> tmp10;
3192 448 : compiler::TNode<JSReceiver> tmp11;
3193 448 : compiler::TNode<FixedArray> tmp12;
3194 448 : ca_.Bind(&block2, &tmp10, &tmp11, &tmp12);
3195 448 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 514);
3196 448 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 516);
3197 448 : compiler::TNode<IntPtrT> tmp13;
3198 448 : USE(tmp13);
3199 448 : tmp13 = ca_.UncheckedCast<IntPtrT>(CodeStubAssembler(state_).LoadAndUntagFixedArrayBaseLength(compiler::TNode<FixedArrayBase>{tmp12}));
3200 448 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 520);
3201 448 : compiler::TNode<Object> tmp14;
3202 448 : USE(tmp14);
3203 448 : tmp14 = ca_.UncheckedCast<Object>(CodeStubAssembler(state_).LoadFixedArrayElement(compiler::TNode<FixedArray>{tmp12}, 0));
3204 448 : compiler::TNode<BoolT> tmp15;
3205 448 : USE(tmp15);
3206 448 : tmp15 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).WordEqual(compiler::TNode<Object>{tmp14}, compiler::TNode<HeapObject>{tmp11}));
3207 448 : ca_.Branch(tmp15, &block8, &block7, tmp10, tmp11, tmp12, tmp13);
3208 : }
3209 :
3210 448 : if (block8.is_used()) {
3211 448 : compiler::TNode<Context> tmp16;
3212 448 : compiler::TNode<JSReceiver> tmp17;
3213 448 : compiler::TNode<FixedArray> tmp18;
3214 448 : compiler::TNode<IntPtrT> tmp19;
3215 448 : ca_.Bind(&block8, &tmp16, &tmp17, &tmp18, &tmp19);
3216 448 : compiler::TNode<IntPtrT> tmp20;
3217 448 : USE(tmp20);
3218 448 : tmp20 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATintptr17ATconstexpr_int31(JSArray::kMinJoinStackSize));
3219 448 : compiler::TNode<BoolT> tmp21;
3220 448 : USE(tmp21);
3221 448 : tmp21 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).WordEqual(compiler::TNode<IntPtrT>{tmp19}, compiler::TNode<IntPtrT>{tmp20}));
3222 448 : ca_.Branch(tmp21, &block6, &block7, tmp16, tmp17, tmp18, tmp19);
3223 : }
3224 :
3225 448 : if (block6.is_used()) {
3226 448 : compiler::TNode<Context> tmp22;
3227 448 : compiler::TNode<JSReceiver> tmp23;
3228 448 : compiler::TNode<FixedArray> tmp24;
3229 448 : compiler::TNode<IntPtrT> tmp25;
3230 448 : ca_.Bind(&block6, &tmp22, &tmp23, &tmp24, &tmp25);
3231 448 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 521);
3232 448 : compiler::TNode<Oddball> tmp26;
3233 448 : USE(tmp26);
3234 448 : tmp26 = BaseBuiltinsFromDSLAssembler(state_).Hole();
3235 448 : compiler::TNode<IntPtrT> tmp27;
3236 448 : USE(tmp27);
3237 448 : tmp27 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATintptr17ATconstexpr_int31(0));
3238 448 : CodeStubAssembler(state_).StoreFixedArrayElement(compiler::TNode<FixedArray>{tmp24}, compiler::TNode<IntPtrT>{tmp27}, compiler::TNode<Object>{tmp26}, SKIP_WRITE_BARRIER);
3239 448 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 520);
3240 448 : ca_.Goto(&block9, tmp22, tmp23, tmp24, tmp25);
3241 : }
3242 :
3243 448 : if (block7.is_used()) {
3244 448 : compiler::TNode<Context> tmp28;
3245 448 : compiler::TNode<JSReceiver> tmp29;
3246 448 : compiler::TNode<FixedArray> tmp30;
3247 448 : compiler::TNode<IntPtrT> tmp31;
3248 448 : ca_.Bind(&block7, &tmp28, &tmp29, &tmp30, &tmp31);
3249 448 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 524);
3250 448 : compiler::TNode<Object> tmp32;
3251 448 : tmp32 = CodeStubAssembler(state_).CallBuiltin(Builtins::kJoinStackPop, tmp28, tmp30, tmp29);
3252 448 : USE(tmp32);
3253 448 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 520);
3254 448 : ca_.Goto(&block9, tmp28, tmp29, tmp30, tmp31);
3255 : }
3256 :
3257 448 : if (block9.is_used()) {
3258 448 : compiler::TNode<Context> tmp33;
3259 448 : compiler::TNode<JSReceiver> tmp34;
3260 448 : compiler::TNode<FixedArray> tmp35;
3261 448 : compiler::TNode<IntPtrT> tmp36;
3262 448 : ca_.Bind(&block9, &tmp33, &tmp34, &tmp35, &tmp36);
3263 448 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 513);
3264 448 : ca_.Goto(&block1, tmp33, tmp34);
3265 : }
3266 :
3267 448 : if (block1.is_used()) {
3268 448 : compiler::TNode<Context> tmp37;
3269 448 : compiler::TNode<JSReceiver> tmp38;
3270 448 : ca_.Bind(&block1, &tmp37, &tmp38);
3271 448 : ca_.Goto(&block10, tmp37, tmp38);
3272 : }
3273 :
3274 448 : compiler::TNode<Context> tmp39;
3275 448 : compiler::TNode<JSReceiver> tmp40;
3276 896 : ca_.Bind(&block10, &tmp39, &tmp40);
3277 448 : }
3278 :
3279 336 : TF_BUILTIN(ArrayPrototypeJoin, CodeStubAssembler) {
3280 56 : compiler::CodeAssemblerState* state_ = state(); compiler::CodeAssembler ca_(state());
3281 56 : TNode<Context> parameter0 = UncheckedCast<Context>(Parameter(Descriptor::kContext));
3282 56 : USE(parameter0);
3283 56 : Node* argc = Parameter(Descriptor::kJSActualArgumentsCount);
3284 56 : CodeStubArguments arguments_impl(this, ChangeInt32ToIntPtr(argc));
3285 56 : TNode<Object> parameter1 = arguments_impl.GetReceiver();
3286 56 : auto arguments = &arguments_impl;
3287 56 : USE(arguments);
3288 56 : USE(parameter1);
3289 112 : compiler::CodeAssemblerParameterizedLabel<Context, Object> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3290 112 : compiler::CodeAssemblerParameterizedLabel<Context, Object, Object, JSReceiver, Number, Number> block3(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3291 112 : compiler::CodeAssemblerParameterizedLabel<Context, Object, Object, JSReceiver, Number, Number> block4(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3292 112 : compiler::CodeAssemblerParameterizedLabel<Context, Object, Object, JSReceiver, Number> block1(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3293 112 : compiler::CodeAssemblerParameterizedLabel<Context, Object, Object, JSReceiver, Number> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3294 56 : ca_.Goto(&block0, parameter0, parameter1);
3295 :
3296 56 : if (block0.is_used()) {
3297 56 : compiler::TNode<Context> tmp0;
3298 56 : compiler::TNode<Object> tmp1;
3299 56 : ca_.Bind(&block0, &tmp0, &tmp1);
3300 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 558);
3301 56 : compiler::TNode<IntPtrT> tmp2;
3302 56 : USE(tmp2);
3303 56 : tmp2 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATintptr17ATconstexpr_int31(0));
3304 56 : compiler::TNode<Object> tmp3;
3305 56 : USE(tmp3);
3306 56 : tmp3 = ca_.UncheckedCast<Object>(CodeStubAssembler(state_).GetArgumentValue(arguments, compiler::TNode<IntPtrT>{tmp2}));
3307 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 561);
3308 56 : compiler::TNode<JSReceiver> tmp4;
3309 56 : USE(tmp4);
3310 56 : tmp4 = ca_.UncheckedCast<JSReceiver>(CodeStubAssembler(state_).ToObject_Inline(compiler::TNode<Context>{tmp0}, compiler::TNode<Object>{tmp1}));
3311 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 564);
3312 56 : compiler::TNode<Number> tmp5;
3313 56 : USE(tmp5);
3314 56 : tmp5 = ca_.UncheckedCast<Number>(BaseBuiltinsFromDSLAssembler(state_).GetLengthProperty(compiler::TNode<Context>{tmp0}, compiler::TNode<Object>{tmp4}));
3315 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 568);
3316 56 : compiler::TNode<Number> tmp6;
3317 56 : USE(tmp6);
3318 56 : tmp6 = ca_.UncheckedCast<Number>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr22UT12ATHeapNumber5ATSmi18ATconstexpr_uint32((CodeStubAssembler(state_).ConstexprUint32Add(JSArray::kMaxArrayIndex, 1))));
3319 56 : compiler::CodeAssemblerLabel label0(&ca_);
3320 112 : compiler::CodeAssemblerLabel label1(&ca_);
3321 56 : CodeStubAssembler(state_).BranchIfNumberGreaterThan(compiler::TNode<Number>{tmp5}, compiler::TNode<Number>{tmp6}, &label0, &label1);
3322 56 : if (label0.is_used()) {
3323 56 : ca_.Bind(&label0);
3324 56 : ca_.Goto(&block3, tmp0, tmp1, tmp3, tmp4, tmp5, tmp5);
3325 : }
3326 56 : if (label1.is_used()) {
3327 56 : ca_.Bind(&label1);
3328 56 : ca_.Goto(&block4, tmp0, tmp1, tmp3, tmp4, tmp5, tmp5);
3329 56 : }
3330 : }
3331 :
3332 56 : if (block3.is_used()) {
3333 56 : compiler::TNode<Context> tmp7;
3334 56 : compiler::TNode<Object> tmp8;
3335 56 : compiler::TNode<Object> tmp9;
3336 56 : compiler::TNode<JSReceiver> tmp10;
3337 56 : compiler::TNode<Number> tmp11;
3338 56 : compiler::TNode<Number> tmp12;
3339 56 : ca_.Bind(&block3, &tmp7, &tmp8, &tmp9, &tmp10, &tmp11, &tmp12);
3340 56 : ca_.Goto(&block1, tmp7, tmp8, tmp9, tmp10, tmp11);
3341 : }
3342 :
3343 56 : if (block4.is_used()) {
3344 56 : compiler::TNode<Context> tmp13;
3345 56 : compiler::TNode<Object> tmp14;
3346 56 : compiler::TNode<Object> tmp15;
3347 56 : compiler::TNode<JSReceiver> tmp16;
3348 56 : compiler::TNode<Number> tmp17;
3349 56 : compiler::TNode<Number> tmp18;
3350 56 : ca_.Bind(&block4, &tmp13, &tmp14, &tmp15, &tmp16, &tmp17, &tmp18);
3351 56 : ca_.Goto(&block2, tmp13, tmp14, tmp15, tmp16, tmp17);
3352 : }
3353 :
3354 56 : if (block1.is_used()) {
3355 56 : compiler::TNode<Context> tmp19;
3356 56 : compiler::TNode<Object> tmp20;
3357 56 : compiler::TNode<Object> tmp21;
3358 56 : compiler::TNode<JSReceiver> tmp22;
3359 56 : compiler::TNode<Number> tmp23;
3360 56 : ca_.Bind(&block1, &tmp19, &tmp20, &tmp21, &tmp22, &tmp23);
3361 56 : CodeStubAssembler(state_).ThrowTypeError(compiler::TNode<Context>{tmp19}, MessageTemplate::kInvalidArrayLength);
3362 : }
3363 :
3364 56 : if (block2.is_used()) {
3365 56 : compiler::TNode<Context> tmp24;
3366 56 : compiler::TNode<Object> tmp25;
3367 56 : compiler::TNode<Object> tmp26;
3368 56 : compiler::TNode<JSReceiver> tmp27;
3369 56 : compiler::TNode<Number> tmp28;
3370 56 : ca_.Bind(&block2, &tmp24, &tmp25, &tmp26, &tmp27, &tmp28);
3371 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 571);
3372 56 : compiler::TNode<Oddball> tmp29;
3373 56 : USE(tmp29);
3374 56 : tmp29 = BaseBuiltinsFromDSLAssembler(state_).Undefined();
3375 56 : compiler::TNode<Oddball> tmp30;
3376 56 : USE(tmp30);
3377 56 : tmp30 = BaseBuiltinsFromDSLAssembler(state_).Undefined();
3378 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 570);
3379 56 : compiler::TNode<Object> tmp31;
3380 56 : USE(tmp31);
3381 56 : tmp31 = ca_.UncheckedCast<Object>(ArrayJoinBuiltinsFromDSLAssembler(state_).CycleProtectedArrayJoin7JSArray(compiler::TNode<Context>{tmp24}, false, compiler::TNode<JSReceiver>{tmp27}, compiler::TNode<Number>{tmp28}, compiler::TNode<Object>{tmp26}, compiler::TNode<Object>{tmp29}, compiler::TNode<Object>{tmp30}));
3382 56 : arguments->PopAndReturn(tmp31);
3383 56 : }
3384 56 : }
3385 :
3386 336 : TF_BUILTIN(ArrayPrototypeToLocaleString, CodeStubAssembler) {
3387 56 : compiler::CodeAssemblerState* state_ = state(); compiler::CodeAssembler ca_(state());
3388 56 : TNode<Context> parameter0 = UncheckedCast<Context>(Parameter(Descriptor::kContext));
3389 56 : USE(parameter0);
3390 56 : Node* argc = Parameter(Descriptor::kJSActualArgumentsCount);
3391 56 : CodeStubArguments arguments_impl(this, ChangeInt32ToIntPtr(argc));
3392 56 : TNode<Object> parameter1 = arguments_impl.GetReceiver();
3393 56 : auto arguments = &arguments_impl;
3394 56 : USE(arguments);
3395 56 : USE(parameter1);
3396 112 : compiler::CodeAssemblerParameterizedLabel<Context, Object> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3397 112 : compiler::CodeAssemblerParameterizedLabel<Context, Object, Object, Object, JSReceiver, Number, Number> block3(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3398 112 : compiler::CodeAssemblerParameterizedLabel<Context, Object, Object, Object, JSReceiver, Number, Number> block4(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3399 112 : compiler::CodeAssemblerParameterizedLabel<Context, Object, Object, Object, JSReceiver, Number> block1(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3400 112 : compiler::CodeAssemblerParameterizedLabel<Context, Object, Object, Object, JSReceiver, Number> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3401 56 : ca_.Goto(&block0, parameter0, parameter1);
3402 :
3403 56 : if (block0.is_used()) {
3404 56 : compiler::TNode<Context> tmp0;
3405 56 : compiler::TNode<Object> tmp1;
3406 56 : ca_.Bind(&block0, &tmp0, &tmp1);
3407 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 577);
3408 56 : compiler::TNode<IntPtrT> tmp2;
3409 56 : USE(tmp2);
3410 56 : tmp2 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATintptr17ATconstexpr_int31(0));
3411 56 : compiler::TNode<Object> tmp3;
3412 56 : USE(tmp3);
3413 56 : tmp3 = ca_.UncheckedCast<Object>(CodeStubAssembler(state_).GetArgumentValue(arguments, compiler::TNode<IntPtrT>{tmp2}));
3414 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 578);
3415 56 : compiler::TNode<IntPtrT> tmp4;
3416 56 : USE(tmp4);
3417 56 : tmp4 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATintptr17ATconstexpr_int31(1));
3418 56 : compiler::TNode<Object> tmp5;
3419 56 : USE(tmp5);
3420 56 : tmp5 = ca_.UncheckedCast<Object>(CodeStubAssembler(state_).GetArgumentValue(arguments, compiler::TNode<IntPtrT>{tmp4}));
3421 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 581);
3422 56 : compiler::TNode<JSReceiver> tmp6;
3423 56 : USE(tmp6);
3424 56 : tmp6 = ca_.UncheckedCast<JSReceiver>(CodeStubAssembler(state_).ToObject_Inline(compiler::TNode<Context>{tmp0}, compiler::TNode<Object>{tmp1}));
3425 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 584);
3426 56 : compiler::TNode<Number> tmp7;
3427 56 : USE(tmp7);
3428 56 : tmp7 = ca_.UncheckedCast<Number>(BaseBuiltinsFromDSLAssembler(state_).GetLengthProperty(compiler::TNode<Context>{tmp0}, compiler::TNode<Object>{tmp6}));
3429 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 588);
3430 56 : compiler::TNode<Number> tmp8;
3431 56 : USE(tmp8);
3432 56 : tmp8 = ca_.UncheckedCast<Number>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr22UT12ATHeapNumber5ATSmi18ATconstexpr_uint32((CodeStubAssembler(state_).ConstexprUint32Add(JSArray::kMaxArrayIndex, 1))));
3433 56 : compiler::CodeAssemblerLabel label0(&ca_);
3434 112 : compiler::CodeAssemblerLabel label1(&ca_);
3435 56 : CodeStubAssembler(state_).BranchIfNumberGreaterThan(compiler::TNode<Number>{tmp7}, compiler::TNode<Number>{tmp8}, &label0, &label1);
3436 56 : if (label0.is_used()) {
3437 56 : ca_.Bind(&label0);
3438 56 : ca_.Goto(&block3, tmp0, tmp1, tmp3, tmp5, tmp6, tmp7, tmp7);
3439 : }
3440 56 : if (label1.is_used()) {
3441 56 : ca_.Bind(&label1);
3442 56 : ca_.Goto(&block4, tmp0, tmp1, tmp3, tmp5, tmp6, tmp7, tmp7);
3443 56 : }
3444 : }
3445 :
3446 56 : if (block3.is_used()) {
3447 56 : compiler::TNode<Context> tmp9;
3448 56 : compiler::TNode<Object> tmp10;
3449 56 : compiler::TNode<Object> tmp11;
3450 56 : compiler::TNode<Object> tmp12;
3451 56 : compiler::TNode<JSReceiver> tmp13;
3452 56 : compiler::TNode<Number> tmp14;
3453 56 : compiler::TNode<Number> tmp15;
3454 56 : ca_.Bind(&block3, &tmp9, &tmp10, &tmp11, &tmp12, &tmp13, &tmp14, &tmp15);
3455 56 : ca_.Goto(&block1, tmp9, tmp10, tmp11, tmp12, tmp13, tmp14);
3456 : }
3457 :
3458 56 : if (block4.is_used()) {
3459 56 : compiler::TNode<Context> tmp16;
3460 56 : compiler::TNode<Object> tmp17;
3461 56 : compiler::TNode<Object> tmp18;
3462 56 : compiler::TNode<Object> tmp19;
3463 56 : compiler::TNode<JSReceiver> tmp20;
3464 56 : compiler::TNode<Number> tmp21;
3465 56 : compiler::TNode<Number> tmp22;
3466 56 : ca_.Bind(&block4, &tmp16, &tmp17, &tmp18, &tmp19, &tmp20, &tmp21, &tmp22);
3467 56 : ca_.Goto(&block2, tmp16, tmp17, tmp18, tmp19, tmp20, tmp21);
3468 : }
3469 :
3470 56 : if (block1.is_used()) {
3471 56 : compiler::TNode<Context> tmp23;
3472 56 : compiler::TNode<Object> tmp24;
3473 56 : compiler::TNode<Object> tmp25;
3474 56 : compiler::TNode<Object> tmp26;
3475 56 : compiler::TNode<JSReceiver> tmp27;
3476 56 : compiler::TNode<Number> tmp28;
3477 56 : ca_.Bind(&block1, &tmp23, &tmp24, &tmp25, &tmp26, &tmp27, &tmp28);
3478 56 : CodeStubAssembler(state_).ThrowTypeError(compiler::TNode<Context>{tmp23}, MessageTemplate::kInvalidArrayLength);
3479 : }
3480 :
3481 56 : if (block2.is_used()) {
3482 56 : compiler::TNode<Context> tmp29;
3483 56 : compiler::TNode<Object> tmp30;
3484 56 : compiler::TNode<Object> tmp31;
3485 56 : compiler::TNode<Object> tmp32;
3486 56 : compiler::TNode<JSReceiver> tmp33;
3487 56 : compiler::TNode<Number> tmp34;
3488 56 : ca_.Bind(&block2, &tmp29, &tmp30, &tmp31, &tmp32, &tmp33, &tmp34);
3489 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 591);
3490 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 590);
3491 56 : compiler::TNode<Object> tmp35;
3492 56 : USE(tmp35);
3493 56 : tmp35 = ca_.UncheckedCast<Object>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr20UT5ATSmi10HeapObject18ATconstexpr_string(","));
3494 56 : compiler::TNode<Object> tmp36;
3495 56 : USE(tmp36);
3496 56 : tmp36 = ca_.UncheckedCast<Object>(ArrayJoinBuiltinsFromDSLAssembler(state_).CycleProtectedArrayJoin7JSArray(compiler::TNode<Context>{tmp29}, true, compiler::TNode<JSReceiver>{tmp33}, compiler::TNode<Number>{tmp34}, compiler::TNode<Object>{tmp35}, compiler::TNode<Object>{tmp31}, compiler::TNode<Object>{tmp32}));
3497 56 : arguments->PopAndReturn(tmp36);
3498 56 : }
3499 56 : }
3500 :
3501 336 : TF_BUILTIN(ArrayPrototypeToString, CodeStubAssembler) {
3502 56 : compiler::CodeAssemblerState* state_ = state(); compiler::CodeAssembler ca_(state());
3503 56 : TNode<Context> parameter0 = UncheckedCast<Context>(Parameter(Descriptor::kContext));
3504 56 : USE(parameter0);
3505 56 : Node* argc = Parameter(Descriptor::kJSActualArgumentsCount);
3506 56 : CodeStubArguments arguments_impl(this, ChangeInt32ToIntPtr(argc));
3507 56 : TNode<Object> parameter1 = arguments_impl.GetReceiver();
3508 56 : auto arguments = &arguments_impl;
3509 56 : USE(arguments);
3510 56 : USE(parameter1);
3511 112 : compiler::CodeAssemblerParameterizedLabel<Context, Object> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3512 112 : compiler::CodeAssemblerParameterizedLabel<Context, Object, JSReceiver, Object, Object> block4(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3513 112 : compiler::CodeAssemblerParameterizedLabel<Context, Object, JSReceiver, Object, Object, JSReceiver> block3(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3514 112 : compiler::CodeAssemblerParameterizedLabel<Context, Object, JSReceiver, Object> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3515 56 : ca_.Goto(&block0, parameter0, parameter1);
3516 :
3517 56 : if (block0.is_used()) {
3518 56 : compiler::TNode<Context> tmp0;
3519 56 : compiler::TNode<Object> tmp1;
3520 56 : ca_.Bind(&block0, &tmp0, &tmp1);
3521 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 598);
3522 56 : compiler::TNode<JSReceiver> tmp2;
3523 56 : USE(tmp2);
3524 56 : tmp2 = ca_.UncheckedCast<JSReceiver>(CodeStubAssembler(state_).ToObject_Inline(compiler::TNode<Context>{tmp0}, compiler::TNode<Object>{tmp1}));
3525 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 601);
3526 56 : compiler::TNode<Object> tmp3;
3527 56 : USE(tmp3);
3528 56 : tmp3 = ca_.UncheckedCast<Object>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr20UT5ATSmi10HeapObject18ATconstexpr_string("join"));
3529 56 : compiler::TNode<Object> tmp4;
3530 56 : USE(tmp4);
3531 56 : tmp4 = ca_.UncheckedCast<Object>(CodeStubAssembler(state_).GetProperty(compiler::TNode<Context>{tmp0}, compiler::TNode<Object>{tmp2}, compiler::TNode<Object>{tmp3}));
3532 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 605);
3533 56 : compiler::TNode<JSReceiver> tmp5;
3534 56 : USE(tmp5);
3535 56 : compiler::CodeAssemblerLabel label0(&ca_);
3536 56 : tmp5 = BaseBuiltinsFromDSLAssembler(state_).Cast41UT9ATJSProxy15JSBoundFunction10JSFunction(compiler::TNode<Context>{tmp0}, compiler::TNode<Object>{tmp4}, &label0);
3537 56 : ca_.Goto(&block3, tmp0, tmp1, tmp2, tmp4, tmp4, tmp5);
3538 56 : if (label0.is_used()) {
3539 56 : ca_.Bind(&label0);
3540 56 : ca_.Goto(&block4, tmp0, tmp1, tmp2, tmp4, tmp4);
3541 56 : }
3542 : }
3543 :
3544 56 : if (block4.is_used()) {
3545 56 : compiler::TNode<Context> tmp6;
3546 56 : compiler::TNode<Object> tmp7;
3547 56 : compiler::TNode<JSReceiver> tmp8;
3548 56 : compiler::TNode<Object> tmp9;
3549 56 : compiler::TNode<Object> tmp10;
3550 56 : ca_.Bind(&block4, &tmp6, &tmp7, &tmp8, &tmp9, &tmp10);
3551 56 : ca_.Goto(&block2, tmp6, tmp7, tmp8, tmp9);
3552 : }
3553 :
3554 56 : if (block3.is_used()) {
3555 56 : compiler::TNode<Context> tmp11;
3556 56 : compiler::TNode<Object> tmp12;
3557 56 : compiler::TNode<JSReceiver> tmp13;
3558 56 : compiler::TNode<Object> tmp14;
3559 56 : compiler::TNode<Object> tmp15;
3560 56 : compiler::TNode<JSReceiver> tmp16;
3561 56 : ca_.Bind(&block3, &tmp11, &tmp12, &tmp13, &tmp14, &tmp15, &tmp16);
3562 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 608);
3563 56 : compiler::TNode<Object> tmp17;
3564 56 : USE(tmp17);
3565 56 : tmp17 = ca_.UncheckedCast<Object>(CodeStubAssembler(state_).Call(compiler::TNode<Context>{tmp11}, compiler::TNode<JSReceiver>{tmp16}, compiler::TNode<Object>{tmp13}));
3566 56 : arguments->PopAndReturn(tmp17);
3567 : }
3568 :
3569 56 : if (block2.is_used()) {
3570 56 : compiler::TNode<Context> tmp18;
3571 56 : compiler::TNode<Object> tmp19;
3572 56 : compiler::TNode<JSReceiver> tmp20;
3573 56 : compiler::TNode<Object> tmp21;
3574 56 : ca_.Bind(&block2, &tmp18, &tmp19, &tmp20, &tmp21);
3575 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 611);
3576 56 : compiler::TNode<Object> tmp22;
3577 56 : tmp22 = CodeStubAssembler(state_).CallBuiltin(Builtins::kObjectToString, tmp18, tmp20);
3578 56 : USE(tmp22);
3579 56 : arguments->PopAndReturn(tmp22);
3580 56 : }
3581 56 : }
3582 :
3583 336 : TF_BUILTIN(TypedArrayPrototypeJoin, CodeStubAssembler) {
3584 56 : compiler::CodeAssemblerState* state_ = state(); compiler::CodeAssembler ca_(state());
3585 56 : TNode<Context> parameter0 = UncheckedCast<Context>(Parameter(Descriptor::kContext));
3586 56 : USE(parameter0);
3587 56 : Node* argc = Parameter(Descriptor::kJSActualArgumentsCount);
3588 56 : CodeStubArguments arguments_impl(this, ChangeInt32ToIntPtr(argc));
3589 56 : TNode<Object> parameter1 = arguments_impl.GetReceiver();
3590 56 : auto arguments = &arguments_impl;
3591 56 : USE(arguments);
3592 56 : USE(parameter1);
3593 112 : compiler::CodeAssemblerParameterizedLabel<Context, Object> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3594 56 : ca_.Goto(&block0, parameter0, parameter1);
3595 :
3596 56 : if (block0.is_used()) {
3597 56 : compiler::TNode<Context> tmp0;
3598 56 : compiler::TNode<Object> tmp1;
3599 56 : ca_.Bind(&block0, &tmp0, &tmp1);
3600 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 618);
3601 56 : compiler::TNode<IntPtrT> tmp2;
3602 56 : USE(tmp2);
3603 56 : tmp2 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATintptr17ATconstexpr_int31(0));
3604 56 : compiler::TNode<Object> tmp3;
3605 56 : USE(tmp3);
3606 56 : tmp3 = ca_.UncheckedCast<Object>(CodeStubAssembler(state_).GetArgumentValue(arguments, compiler::TNode<IntPtrT>{tmp2}));
3607 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 623);
3608 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 622);
3609 56 : compiler::TNode<JSTypedArray> tmp4;
3610 56 : USE(tmp4);
3611 56 : tmp4 = ca_.UncheckedCast<JSTypedArray>(TypedArrayBuiltinsAssembler(state_).ValidateTypedArray(compiler::TNode<Context>{tmp0}, compiler::TNode<Object>{tmp1}, "%TypedArray%.prototype.join"));
3612 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 624);
3613 56 : compiler::TNode<Smi> tmp5;
3614 56 : USE(tmp5);
3615 56 : tmp5 = ca_.UncheckedCast<Smi>(CodeStubAssembler(state_).LoadJSTypedArrayLength(compiler::TNode<JSTypedArray>{tmp4}));
3616 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 627);
3617 56 : compiler::TNode<Oddball> tmp6;
3618 56 : USE(tmp6);
3619 56 : tmp6 = BaseBuiltinsFromDSLAssembler(state_).Undefined();
3620 56 : compiler::TNode<Oddball> tmp7;
3621 56 : USE(tmp7);
3622 56 : tmp7 = BaseBuiltinsFromDSLAssembler(state_).Undefined();
3623 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 626);
3624 56 : compiler::TNode<Object> tmp8;
3625 56 : USE(tmp8);
3626 56 : tmp8 = ca_.UncheckedCast<Object>(ArrayJoinBuiltinsFromDSLAssembler(state_).CycleProtectedArrayJoin12JSTypedArray(compiler::TNode<Context>{tmp0}, false, compiler::TNode<JSReceiver>{tmp4}, compiler::TNode<Number>{tmp5}, compiler::TNode<Object>{tmp3}, compiler::TNode<Object>{tmp6}, compiler::TNode<Object>{tmp7}));
3627 56 : arguments->PopAndReturn(tmp8);
3628 56 : }
3629 56 : }
3630 :
3631 336 : TF_BUILTIN(TypedArrayPrototypeToLocaleString, CodeStubAssembler) {
3632 56 : compiler::CodeAssemblerState* state_ = state(); compiler::CodeAssembler ca_(state());
3633 56 : TNode<Context> parameter0 = UncheckedCast<Context>(Parameter(Descriptor::kContext));
3634 56 : USE(parameter0);
3635 56 : Node* argc = Parameter(Descriptor::kJSActualArgumentsCount);
3636 56 : CodeStubArguments arguments_impl(this, ChangeInt32ToIntPtr(argc));
3637 56 : TNode<Object> parameter1 = arguments_impl.GetReceiver();
3638 56 : auto arguments = &arguments_impl;
3639 56 : USE(arguments);
3640 56 : USE(parameter1);
3641 112 : compiler::CodeAssemblerParameterizedLabel<Context, Object> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3642 56 : ca_.Goto(&block0, parameter0, parameter1);
3643 :
3644 56 : if (block0.is_used()) {
3645 56 : compiler::TNode<Context> tmp0;
3646 56 : compiler::TNode<Object> tmp1;
3647 56 : ca_.Bind(&block0, &tmp0, &tmp1);
3648 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 633);
3649 56 : compiler::TNode<IntPtrT> tmp2;
3650 56 : USE(tmp2);
3651 56 : tmp2 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATintptr17ATconstexpr_int31(0));
3652 56 : compiler::TNode<Object> tmp3;
3653 56 : USE(tmp3);
3654 56 : tmp3 = ca_.UncheckedCast<Object>(CodeStubAssembler(state_).GetArgumentValue(arguments, compiler::TNode<IntPtrT>{tmp2}));
3655 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 634);
3656 56 : compiler::TNode<IntPtrT> tmp4;
3657 56 : USE(tmp4);
3658 56 : tmp4 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATintptr17ATconstexpr_int31(1));
3659 56 : compiler::TNode<Object> tmp5;
3660 56 : USE(tmp5);
3661 56 : tmp5 = ca_.UncheckedCast<Object>(CodeStubAssembler(state_).GetArgumentValue(arguments, compiler::TNode<IntPtrT>{tmp4}));
3662 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 639);
3663 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 638);
3664 56 : compiler::TNode<JSTypedArray> tmp6;
3665 56 : USE(tmp6);
3666 56 : tmp6 = ca_.UncheckedCast<JSTypedArray>(TypedArrayBuiltinsAssembler(state_).ValidateTypedArray(compiler::TNode<Context>{tmp0}, compiler::TNode<Object>{tmp1}, "%TypedArray%.prototype.toLocaleString"));
3667 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 640);
3668 56 : compiler::TNode<Smi> tmp7;
3669 56 : USE(tmp7);
3670 56 : tmp7 = ca_.UncheckedCast<Smi>(CodeStubAssembler(state_).LoadJSTypedArrayLength(compiler::TNode<JSTypedArray>{tmp6}));
3671 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 643);
3672 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 642);
3673 56 : compiler::TNode<Object> tmp8;
3674 56 : USE(tmp8);
3675 56 : tmp8 = ca_.UncheckedCast<Object>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr20UT5ATSmi10HeapObject18ATconstexpr_string(","));
3676 56 : compiler::TNode<Object> tmp9;
3677 56 : USE(tmp9);
3678 56 : tmp9 = ca_.UncheckedCast<Object>(ArrayJoinBuiltinsFromDSLAssembler(state_).CycleProtectedArrayJoin12JSTypedArray(compiler::TNode<Context>{tmp0}, true, compiler::TNode<JSReceiver>{tmp6}, compiler::TNode<Number>{tmp7}, compiler::TNode<Object>{tmp8}, compiler::TNode<Object>{tmp3}, compiler::TNode<Object>{tmp5}));
3679 56 : arguments->PopAndReturn(tmp9);
3680 56 : }
3681 56 : }
3682 :
3683 392 : TF_BUILTIN(LoadJoinElement25ATGenericElementsAccessor, CodeStubAssembler) {
3684 56 : compiler::CodeAssemblerState* state_ = state(); compiler::CodeAssembler ca_(state());
3685 56 : TNode<Context> parameter0 = UncheckedCast<Context>(Parameter(Descriptor::kContext));
3686 56 : USE(parameter0);
3687 56 : compiler::TNode<JSReceiver> parameter1 = UncheckedCast<JSReceiver>(Parameter(Descriptor::kReceiver));
3688 56 : USE(parameter1);
3689 56 : compiler::TNode<Number> parameter2 = UncheckedCast<Number>(Parameter(Descriptor::kK));
3690 56 : USE(parameter2);
3691 112 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3692 56 : ca_.Goto(&block0, parameter0, parameter1, parameter2);
3693 :
3694 56 : if (block0.is_used()) {
3695 56 : compiler::TNode<Context> tmp0;
3696 56 : compiler::TNode<JSReceiver> tmp1;
3697 56 : compiler::TNode<Number> tmp2;
3698 56 : ca_.Bind(&block0, &tmp0, &tmp1, &tmp2);
3699 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 16);
3700 56 : compiler::TNode<Object> tmp3;
3701 56 : USE(tmp3);
3702 56 : tmp3 = ca_.UncheckedCast<Object>(CodeStubAssembler(state_).GetProperty(compiler::TNode<Context>{tmp0}, compiler::TNode<Object>{tmp1}, compiler::TNode<Object>{tmp2}));
3703 56 : CodeStubAssembler(state_).Return(tmp3);
3704 56 : }
3705 56 : }
3706 :
3707 112 : compiler::TNode<String> ArrayJoinBuiltinsFromDSLAssembler::ArrayJoinImpl7JSArray(compiler::TNode<Context> p_context, compiler::TNode<JSReceiver> p_receiver, compiler::TNode<String> p_sep, compiler::TNode<Number> p_lengthNumber, bool p_useToLocaleString, compiler::TNode<Object> p_locales, compiler::TNode<Object> p_options, compiler::TNode<BuiltinPtr> p_initialLoadFn) {
3708 112 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3709 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, String, UintPtrT, String> block3(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3710 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, String, UintPtrT, String> block4(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3711 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, String, UintPtrT, String> block6(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3712 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, String, UintPtrT, String, IntPtrT> block5(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3713 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, String, UintPtrT, String> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3714 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT> block9(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3715 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT> block7(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3716 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, BuiltinPtr, JSReceiver, Map, Number> block12(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3717 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, BuiltinPtr, JSReceiver, Map, Number> block13(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3718 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT> block10(&ca_, compiler::CodeAssemblerLabel::kDeferred);
3719 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT> block11(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3720 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT> block14(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3721 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT> block15(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3722 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, Object, String> block16(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3723 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, Object, String> block19(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3724 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, Object, String> block20(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3725 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, Object, String> block17(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3726 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, Object, String, Object, Object> block24(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3727 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, Object, String, Object, Object, String> block23(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3728 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, Object, String, Object, String> block25(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3729 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, Object, String, Object, String> block26(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3730 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, Object, String, Object> block22(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3731 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, Object, String, Object, Object> block30(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3732 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, Object, String, Object, Object, Number> block29(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3733 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, Object, String, Object> block28(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3734 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, Object, String, Object, HeapObject> block31(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3735 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, Object, String, Object, HeapObject> block32(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3736 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, Object, String, Object> block27(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3737 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, Object, String, Object> block21(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3738 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, Object, String> block18(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3739 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, Object, String, String, IntPtrT, IntPtrT, Context, String, IntPtrT, IntPtrT, BoolT, IntPtrT, IntPtrT, BoolT, Context, IntPtrT, IntPtrT, BoolT> block37(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3740 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, Object, String, String, IntPtrT, IntPtrT, Context, String, IntPtrT, IntPtrT, BoolT, IntPtrT, IntPtrT, BoolT, Context, IntPtrT, IntPtrT, BoolT> block35(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3741 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, Object, String, String, IntPtrT, IntPtrT, Context, String, IntPtrT, IntPtrT, BoolT, IntPtrT, IntPtrT, BoolT, Context, IntPtrT, IntPtrT, BoolT> block36(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3742 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, Object, String, String, IntPtrT, IntPtrT, Context, String, IntPtrT, IntPtrT, BoolT, IntPtrT, IntPtrT, BoolT, Context, IntPtrT, IntPtrT, BoolT, IntPtrT, IntPtrT> block38(&ca_, compiler::CodeAssemblerLabel::kDeferred);
3743 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, Object, String, String, IntPtrT, IntPtrT, Context, String, IntPtrT, IntPtrT, BoolT, IntPtrT, IntPtrT, BoolT, Context, IntPtrT, IntPtrT, BoolT, IntPtrT, IntPtrT> block39(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3744 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, Object, String, String, IntPtrT, IntPtrT, Context, String, IntPtrT, IntPtrT, BoolT, IntPtrT, IntPtrT, BoolT, Context, IntPtrT, IntPtrT, BoolT, IntPtrT, IntPtrT> block40(&ca_, compiler::CodeAssemblerLabel::kDeferred);
3745 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, Object, String, String, IntPtrT, IntPtrT, Context, String, IntPtrT, IntPtrT, BoolT, IntPtrT, IntPtrT, BoolT, Context, IntPtrT, IntPtrT, BoolT, IntPtrT, IntPtrT> block41(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3746 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, Object, String, String, IntPtrT, IntPtrT, Context, String, IntPtrT, IntPtrT, BoolT, IntPtrT, IntPtrT, BoolT, Context, IntPtrT, IntPtrT, BoolT> block34(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3747 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, Object, String, String, IntPtrT, IntPtrT, Context, String, IntPtrT, IntPtrT> block33(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3748 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT> block8(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3749 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, IntPtrT, IntPtrT, Context, IntPtrT, IntPtrT, BoolT> block45(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3750 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, IntPtrT, IntPtrT, Context, IntPtrT, IntPtrT, BoolT> block43(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3751 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, IntPtrT, IntPtrT, Context, IntPtrT, IntPtrT, BoolT> block44(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3752 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, IntPtrT, IntPtrT, Context, IntPtrT, IntPtrT, BoolT, IntPtrT, IntPtrT> block46(&ca_, compiler::CodeAssemblerLabel::kDeferred);
3753 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, IntPtrT, IntPtrT, Context, IntPtrT, IntPtrT, BoolT, IntPtrT, IntPtrT> block47(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3754 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, IntPtrT, IntPtrT, Context, IntPtrT, IntPtrT, BoolT, IntPtrT, IntPtrT> block48(&ca_, compiler::CodeAssemblerLabel::kDeferred);
3755 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, IntPtrT, IntPtrT, Context, IntPtrT, IntPtrT, BoolT, IntPtrT, IntPtrT> block49(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3756 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, IntPtrT, IntPtrT, Context, IntPtrT, IntPtrT, BoolT> block42(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3757 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, String> block1(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3758 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, String> block50(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
3759 112 : ca_.Goto(&block0, p_context, p_receiver, p_sep, p_lengthNumber, p_locales, p_options, p_initialLoadFn);
3760 :
3761 112 : if (block0.is_used()) {
3762 112 : compiler::TNode<Context> tmp0;
3763 112 : compiler::TNode<JSReceiver> tmp1;
3764 112 : compiler::TNode<String> tmp2;
3765 112 : compiler::TNode<Number> tmp3;
3766 112 : compiler::TNode<Object> tmp4;
3767 112 : compiler::TNode<Object> tmp5;
3768 112 : compiler::TNode<BuiltinPtr> tmp6;
3769 112 : ca_.Bind(&block0, &tmp0, &tmp1, &tmp2, &tmp3, &tmp4, &tmp5, &tmp6);
3770 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 263);
3771 112 : compiler::TNode<Map> tmp7;
3772 112 : USE(tmp7);
3773 112 : tmp7 = ca_.UncheckedCast<Map>(BaseBuiltinsFromDSLAssembler(state_).LoadHeapObjectMap(compiler::TNode<HeapObject>{tmp1}));
3774 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 264);
3775 112 : compiler::TNode<UintPtrT> tmp8;
3776 112 : USE(tmp8);
3777 112 : tmp8 = ca_.UncheckedCast<UintPtrT>(BaseBuiltinsFromDSLAssembler(state_).Convert9ATuintptr22UT12ATHeapNumber5ATSmi(compiler::TNode<Number>{tmp3}));
3778 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 265);
3779 112 : compiler::TNode<IntPtrT> tmp9;
3780 112 : USE(tmp9);
3781 112 : tmp9 = ca_.UncheckedCast<IntPtrT>(CodeStubAssembler(state_).LoadStringLengthAsWord(compiler::TNode<String>{tmp2}));
3782 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 266);
3783 112 : compiler::TNode<IntPtrT> tmp10;
3784 112 : USE(tmp10);
3785 112 : tmp10 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATintptr17ATconstexpr_int31(0));
3786 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 267);
3787 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 268);
3788 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 156);
3789 112 : compiler::TNode<UintPtrT> tmp11;
3790 112 : USE(tmp11);
3791 112 : tmp11 = ca_.UncheckedCast<UintPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr9ATuintptr17ATconstexpr_int31(FixedArray::kMaxRegularLength));
3792 112 : compiler::TNode<BoolT> tmp12;
3793 112 : USE(tmp12);
3794 112 : tmp12 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).UintPtrGreaterThan(compiler::TNode<UintPtrT>{tmp8}, compiler::TNode<UintPtrT>{tmp11}));
3795 112 : ca_.Branch(tmp12, &block3, &block4, tmp0, tmp1, tmp2, tmp3, tmp4, tmp5, tmp6, tmp7, tmp8, tmp9, tmp10, tmp6, ca_.Uninitialized<FixedArray>(), ca_.Uninitialized<IntPtrT>(), ca_.Uninitialized<IntPtrT>(), ca_.Uninitialized<BoolT>(), tmp8, tmp2, tmp8, tmp2);
3796 : }
3797 :
3798 112 : if (block3.is_used()) {
3799 112 : compiler::TNode<Context> tmp13;
3800 112 : compiler::TNode<JSReceiver> tmp14;
3801 112 : compiler::TNode<String> tmp15;
3802 112 : compiler::TNode<Number> tmp16;
3803 112 : compiler::TNode<Object> tmp17;
3804 112 : compiler::TNode<Object> tmp18;
3805 112 : compiler::TNode<BuiltinPtr> tmp19;
3806 112 : compiler::TNode<Map> tmp20;
3807 112 : compiler::TNode<UintPtrT> tmp21;
3808 112 : compiler::TNode<IntPtrT> tmp22;
3809 112 : compiler::TNode<IntPtrT> tmp23;
3810 112 : compiler::TNode<BuiltinPtr> tmp24;
3811 112 : compiler::TNode<FixedArray> tmp25;
3812 112 : compiler::TNode<IntPtrT> tmp26;
3813 112 : compiler::TNode<IntPtrT> tmp27;
3814 112 : compiler::TNode<BoolT> tmp28;
3815 112 : compiler::TNode<UintPtrT> tmp29;
3816 112 : compiler::TNode<String> tmp30;
3817 112 : compiler::TNode<UintPtrT> tmp31;
3818 112 : compiler::TNode<String> tmp32;
3819 112 : ca_.Bind(&block3, &tmp13, &tmp14, &tmp15, &tmp16, &tmp17, &tmp18, &tmp19, &tmp20, &tmp21, &tmp22, &tmp23, &tmp24, &tmp25, &tmp26, &tmp27, &tmp28, &tmp29, &tmp30, &tmp31, &tmp32);
3820 112 : ca_.Goto(&block6, tmp13, tmp14, tmp15, tmp16, tmp17, tmp18, tmp19, tmp20, tmp21, tmp22, tmp23, tmp24, tmp25, tmp26, tmp27, tmp28, tmp29, tmp30, tmp31, tmp32);
3821 : }
3822 :
3823 112 : if (block4.is_used()) {
3824 112 : compiler::TNode<Context> tmp33;
3825 112 : compiler::TNode<JSReceiver> tmp34;
3826 112 : compiler::TNode<String> tmp35;
3827 112 : compiler::TNode<Number> tmp36;
3828 112 : compiler::TNode<Object> tmp37;
3829 112 : compiler::TNode<Object> tmp38;
3830 112 : compiler::TNode<BuiltinPtr> tmp39;
3831 112 : compiler::TNode<Map> tmp40;
3832 112 : compiler::TNode<UintPtrT> tmp41;
3833 112 : compiler::TNode<IntPtrT> tmp42;
3834 112 : compiler::TNode<IntPtrT> tmp43;
3835 112 : compiler::TNode<BuiltinPtr> tmp44;
3836 112 : compiler::TNode<FixedArray> tmp45;
3837 112 : compiler::TNode<IntPtrT> tmp46;
3838 112 : compiler::TNode<IntPtrT> tmp47;
3839 112 : compiler::TNode<BoolT> tmp48;
3840 112 : compiler::TNode<UintPtrT> tmp49;
3841 112 : compiler::TNode<String> tmp50;
3842 112 : compiler::TNode<UintPtrT> tmp51;
3843 112 : compiler::TNode<String> tmp52;
3844 112 : ca_.Bind(&block4, &tmp33, &tmp34, &tmp35, &tmp36, &tmp37, &tmp38, &tmp39, &tmp40, &tmp41, &tmp42, &tmp43, &tmp44, &tmp45, &tmp46, &tmp47, &tmp48, &tmp49, &tmp50, &tmp51, &tmp52);
3845 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 158);
3846 112 : compiler::TNode<IntPtrT> tmp53;
3847 112 : USE(tmp53);
3848 112 : tmp53 = ca_.UncheckedCast<IntPtrT>(CodeStubAssembler(state_).Signed(compiler::TNode<UintPtrT>{tmp51}));
3849 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 156);
3850 112 : ca_.Goto(&block5, tmp33, tmp34, tmp35, tmp36, tmp37, tmp38, tmp39, tmp40, tmp41, tmp42, tmp43, tmp44, tmp45, tmp46, tmp47, tmp48, tmp49, tmp50, tmp51, tmp52, tmp53);
3851 : }
3852 :
3853 112 : if (block6.is_used()) {
3854 112 : compiler::TNode<Context> tmp54;
3855 112 : compiler::TNode<JSReceiver> tmp55;
3856 112 : compiler::TNode<String> tmp56;
3857 112 : compiler::TNode<Number> tmp57;
3858 112 : compiler::TNode<Object> tmp58;
3859 112 : compiler::TNode<Object> tmp59;
3860 112 : compiler::TNode<BuiltinPtr> tmp60;
3861 112 : compiler::TNode<Map> tmp61;
3862 112 : compiler::TNode<UintPtrT> tmp62;
3863 112 : compiler::TNode<IntPtrT> tmp63;
3864 112 : compiler::TNode<IntPtrT> tmp64;
3865 112 : compiler::TNode<BuiltinPtr> tmp65;
3866 112 : compiler::TNode<FixedArray> tmp66;
3867 112 : compiler::TNode<IntPtrT> tmp67;
3868 112 : compiler::TNode<IntPtrT> tmp68;
3869 112 : compiler::TNode<BoolT> tmp69;
3870 112 : compiler::TNode<UintPtrT> tmp70;
3871 112 : compiler::TNode<String> tmp71;
3872 112 : compiler::TNode<UintPtrT> tmp72;
3873 112 : compiler::TNode<String> tmp73;
3874 112 : ca_.Bind(&block6, &tmp54, &tmp55, &tmp56, &tmp57, &tmp58, &tmp59, &tmp60, &tmp61, &tmp62, &tmp63, &tmp64, &tmp65, &tmp66, &tmp67, &tmp68, &tmp69, &tmp70, &tmp71, &tmp72, &tmp73);
3875 112 : compiler::TNode<IntPtrT> tmp74;
3876 112 : USE(tmp74);
3877 112 : tmp74 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATintptr17ATconstexpr_int31(FixedArray::kMaxRegularLength));
3878 112 : ca_.Goto(&block5, tmp54, tmp55, tmp56, tmp57, tmp58, tmp59, tmp60, tmp61, tmp62, tmp63, tmp64, tmp65, tmp66, tmp67, tmp68, tmp69, tmp70, tmp71, tmp72, tmp73, tmp74);
3879 : }
3880 :
3881 112 : if (block5.is_used()) {
3882 112 : compiler::TNode<Context> tmp75;
3883 112 : compiler::TNode<JSReceiver> tmp76;
3884 112 : compiler::TNode<String> tmp77;
3885 112 : compiler::TNode<Number> tmp78;
3886 112 : compiler::TNode<Object> tmp79;
3887 112 : compiler::TNode<Object> tmp80;
3888 112 : compiler::TNode<BuiltinPtr> tmp81;
3889 112 : compiler::TNode<Map> tmp82;
3890 112 : compiler::TNode<UintPtrT> tmp83;
3891 112 : compiler::TNode<IntPtrT> tmp84;
3892 112 : compiler::TNode<IntPtrT> tmp85;
3893 112 : compiler::TNode<BuiltinPtr> tmp86;
3894 112 : compiler::TNode<FixedArray> tmp87;
3895 112 : compiler::TNode<IntPtrT> tmp88;
3896 112 : compiler::TNode<IntPtrT> tmp89;
3897 112 : compiler::TNode<BoolT> tmp90;
3898 112 : compiler::TNode<UintPtrT> tmp91;
3899 112 : compiler::TNode<String> tmp92;
3900 112 : compiler::TNode<UintPtrT> tmp93;
3901 112 : compiler::TNode<String> tmp94;
3902 112 : compiler::TNode<IntPtrT> tmp95;
3903 112 : ca_.Bind(&block5, &tmp75, &tmp76, &tmp77, &tmp78, &tmp79, &tmp80, &tmp81, &tmp82, &tmp83, &tmp84, &tmp85, &tmp86, &tmp87, &tmp88, &tmp89, &tmp90, &tmp91, &tmp92, &tmp93, &tmp94, &tmp95);
3904 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 160);
3905 112 : compiler::TNode<FixedArray> tmp96;
3906 112 : USE(tmp96);
3907 112 : tmp96 = ca_.UncheckedCast<FixedArray>(CodeStubAssembler(state_).AllocateZeroedFixedArray(compiler::TNode<IntPtrT>{tmp95}));
3908 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 161);
3909 112 : compiler::TNode<Int32T> tmp97;
3910 112 : USE(tmp97);
3911 112 : tmp97 = ca_.UncheckedCast<Int32T>(CodeStubAssembler(state_).LoadInstanceType(compiler::TNode<HeapObject>{tmp94}));
3912 112 : compiler::TNode<BoolT> tmp98;
3913 112 : USE(tmp98);
3914 112 : tmp98 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).HasOnlyOneByteChars(compiler::TNode<Int32T>{tmp97}));
3915 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 162);
3916 112 : compiler::TNode<IntPtrT> tmp99;
3917 112 : USE(tmp99);
3918 112 : tmp99 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATintptr17ATconstexpr_int31(0));
3919 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 163);
3920 112 : compiler::TNode<IntPtrT> tmp100;
3921 112 : USE(tmp100);
3922 112 : tmp100 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATintptr17ATconstexpr_int31(0));
3923 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 155);
3924 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 268);
3925 112 : ca_.Goto(&block2, tmp75, tmp76, tmp77, tmp78, tmp79, tmp80, tmp81, tmp82, tmp83, tmp84, tmp85, tmp86, tmp96, tmp99, tmp100, tmp98, tmp91, tmp92, tmp93, tmp94);
3926 : }
3927 :
3928 112 : if (block2.is_used()) {
3929 112 : compiler::TNode<Context> tmp101;
3930 112 : compiler::TNode<JSReceiver> tmp102;
3931 112 : compiler::TNode<String> tmp103;
3932 112 : compiler::TNode<Number> tmp104;
3933 112 : compiler::TNode<Object> tmp105;
3934 112 : compiler::TNode<Object> tmp106;
3935 112 : compiler::TNode<BuiltinPtr> tmp107;
3936 112 : compiler::TNode<Map> tmp108;
3937 112 : compiler::TNode<UintPtrT> tmp109;
3938 112 : compiler::TNode<IntPtrT> tmp110;
3939 112 : compiler::TNode<IntPtrT> tmp111;
3940 112 : compiler::TNode<BuiltinPtr> tmp112;
3941 112 : compiler::TNode<FixedArray> tmp113;
3942 112 : compiler::TNode<IntPtrT> tmp114;
3943 112 : compiler::TNode<IntPtrT> tmp115;
3944 112 : compiler::TNode<BoolT> tmp116;
3945 112 : compiler::TNode<UintPtrT> tmp117;
3946 112 : compiler::TNode<String> tmp118;
3947 112 : compiler::TNode<UintPtrT> tmp119;
3948 112 : compiler::TNode<String> tmp120;
3949 112 : ca_.Bind(&block2, &tmp101, &tmp102, &tmp103, &tmp104, &tmp105, &tmp106, &tmp107, &tmp108, &tmp109, &tmp110, &tmp111, &tmp112, &tmp113, &tmp114, &tmp115, &tmp116, &tmp117, &tmp118, &tmp119, &tmp120);
3950 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 271);
3951 112 : compiler::TNode<UintPtrT> tmp121;
3952 112 : USE(tmp121);
3953 112 : tmp121 = ca_.UncheckedCast<UintPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr9ATuintptr17ATconstexpr_int31(0));
3954 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 274);
3955 112 : ca_.Goto(&block9, tmp101, tmp102, tmp103, tmp104, tmp105, tmp106, tmp107, tmp108, tmp109, tmp110, tmp111, tmp112, tmp113, tmp114, tmp115, tmp116, tmp121);
3956 : }
3957 :
3958 112 : if (block9.is_used()) {
3959 112 : compiler::TNode<Context> tmp122;
3960 112 : compiler::TNode<JSReceiver> tmp123;
3961 112 : compiler::TNode<String> tmp124;
3962 112 : compiler::TNode<Number> tmp125;
3963 112 : compiler::TNode<Object> tmp126;
3964 112 : compiler::TNode<Object> tmp127;
3965 112 : compiler::TNode<BuiltinPtr> tmp128;
3966 112 : compiler::TNode<Map> tmp129;
3967 112 : compiler::TNode<UintPtrT> tmp130;
3968 112 : compiler::TNode<IntPtrT> tmp131;
3969 112 : compiler::TNode<IntPtrT> tmp132;
3970 112 : compiler::TNode<BuiltinPtr> tmp133;
3971 112 : compiler::TNode<FixedArray> tmp134;
3972 112 : compiler::TNode<IntPtrT> tmp135;
3973 112 : compiler::TNode<IntPtrT> tmp136;
3974 112 : compiler::TNode<BoolT> tmp137;
3975 112 : compiler::TNode<UintPtrT> tmp138;
3976 112 : ca_.Bind(&block9, &tmp122, &tmp123, &tmp124, &tmp125, &tmp126, &tmp127, &tmp128, &tmp129, &tmp130, &tmp131, &tmp132, &tmp133, &tmp134, &tmp135, &tmp136, &tmp137, &tmp138);
3977 112 : compiler::TNode<BoolT> tmp139;
3978 112 : USE(tmp139);
3979 112 : tmp139 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).UintPtrLessThan(compiler::TNode<UintPtrT>{tmp138}, compiler::TNode<UintPtrT>{tmp130}));
3980 112 : ca_.Branch(tmp139, &block7, &block8, tmp122, tmp123, tmp124, tmp125, tmp126, tmp127, tmp128, tmp129, tmp130, tmp131, tmp132, tmp133, tmp134, tmp135, tmp136, tmp137, tmp138);
3981 : }
3982 :
3983 112 : if (block7.is_used()) {
3984 112 : compiler::TNode<Context> tmp140;
3985 112 : compiler::TNode<JSReceiver> tmp141;
3986 112 : compiler::TNode<String> tmp142;
3987 112 : compiler::TNode<Number> tmp143;
3988 112 : compiler::TNode<Object> tmp144;
3989 112 : compiler::TNode<Object> tmp145;
3990 112 : compiler::TNode<BuiltinPtr> tmp146;
3991 112 : compiler::TNode<Map> tmp147;
3992 112 : compiler::TNode<UintPtrT> tmp148;
3993 112 : compiler::TNode<IntPtrT> tmp149;
3994 112 : compiler::TNode<IntPtrT> tmp150;
3995 112 : compiler::TNode<BuiltinPtr> tmp151;
3996 112 : compiler::TNode<FixedArray> tmp152;
3997 112 : compiler::TNode<IntPtrT> tmp153;
3998 112 : compiler::TNode<IntPtrT> tmp154;
3999 112 : compiler::TNode<BoolT> tmp155;
4000 112 : compiler::TNode<UintPtrT> tmp156;
4001 112 : ca_.Bind(&block7, &tmp140, &tmp141, &tmp142, &tmp143, &tmp144, &tmp145, &tmp146, &tmp147, &tmp148, &tmp149, &tmp150, &tmp151, &tmp152, &tmp153, &tmp154, &tmp155, &tmp156);
4002 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 276);
4003 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 275);
4004 112 : compiler::CodeAssemblerLabel label0(&ca_);
4005 224 : compiler::CodeAssemblerLabel label1(&ca_);
4006 112 : ArrayJoinBuiltinsFromDSLAssembler(state_).CannotUseSameArrayAccessor7JSArray(compiler::TNode<Context>{tmp140}, compiler::TNode<BuiltinPtr>{tmp151}, compiler::TNode<JSReceiver>{tmp141}, compiler::TNode<Map>{tmp147}, compiler::TNode<Number>{tmp143}, &label0, &label1);
4007 112 : if (label0.is_used()) {
4008 112 : ca_.Bind(&label0);
4009 112 : ca_.Goto(&block12, tmp140, tmp141, tmp142, tmp143, tmp144, tmp145, tmp146, tmp147, tmp148, tmp149, tmp150, tmp151, tmp152, tmp153, tmp154, tmp155, tmp156, tmp151, tmp141, tmp147, tmp143);
4010 : }
4011 112 : if (label1.is_used()) {
4012 112 : ca_.Bind(&label1);
4013 112 : ca_.Goto(&block13, tmp140, tmp141, tmp142, tmp143, tmp144, tmp145, tmp146, tmp147, tmp148, tmp149, tmp150, tmp151, tmp152, tmp153, tmp154, tmp155, tmp156, tmp151, tmp141, tmp147, tmp143);
4014 112 : }
4015 : }
4016 :
4017 112 : if (block12.is_used()) {
4018 112 : compiler::TNode<Context> tmp157;
4019 112 : compiler::TNode<JSReceiver> tmp158;
4020 112 : compiler::TNode<String> tmp159;
4021 112 : compiler::TNode<Number> tmp160;
4022 112 : compiler::TNode<Object> tmp161;
4023 112 : compiler::TNode<Object> tmp162;
4024 112 : compiler::TNode<BuiltinPtr> tmp163;
4025 112 : compiler::TNode<Map> tmp164;
4026 112 : compiler::TNode<UintPtrT> tmp165;
4027 112 : compiler::TNode<IntPtrT> tmp166;
4028 112 : compiler::TNode<IntPtrT> tmp167;
4029 112 : compiler::TNode<BuiltinPtr> tmp168;
4030 112 : compiler::TNode<FixedArray> tmp169;
4031 112 : compiler::TNode<IntPtrT> tmp170;
4032 112 : compiler::TNode<IntPtrT> tmp171;
4033 112 : compiler::TNode<BoolT> tmp172;
4034 112 : compiler::TNode<UintPtrT> tmp173;
4035 112 : compiler::TNode<BuiltinPtr> tmp174;
4036 112 : compiler::TNode<JSReceiver> tmp175;
4037 112 : compiler::TNode<Map> tmp176;
4038 112 : compiler::TNode<Number> tmp177;
4039 112 : ca_.Bind(&block12, &tmp157, &tmp158, &tmp159, &tmp160, &tmp161, &tmp162, &tmp163, &tmp164, &tmp165, &tmp166, &tmp167, &tmp168, &tmp169, &tmp170, &tmp171, &tmp172, &tmp173, &tmp174, &tmp175, &tmp176, &tmp177);
4040 112 : ca_.Goto(&block10, tmp157, tmp158, tmp159, tmp160, tmp161, tmp162, tmp163, tmp164, tmp165, tmp166, tmp167, tmp168, tmp169, tmp170, tmp171, tmp172, tmp173);
4041 : }
4042 :
4043 112 : if (block13.is_used()) {
4044 112 : compiler::TNode<Context> tmp178;
4045 112 : compiler::TNode<JSReceiver> tmp179;
4046 112 : compiler::TNode<String> tmp180;
4047 112 : compiler::TNode<Number> tmp181;
4048 112 : compiler::TNode<Object> tmp182;
4049 112 : compiler::TNode<Object> tmp183;
4050 112 : compiler::TNode<BuiltinPtr> tmp184;
4051 112 : compiler::TNode<Map> tmp185;
4052 112 : compiler::TNode<UintPtrT> tmp186;
4053 112 : compiler::TNode<IntPtrT> tmp187;
4054 112 : compiler::TNode<IntPtrT> tmp188;
4055 112 : compiler::TNode<BuiltinPtr> tmp189;
4056 112 : compiler::TNode<FixedArray> tmp190;
4057 112 : compiler::TNode<IntPtrT> tmp191;
4058 112 : compiler::TNode<IntPtrT> tmp192;
4059 112 : compiler::TNode<BoolT> tmp193;
4060 112 : compiler::TNode<UintPtrT> tmp194;
4061 112 : compiler::TNode<BuiltinPtr> tmp195;
4062 112 : compiler::TNode<JSReceiver> tmp196;
4063 112 : compiler::TNode<Map> tmp197;
4064 112 : compiler::TNode<Number> tmp198;
4065 112 : ca_.Bind(&block13, &tmp178, &tmp179, &tmp180, &tmp181, &tmp182, &tmp183, &tmp184, &tmp185, &tmp186, &tmp187, &tmp188, &tmp189, &tmp190, &tmp191, &tmp192, &tmp193, &tmp194, &tmp195, &tmp196, &tmp197, &tmp198);
4066 112 : ca_.Goto(&block11, tmp178, tmp179, tmp180, tmp181, tmp182, tmp183, tmp184, tmp185, tmp186, tmp187, tmp188, tmp189, tmp190, tmp191, tmp192, tmp193, tmp194);
4067 : }
4068 :
4069 112 : if (block10.is_used()) {
4070 112 : compiler::TNode<Context> tmp199;
4071 112 : compiler::TNode<JSReceiver> tmp200;
4072 112 : compiler::TNode<String> tmp201;
4073 112 : compiler::TNode<Number> tmp202;
4074 112 : compiler::TNode<Object> tmp203;
4075 112 : compiler::TNode<Object> tmp204;
4076 112 : compiler::TNode<BuiltinPtr> tmp205;
4077 112 : compiler::TNode<Map> tmp206;
4078 112 : compiler::TNode<UintPtrT> tmp207;
4079 112 : compiler::TNode<IntPtrT> tmp208;
4080 112 : compiler::TNode<IntPtrT> tmp209;
4081 112 : compiler::TNode<BuiltinPtr> tmp210;
4082 112 : compiler::TNode<FixedArray> tmp211;
4083 112 : compiler::TNode<IntPtrT> tmp212;
4084 112 : compiler::TNode<IntPtrT> tmp213;
4085 112 : compiler::TNode<BoolT> tmp214;
4086 112 : compiler::TNode<UintPtrT> tmp215;
4087 112 : ca_.Bind(&block10, &tmp199, &tmp200, &tmp201, &tmp202, &tmp203, &tmp204, &tmp205, &tmp206, &tmp207, &tmp208, &tmp209, &tmp210, &tmp211, &tmp212, &tmp213, &tmp214, &tmp215);
4088 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 278);
4089 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 275);
4090 112 : ca_.Goto(&block11, tmp199, tmp200, tmp201, tmp202, tmp203, tmp204, tmp205, tmp206, tmp207, tmp208, tmp209, ca_.UncheckedCast<BuiltinPtr>(ca_.SmiConstant(Builtins::kLoadJoinElement25ATGenericElementsAccessor)), tmp211, tmp212, tmp213, tmp214, tmp215);
4091 : }
4092 :
4093 112 : if (block11.is_used()) {
4094 112 : compiler::TNode<Context> tmp216;
4095 112 : compiler::TNode<JSReceiver> tmp217;
4096 112 : compiler::TNode<String> tmp218;
4097 112 : compiler::TNode<Number> tmp219;
4098 112 : compiler::TNode<Object> tmp220;
4099 112 : compiler::TNode<Object> tmp221;
4100 112 : compiler::TNode<BuiltinPtr> tmp222;
4101 112 : compiler::TNode<Map> tmp223;
4102 112 : compiler::TNode<UintPtrT> tmp224;
4103 112 : compiler::TNode<IntPtrT> tmp225;
4104 112 : compiler::TNode<IntPtrT> tmp226;
4105 112 : compiler::TNode<BuiltinPtr> tmp227;
4106 112 : compiler::TNode<FixedArray> tmp228;
4107 112 : compiler::TNode<IntPtrT> tmp229;
4108 112 : compiler::TNode<IntPtrT> tmp230;
4109 112 : compiler::TNode<BoolT> tmp231;
4110 112 : compiler::TNode<UintPtrT> tmp232;
4111 112 : ca_.Bind(&block11, &tmp216, &tmp217, &tmp218, &tmp219, &tmp220, &tmp221, &tmp222, &tmp223, &tmp224, &tmp225, &tmp226, &tmp227, &tmp228, &tmp229, &tmp230, &tmp231, &tmp232);
4112 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 281);
4113 112 : compiler::TNode<UintPtrT> tmp233;
4114 112 : USE(tmp233);
4115 112 : tmp233 = ca_.UncheckedCast<UintPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr9ATuintptr17ATconstexpr_int31(0));
4116 112 : compiler::TNode<BoolT> tmp234;
4117 112 : USE(tmp234);
4118 112 : tmp234 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).UintPtrGreaterThan(compiler::TNode<UintPtrT>{tmp232}, compiler::TNode<UintPtrT>{tmp233}));
4119 112 : ca_.Branch(tmp234, &block14, &block15, tmp216, tmp217, tmp218, tmp219, tmp220, tmp221, tmp222, tmp223, tmp224, tmp225, tmp226, tmp227, tmp228, tmp229, tmp230, tmp231, tmp232);
4120 : }
4121 :
4122 112 : if (block14.is_used()) {
4123 112 : compiler::TNode<Context> tmp235;
4124 112 : compiler::TNode<JSReceiver> tmp236;
4125 112 : compiler::TNode<String> tmp237;
4126 112 : compiler::TNode<Number> tmp238;
4127 112 : compiler::TNode<Object> tmp239;
4128 112 : compiler::TNode<Object> tmp240;
4129 112 : compiler::TNode<BuiltinPtr> tmp241;
4130 112 : compiler::TNode<Map> tmp242;
4131 112 : compiler::TNode<UintPtrT> tmp243;
4132 112 : compiler::TNode<IntPtrT> tmp244;
4133 112 : compiler::TNode<IntPtrT> tmp245;
4134 112 : compiler::TNode<BuiltinPtr> tmp246;
4135 112 : compiler::TNode<FixedArray> tmp247;
4136 112 : compiler::TNode<IntPtrT> tmp248;
4137 112 : compiler::TNode<IntPtrT> tmp249;
4138 112 : compiler::TNode<BoolT> tmp250;
4139 112 : compiler::TNode<UintPtrT> tmp251;
4140 112 : ca_.Bind(&block14, &tmp235, &tmp236, &tmp237, &tmp238, &tmp239, &tmp240, &tmp241, &tmp242, &tmp243, &tmp244, &tmp245, &tmp246, &tmp247, &tmp248, &tmp249, &tmp250, &tmp251);
4141 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 283);
4142 112 : compiler::TNode<IntPtrT> tmp252;
4143 112 : USE(tmp252);
4144 112 : tmp252 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATintptr17ATconstexpr_int31(1));
4145 112 : compiler::TNode<IntPtrT> tmp253;
4146 112 : USE(tmp253);
4147 112 : tmp253 = ca_.UncheckedCast<IntPtrT>(CodeStubAssembler(state_).IntPtrAdd(compiler::TNode<IntPtrT>{tmp245}, compiler::TNode<IntPtrT>{tmp252}));
4148 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 281);
4149 112 : ca_.Goto(&block15, tmp235, tmp236, tmp237, tmp238, tmp239, tmp240, tmp241, tmp242, tmp243, tmp244, tmp253, tmp246, tmp247, tmp248, tmp249, tmp250, tmp251);
4150 : }
4151 :
4152 112 : if (block15.is_used()) {
4153 112 : compiler::TNode<Context> tmp254;
4154 112 : compiler::TNode<JSReceiver> tmp255;
4155 112 : compiler::TNode<String> tmp256;
4156 112 : compiler::TNode<Number> tmp257;
4157 112 : compiler::TNode<Object> tmp258;
4158 112 : compiler::TNode<Object> tmp259;
4159 112 : compiler::TNode<BuiltinPtr> tmp260;
4160 112 : compiler::TNode<Map> tmp261;
4161 112 : compiler::TNode<UintPtrT> tmp262;
4162 112 : compiler::TNode<IntPtrT> tmp263;
4163 112 : compiler::TNode<IntPtrT> tmp264;
4164 112 : compiler::TNode<BuiltinPtr> tmp265;
4165 112 : compiler::TNode<FixedArray> tmp266;
4166 112 : compiler::TNode<IntPtrT> tmp267;
4167 112 : compiler::TNode<IntPtrT> tmp268;
4168 112 : compiler::TNode<BoolT> tmp269;
4169 112 : compiler::TNode<UintPtrT> tmp270;
4170 112 : ca_.Bind(&block15, &tmp254, &tmp255, &tmp256, &tmp257, &tmp258, &tmp259, &tmp260, &tmp261, &tmp262, &tmp263, &tmp264, &tmp265, &tmp266, &tmp267, &tmp268, &tmp269, &tmp270);
4171 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 287);
4172 112 : compiler::TNode<UintPtrT> tmp271;
4173 112 : USE(tmp271);
4174 112 : tmp271 = ca_.UncheckedCast<UintPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr9ATuintptr17ATconstexpr_int31(1));
4175 112 : compiler::TNode<UintPtrT> tmp272;
4176 112 : USE(tmp272);
4177 112 : tmp272 = ca_.UncheckedCast<UintPtrT>(CodeStubAssembler(state_).UintPtrAdd(compiler::TNode<UintPtrT>{tmp270}, compiler::TNode<UintPtrT>{tmp271}));
4178 112 : compiler::TNode<Number> tmp273;
4179 112 : USE(tmp273);
4180 112 : tmp273 = ca_.UncheckedCast<Number>(BaseBuiltinsFromDSLAssembler(state_).Convert22UT12ATHeapNumber5ATSmi9ATuintptr(compiler::TNode<UintPtrT>{tmp270}));
4181 112 : compiler::TNode<Object> tmp274 = CodeStubAssembler(state_).CallBuiltinPointer(Builtins::CallableFor(ca_.isolate(),ExampleBuiltinForTorqueFunctionPointerType(0)).descriptor(), tmp265, tmp254, tmp255, tmp273);
4182 112 : USE(tmp274);
4183 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 291);
4184 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 292);
4185 112 : if ((p_useToLocaleString)) {
4186 56 : ca_.Goto(&block16, tmp254, tmp255, tmp256, tmp257, tmp258, tmp259, tmp260, tmp261, tmp262, tmp263, tmp264, tmp265, tmp266, tmp267, tmp268, tmp269, tmp272, tmp274, ca_.Uninitialized<String>());
4187 : } else {
4188 56 : ca_.Goto(&block17, tmp254, tmp255, tmp256, tmp257, tmp258, tmp259, tmp260, tmp261, tmp262, tmp263, tmp264, tmp265, tmp266, tmp267, tmp268, tmp269, tmp272, tmp274, ca_.Uninitialized<String>());
4189 : }
4190 : }
4191 :
4192 112 : if (block16.is_used()) {
4193 56 : compiler::TNode<Context> tmp275;
4194 56 : compiler::TNode<JSReceiver> tmp276;
4195 56 : compiler::TNode<String> tmp277;
4196 56 : compiler::TNode<Number> tmp278;
4197 56 : compiler::TNode<Object> tmp279;
4198 56 : compiler::TNode<Object> tmp280;
4199 56 : compiler::TNode<BuiltinPtr> tmp281;
4200 56 : compiler::TNode<Map> tmp282;
4201 56 : compiler::TNode<UintPtrT> tmp283;
4202 56 : compiler::TNode<IntPtrT> tmp284;
4203 56 : compiler::TNode<IntPtrT> tmp285;
4204 56 : compiler::TNode<BuiltinPtr> tmp286;
4205 56 : compiler::TNode<FixedArray> tmp287;
4206 56 : compiler::TNode<IntPtrT> tmp288;
4207 56 : compiler::TNode<IntPtrT> tmp289;
4208 56 : compiler::TNode<BoolT> tmp290;
4209 56 : compiler::TNode<UintPtrT> tmp291;
4210 56 : compiler::TNode<Object> tmp292;
4211 56 : compiler::TNode<String> tmp293;
4212 56 : ca_.Bind(&block16, &tmp275, &tmp276, &tmp277, &tmp278, &tmp279, &tmp280, &tmp281, &tmp282, &tmp283, &tmp284, &tmp285, &tmp286, &tmp287, &tmp288, &tmp289, &tmp290, &tmp291, &tmp292, &tmp293);
4213 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 293);
4214 56 : compiler::TNode<String> tmp294;
4215 56 : tmp294 = TORQUE_CAST(CodeStubAssembler(state_).CallBuiltin(Builtins::kConvertToLocaleString, tmp275, tmp292, tmp279, tmp280));
4216 56 : USE(tmp294);
4217 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 294);
4218 56 : compiler::TNode<String> tmp295;
4219 56 : USE(tmp295);
4220 56 : tmp295 = BaseBuiltinsFromDSLAssembler(state_).kEmptyString();
4221 56 : compiler::TNode<BoolT> tmp296;
4222 56 : USE(tmp296);
4223 56 : tmp296 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).WordEqual(compiler::TNode<Object>{tmp294}, compiler::TNode<HeapObject>{tmp295}));
4224 56 : ca_.Branch(tmp296, &block19, &block20, tmp275, tmp276, tmp277, tmp278, tmp279, tmp280, tmp281, tmp282, tmp283, tmp284, tmp285, tmp286, tmp287, tmp288, tmp289, tmp290, tmp291, tmp292, tmp294);
4225 : }
4226 :
4227 112 : if (block19.is_used()) {
4228 56 : compiler::TNode<Context> tmp297;
4229 56 : compiler::TNode<JSReceiver> tmp298;
4230 56 : compiler::TNode<String> tmp299;
4231 56 : compiler::TNode<Number> tmp300;
4232 56 : compiler::TNode<Object> tmp301;
4233 56 : compiler::TNode<Object> tmp302;
4234 56 : compiler::TNode<BuiltinPtr> tmp303;
4235 56 : compiler::TNode<Map> tmp304;
4236 56 : compiler::TNode<UintPtrT> tmp305;
4237 56 : compiler::TNode<IntPtrT> tmp306;
4238 56 : compiler::TNode<IntPtrT> tmp307;
4239 56 : compiler::TNode<BuiltinPtr> tmp308;
4240 56 : compiler::TNode<FixedArray> tmp309;
4241 56 : compiler::TNode<IntPtrT> tmp310;
4242 56 : compiler::TNode<IntPtrT> tmp311;
4243 56 : compiler::TNode<BoolT> tmp312;
4244 56 : compiler::TNode<UintPtrT> tmp313;
4245 56 : compiler::TNode<Object> tmp314;
4246 56 : compiler::TNode<String> tmp315;
4247 56 : ca_.Bind(&block19, &tmp297, &tmp298, &tmp299, &tmp300, &tmp301, &tmp302, &tmp303, &tmp304, &tmp305, &tmp306, &tmp307, &tmp308, &tmp309, &tmp310, &tmp311, &tmp312, &tmp313, &tmp314, &tmp315);
4248 56 : ca_.Goto(&block9, tmp297, tmp298, tmp299, tmp300, tmp301, tmp302, tmp303, tmp304, tmp305, tmp306, tmp307, tmp308, tmp309, tmp310, tmp311, tmp312, tmp313);
4249 : }
4250 :
4251 112 : if (block20.is_used()) {
4252 56 : compiler::TNode<Context> tmp316;
4253 56 : compiler::TNode<JSReceiver> tmp317;
4254 56 : compiler::TNode<String> tmp318;
4255 56 : compiler::TNode<Number> tmp319;
4256 56 : compiler::TNode<Object> tmp320;
4257 56 : compiler::TNode<Object> tmp321;
4258 56 : compiler::TNode<BuiltinPtr> tmp322;
4259 56 : compiler::TNode<Map> tmp323;
4260 56 : compiler::TNode<UintPtrT> tmp324;
4261 56 : compiler::TNode<IntPtrT> tmp325;
4262 56 : compiler::TNode<IntPtrT> tmp326;
4263 56 : compiler::TNode<BuiltinPtr> tmp327;
4264 56 : compiler::TNode<FixedArray> tmp328;
4265 56 : compiler::TNode<IntPtrT> tmp329;
4266 56 : compiler::TNode<IntPtrT> tmp330;
4267 56 : compiler::TNode<BoolT> tmp331;
4268 56 : compiler::TNode<UintPtrT> tmp332;
4269 56 : compiler::TNode<Object> tmp333;
4270 56 : compiler::TNode<String> tmp334;
4271 56 : ca_.Bind(&block20, &tmp316, &tmp317, &tmp318, &tmp319, &tmp320, &tmp321, &tmp322, &tmp323, &tmp324, &tmp325, &tmp326, &tmp327, &tmp328, &tmp329, &tmp330, &tmp331, &tmp332, &tmp333, &tmp334);
4272 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 292);
4273 56 : ca_.Goto(&block18, tmp316, tmp317, tmp318, tmp319, tmp320, tmp321, tmp322, tmp323, tmp324, tmp325, tmp326, tmp327, tmp328, tmp329, tmp330, tmp331, tmp332, tmp333, tmp334);
4274 : }
4275 :
4276 112 : if (block17.is_used()) {
4277 56 : compiler::TNode<Context> tmp335;
4278 56 : compiler::TNode<JSReceiver> tmp336;
4279 56 : compiler::TNode<String> tmp337;
4280 56 : compiler::TNode<Number> tmp338;
4281 56 : compiler::TNode<Object> tmp339;
4282 56 : compiler::TNode<Object> tmp340;
4283 56 : compiler::TNode<BuiltinPtr> tmp341;
4284 56 : compiler::TNode<Map> tmp342;
4285 56 : compiler::TNode<UintPtrT> tmp343;
4286 56 : compiler::TNode<IntPtrT> tmp344;
4287 56 : compiler::TNode<IntPtrT> tmp345;
4288 56 : compiler::TNode<BuiltinPtr> tmp346;
4289 56 : compiler::TNode<FixedArray> tmp347;
4290 56 : compiler::TNode<IntPtrT> tmp348;
4291 56 : compiler::TNode<IntPtrT> tmp349;
4292 56 : compiler::TNode<BoolT> tmp350;
4293 56 : compiler::TNode<UintPtrT> tmp351;
4294 56 : compiler::TNode<Object> tmp352;
4295 56 : compiler::TNode<String> tmp353;
4296 56 : ca_.Bind(&block17, &tmp335, &tmp336, &tmp337, &tmp338, &tmp339, &tmp340, &tmp341, &tmp342, &tmp343, &tmp344, &tmp345, &tmp346, &tmp347, &tmp348, &tmp349, &tmp350, &tmp351, &tmp352, &tmp353);
4297 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 296);
4298 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 297);
4299 56 : compiler::TNode<String> tmp354;
4300 56 : USE(tmp354);
4301 56 : compiler::CodeAssemblerLabel label0(&ca_);
4302 56 : tmp354 = BaseBuiltinsFromDSLAssembler(state_).Cast8ATString(compiler::TNode<Context>{tmp335}, compiler::TNode<Object>{tmp352}, &label0);
4303 56 : ca_.Goto(&block23, tmp335, tmp336, tmp337, tmp338, tmp339, tmp340, tmp341, tmp342, tmp343, tmp344, tmp345, tmp346, tmp347, tmp348, tmp349, tmp350, tmp351, tmp352, tmp353, tmp352, tmp352, tmp354);
4304 56 : if (label0.is_used()) {
4305 56 : ca_.Bind(&label0);
4306 56 : ca_.Goto(&block24, tmp335, tmp336, tmp337, tmp338, tmp339, tmp340, tmp341, tmp342, tmp343, tmp344, tmp345, tmp346, tmp347, tmp348, tmp349, tmp350, tmp351, tmp352, tmp353, tmp352, tmp352);
4307 56 : }
4308 : }
4309 :
4310 112 : if (block24.is_used()) {
4311 56 : compiler::TNode<Context> tmp355;
4312 56 : compiler::TNode<JSReceiver> tmp356;
4313 56 : compiler::TNode<String> tmp357;
4314 56 : compiler::TNode<Number> tmp358;
4315 56 : compiler::TNode<Object> tmp359;
4316 56 : compiler::TNode<Object> tmp360;
4317 56 : compiler::TNode<BuiltinPtr> tmp361;
4318 56 : compiler::TNode<Map> tmp362;
4319 56 : compiler::TNode<UintPtrT> tmp363;
4320 56 : compiler::TNode<IntPtrT> tmp364;
4321 56 : compiler::TNode<IntPtrT> tmp365;
4322 56 : compiler::TNode<BuiltinPtr> tmp366;
4323 56 : compiler::TNode<FixedArray> tmp367;
4324 56 : compiler::TNode<IntPtrT> tmp368;
4325 56 : compiler::TNode<IntPtrT> tmp369;
4326 56 : compiler::TNode<BoolT> tmp370;
4327 56 : compiler::TNode<UintPtrT> tmp371;
4328 56 : compiler::TNode<Object> tmp372;
4329 56 : compiler::TNode<String> tmp373;
4330 56 : compiler::TNode<Object> tmp374;
4331 56 : compiler::TNode<Object> tmp375;
4332 56 : ca_.Bind(&block24, &tmp355, &tmp356, &tmp357, &tmp358, &tmp359, &tmp360, &tmp361, &tmp362, &tmp363, &tmp364, &tmp365, &tmp366, &tmp367, &tmp368, &tmp369, &tmp370, &tmp371, &tmp372, &tmp373, &tmp374, &tmp375);
4333 56 : ca_.Goto(&block22, tmp355, tmp356, tmp357, tmp358, tmp359, tmp360, tmp361, tmp362, tmp363, tmp364, tmp365, tmp366, tmp367, tmp368, tmp369, tmp370, tmp371, tmp372, tmp373, tmp374);
4334 : }
4335 :
4336 112 : if (block23.is_used()) {
4337 56 : compiler::TNode<Context> tmp376;
4338 56 : compiler::TNode<JSReceiver> tmp377;
4339 56 : compiler::TNode<String> tmp378;
4340 56 : compiler::TNode<Number> tmp379;
4341 56 : compiler::TNode<Object> tmp380;
4342 56 : compiler::TNode<Object> tmp381;
4343 56 : compiler::TNode<BuiltinPtr> tmp382;
4344 56 : compiler::TNode<Map> tmp383;
4345 56 : compiler::TNode<UintPtrT> tmp384;
4346 56 : compiler::TNode<IntPtrT> tmp385;
4347 56 : compiler::TNode<IntPtrT> tmp386;
4348 56 : compiler::TNode<BuiltinPtr> tmp387;
4349 56 : compiler::TNode<FixedArray> tmp388;
4350 56 : compiler::TNode<IntPtrT> tmp389;
4351 56 : compiler::TNode<IntPtrT> tmp390;
4352 56 : compiler::TNode<BoolT> tmp391;
4353 56 : compiler::TNode<UintPtrT> tmp392;
4354 56 : compiler::TNode<Object> tmp393;
4355 56 : compiler::TNode<String> tmp394;
4356 56 : compiler::TNode<Object> tmp395;
4357 56 : compiler::TNode<Object> tmp396;
4358 56 : compiler::TNode<String> tmp397;
4359 56 : ca_.Bind(&block23, &tmp376, &tmp377, &tmp378, &tmp379, &tmp380, &tmp381, &tmp382, &tmp383, &tmp384, &tmp385, &tmp386, &tmp387, &tmp388, &tmp389, &tmp390, &tmp391, &tmp392, &tmp393, &tmp394, &tmp395, &tmp396, &tmp397);
4360 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 298);
4361 56 : compiler::TNode<String> tmp398;
4362 56 : USE(tmp398);
4363 56 : tmp398 = BaseBuiltinsFromDSLAssembler(state_).kEmptyString();
4364 56 : compiler::TNode<BoolT> tmp399;
4365 56 : USE(tmp399);
4366 56 : tmp399 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).WordEqual(compiler::TNode<Object>{tmp397}, compiler::TNode<HeapObject>{tmp398}));
4367 56 : ca_.Branch(tmp399, &block25, &block26, tmp376, tmp377, tmp378, tmp379, tmp380, tmp381, tmp382, tmp383, tmp384, tmp385, tmp386, tmp387, tmp388, tmp389, tmp390, tmp391, tmp392, tmp393, tmp394, tmp395, tmp397);
4368 : }
4369 :
4370 112 : if (block25.is_used()) {
4371 56 : compiler::TNode<Context> tmp400;
4372 56 : compiler::TNode<JSReceiver> tmp401;
4373 56 : compiler::TNode<String> tmp402;
4374 56 : compiler::TNode<Number> tmp403;
4375 56 : compiler::TNode<Object> tmp404;
4376 56 : compiler::TNode<Object> tmp405;
4377 56 : compiler::TNode<BuiltinPtr> tmp406;
4378 56 : compiler::TNode<Map> tmp407;
4379 56 : compiler::TNode<UintPtrT> tmp408;
4380 56 : compiler::TNode<IntPtrT> tmp409;
4381 56 : compiler::TNode<IntPtrT> tmp410;
4382 56 : compiler::TNode<BuiltinPtr> tmp411;
4383 56 : compiler::TNode<FixedArray> tmp412;
4384 56 : compiler::TNode<IntPtrT> tmp413;
4385 56 : compiler::TNode<IntPtrT> tmp414;
4386 56 : compiler::TNode<BoolT> tmp415;
4387 56 : compiler::TNode<UintPtrT> tmp416;
4388 56 : compiler::TNode<Object> tmp417;
4389 56 : compiler::TNode<String> tmp418;
4390 56 : compiler::TNode<Object> tmp419;
4391 56 : compiler::TNode<String> tmp420;
4392 56 : ca_.Bind(&block25, &tmp400, &tmp401, &tmp402, &tmp403, &tmp404, &tmp405, &tmp406, &tmp407, &tmp408, &tmp409, &tmp410, &tmp411, &tmp412, &tmp413, &tmp414, &tmp415, &tmp416, &tmp417, &tmp418, &tmp419, &tmp420);
4393 56 : ca_.Goto(&block9, tmp400, tmp401, tmp402, tmp403, tmp404, tmp405, tmp406, tmp407, tmp408, tmp409, tmp410, tmp411, tmp412, tmp413, tmp414, tmp415, tmp416);
4394 : }
4395 :
4396 112 : if (block26.is_used()) {
4397 56 : compiler::TNode<Context> tmp421;
4398 56 : compiler::TNode<JSReceiver> tmp422;
4399 56 : compiler::TNode<String> tmp423;
4400 56 : compiler::TNode<Number> tmp424;
4401 56 : compiler::TNode<Object> tmp425;
4402 56 : compiler::TNode<Object> tmp426;
4403 56 : compiler::TNode<BuiltinPtr> tmp427;
4404 56 : compiler::TNode<Map> tmp428;
4405 56 : compiler::TNode<UintPtrT> tmp429;
4406 56 : compiler::TNode<IntPtrT> tmp430;
4407 56 : compiler::TNode<IntPtrT> tmp431;
4408 56 : compiler::TNode<BuiltinPtr> tmp432;
4409 56 : compiler::TNode<FixedArray> tmp433;
4410 56 : compiler::TNode<IntPtrT> tmp434;
4411 56 : compiler::TNode<IntPtrT> tmp435;
4412 56 : compiler::TNode<BoolT> tmp436;
4413 56 : compiler::TNode<UintPtrT> tmp437;
4414 56 : compiler::TNode<Object> tmp438;
4415 56 : compiler::TNode<String> tmp439;
4416 56 : compiler::TNode<Object> tmp440;
4417 56 : compiler::TNode<String> tmp441;
4418 56 : ca_.Bind(&block26, &tmp421, &tmp422, &tmp423, &tmp424, &tmp425, &tmp426, &tmp427, &tmp428, &tmp429, &tmp430, &tmp431, &tmp432, &tmp433, &tmp434, &tmp435, &tmp436, &tmp437, &tmp438, &tmp439, &tmp440, &tmp441);
4419 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 299);
4420 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 297);
4421 56 : ca_.Goto(&block21, tmp421, tmp422, tmp423, tmp424, tmp425, tmp426, tmp427, tmp428, tmp429, tmp430, tmp431, tmp432, tmp433, tmp434, tmp435, tmp436, tmp437, tmp438, tmp441, tmp440);
4422 : }
4423 :
4424 112 : if (block22.is_used()) {
4425 56 : compiler::TNode<Context> tmp442;
4426 56 : compiler::TNode<JSReceiver> tmp443;
4427 56 : compiler::TNode<String> tmp444;
4428 56 : compiler::TNode<Number> tmp445;
4429 56 : compiler::TNode<Object> tmp446;
4430 56 : compiler::TNode<Object> tmp447;
4431 56 : compiler::TNode<BuiltinPtr> tmp448;
4432 56 : compiler::TNode<Map> tmp449;
4433 56 : compiler::TNode<UintPtrT> tmp450;
4434 56 : compiler::TNode<IntPtrT> tmp451;
4435 56 : compiler::TNode<IntPtrT> tmp452;
4436 56 : compiler::TNode<BuiltinPtr> tmp453;
4437 56 : compiler::TNode<FixedArray> tmp454;
4438 56 : compiler::TNode<IntPtrT> tmp455;
4439 56 : compiler::TNode<IntPtrT> tmp456;
4440 56 : compiler::TNode<BoolT> tmp457;
4441 56 : compiler::TNode<UintPtrT> tmp458;
4442 56 : compiler::TNode<Object> tmp459;
4443 56 : compiler::TNode<String> tmp460;
4444 56 : compiler::TNode<Object> tmp461;
4445 56 : ca_.Bind(&block22, &tmp442, &tmp443, &tmp444, &tmp445, &tmp446, &tmp447, &tmp448, &tmp449, &tmp450, &tmp451, &tmp452, &tmp453, &tmp454, &tmp455, &tmp456, &tmp457, &tmp458, &tmp459, &tmp460, &tmp461);
4446 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 301);
4447 56 : compiler::TNode<Number> tmp462;
4448 56 : USE(tmp462);
4449 56 : compiler::CodeAssemblerLabel label0(&ca_);
4450 56 : tmp462 = BaseBuiltinsFromDSLAssembler(state_).Cast22UT12ATHeapNumber5ATSmi(compiler::TNode<Object>{ca_.UncheckedCast<Object>(tmp461)}, &label0);
4451 56 : ca_.Goto(&block29, tmp442, tmp443, tmp444, tmp445, tmp446, tmp447, tmp448, tmp449, tmp450, tmp451, tmp452, tmp453, tmp454, tmp455, tmp456, tmp457, tmp458, tmp459, tmp460, tmp461, ca_.UncheckedCast<Object>(tmp461), tmp462);
4452 56 : if (label0.is_used()) {
4453 56 : ca_.Bind(&label0);
4454 56 : ca_.Goto(&block30, tmp442, tmp443, tmp444, tmp445, tmp446, tmp447, tmp448, tmp449, tmp450, tmp451, tmp452, tmp453, tmp454, tmp455, tmp456, tmp457, tmp458, tmp459, tmp460, tmp461, ca_.UncheckedCast<Object>(tmp461));
4455 56 : }
4456 : }
4457 :
4458 112 : if (block30.is_used()) {
4459 56 : compiler::TNode<Context> tmp463;
4460 56 : compiler::TNode<JSReceiver> tmp464;
4461 56 : compiler::TNode<String> tmp465;
4462 56 : compiler::TNode<Number> tmp466;
4463 56 : compiler::TNode<Object> tmp467;
4464 56 : compiler::TNode<Object> tmp468;
4465 56 : compiler::TNode<BuiltinPtr> tmp469;
4466 56 : compiler::TNode<Map> tmp470;
4467 56 : compiler::TNode<UintPtrT> tmp471;
4468 56 : compiler::TNode<IntPtrT> tmp472;
4469 56 : compiler::TNode<IntPtrT> tmp473;
4470 56 : compiler::TNode<BuiltinPtr> tmp474;
4471 56 : compiler::TNode<FixedArray> tmp475;
4472 56 : compiler::TNode<IntPtrT> tmp476;
4473 56 : compiler::TNode<IntPtrT> tmp477;
4474 56 : compiler::TNode<BoolT> tmp478;
4475 56 : compiler::TNode<UintPtrT> tmp479;
4476 56 : compiler::TNode<Object> tmp480;
4477 56 : compiler::TNode<String> tmp481;
4478 56 : compiler::TNode<Object> tmp482;
4479 56 : compiler::TNode<Object> tmp483;
4480 56 : ca_.Bind(&block30, &tmp463, &tmp464, &tmp465, &tmp466, &tmp467, &tmp468, &tmp469, &tmp470, &tmp471, &tmp472, &tmp473, &tmp474, &tmp475, &tmp476, &tmp477, &tmp478, &tmp479, &tmp480, &tmp481, &tmp482, &tmp483);
4481 56 : ca_.Goto(&block28, tmp463, tmp464, tmp465, tmp466, tmp467, tmp468, tmp469, tmp470, tmp471, tmp472, tmp473, tmp474, tmp475, tmp476, tmp477, tmp478, tmp479, tmp480, tmp481, tmp482);
4482 : }
4483 :
4484 112 : if (block29.is_used()) {
4485 56 : compiler::TNode<Context> tmp484;
4486 56 : compiler::TNode<JSReceiver> tmp485;
4487 56 : compiler::TNode<String> tmp486;
4488 56 : compiler::TNode<Number> tmp487;
4489 56 : compiler::TNode<Object> tmp488;
4490 56 : compiler::TNode<Object> tmp489;
4491 56 : compiler::TNode<BuiltinPtr> tmp490;
4492 56 : compiler::TNode<Map> tmp491;
4493 56 : compiler::TNode<UintPtrT> tmp492;
4494 56 : compiler::TNode<IntPtrT> tmp493;
4495 56 : compiler::TNode<IntPtrT> tmp494;
4496 56 : compiler::TNode<BuiltinPtr> tmp495;
4497 56 : compiler::TNode<FixedArray> tmp496;
4498 56 : compiler::TNode<IntPtrT> tmp497;
4499 56 : compiler::TNode<IntPtrT> tmp498;
4500 56 : compiler::TNode<BoolT> tmp499;
4501 56 : compiler::TNode<UintPtrT> tmp500;
4502 56 : compiler::TNode<Object> tmp501;
4503 56 : compiler::TNode<String> tmp502;
4504 56 : compiler::TNode<Object> tmp503;
4505 56 : compiler::TNode<Object> tmp504;
4506 56 : compiler::TNode<Number> tmp505;
4507 56 : ca_.Bind(&block29, &tmp484, &tmp485, &tmp486, &tmp487, &tmp488, &tmp489, &tmp490, &tmp491, &tmp492, &tmp493, &tmp494, &tmp495, &tmp496, &tmp497, &tmp498, &tmp499, &tmp500, &tmp501, &tmp502, &tmp503, &tmp504, &tmp505);
4508 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 302);
4509 56 : compiler::TNode<String> tmp506;
4510 56 : USE(tmp506);
4511 56 : tmp506 = ca_.UncheckedCast<String>(CodeStubAssembler(state_).NumberToString(compiler::TNode<Number>{tmp505}));
4512 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 301);
4513 56 : ca_.Goto(&block27, tmp484, tmp485, tmp486, tmp487, tmp488, tmp489, tmp490, tmp491, tmp492, tmp493, tmp494, tmp495, tmp496, tmp497, tmp498, tmp499, tmp500, tmp501, tmp506, tmp503);
4514 : }
4515 :
4516 112 : if (block28.is_used()) {
4517 56 : compiler::TNode<Context> tmp507;
4518 56 : compiler::TNode<JSReceiver> tmp508;
4519 56 : compiler::TNode<String> tmp509;
4520 56 : compiler::TNode<Number> tmp510;
4521 56 : compiler::TNode<Object> tmp511;
4522 56 : compiler::TNode<Object> tmp512;
4523 56 : compiler::TNode<BuiltinPtr> tmp513;
4524 56 : compiler::TNode<Map> tmp514;
4525 56 : compiler::TNode<UintPtrT> tmp515;
4526 56 : compiler::TNode<IntPtrT> tmp516;
4527 56 : compiler::TNode<IntPtrT> tmp517;
4528 56 : compiler::TNode<BuiltinPtr> tmp518;
4529 56 : compiler::TNode<FixedArray> tmp519;
4530 56 : compiler::TNode<IntPtrT> tmp520;
4531 56 : compiler::TNode<IntPtrT> tmp521;
4532 56 : compiler::TNode<BoolT> tmp522;
4533 56 : compiler::TNode<UintPtrT> tmp523;
4534 56 : compiler::TNode<Object> tmp524;
4535 56 : compiler::TNode<String> tmp525;
4536 56 : compiler::TNode<Object> tmp526;
4537 56 : ca_.Bind(&block28, &tmp507, &tmp508, &tmp509, &tmp510, &tmp511, &tmp512, &tmp513, &tmp514, &tmp515, &tmp516, &tmp517, &tmp518, &tmp519, &tmp520, &tmp521, &tmp522, &tmp523, &tmp524, &tmp525, &tmp526);
4538 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 304);
4539 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 305);
4540 56 : compiler::TNode<BoolT> tmp527;
4541 56 : USE(tmp527);
4542 56 : tmp527 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).IsNullOrUndefined(compiler::TNode<Object>{ca_.UncheckedCast<HeapObject>(tmp526)}));
4543 56 : ca_.Branch(tmp527, &block31, &block32, tmp507, tmp508, tmp509, tmp510, tmp511, tmp512, tmp513, tmp514, tmp515, tmp516, tmp517, tmp518, tmp519, tmp520, tmp521, tmp522, tmp523, tmp524, tmp525, tmp526, ca_.UncheckedCast<HeapObject>(tmp526));
4544 : }
4545 :
4546 112 : if (block31.is_used()) {
4547 56 : compiler::TNode<Context> tmp528;
4548 56 : compiler::TNode<JSReceiver> tmp529;
4549 56 : compiler::TNode<String> tmp530;
4550 56 : compiler::TNode<Number> tmp531;
4551 56 : compiler::TNode<Object> tmp532;
4552 56 : compiler::TNode<Object> tmp533;
4553 56 : compiler::TNode<BuiltinPtr> tmp534;
4554 56 : compiler::TNode<Map> tmp535;
4555 56 : compiler::TNode<UintPtrT> tmp536;
4556 56 : compiler::TNode<IntPtrT> tmp537;
4557 56 : compiler::TNode<IntPtrT> tmp538;
4558 56 : compiler::TNode<BuiltinPtr> tmp539;
4559 56 : compiler::TNode<FixedArray> tmp540;
4560 56 : compiler::TNode<IntPtrT> tmp541;
4561 56 : compiler::TNode<IntPtrT> tmp542;
4562 56 : compiler::TNode<BoolT> tmp543;
4563 56 : compiler::TNode<UintPtrT> tmp544;
4564 56 : compiler::TNode<Object> tmp545;
4565 56 : compiler::TNode<String> tmp546;
4566 56 : compiler::TNode<Object> tmp547;
4567 56 : compiler::TNode<HeapObject> tmp548;
4568 56 : ca_.Bind(&block31, &tmp528, &tmp529, &tmp530, &tmp531, &tmp532, &tmp533, &tmp534, &tmp535, &tmp536, &tmp537, &tmp538, &tmp539, &tmp540, &tmp541, &tmp542, &tmp543, &tmp544, &tmp545, &tmp546, &tmp547, &tmp548);
4569 56 : ca_.Goto(&block9, tmp528, tmp529, tmp530, tmp531, tmp532, tmp533, tmp534, tmp535, tmp536, tmp537, tmp538, tmp539, tmp540, tmp541, tmp542, tmp543, tmp544);
4570 : }
4571 :
4572 112 : if (block32.is_used()) {
4573 56 : compiler::TNode<Context> tmp549;
4574 56 : compiler::TNode<JSReceiver> tmp550;
4575 56 : compiler::TNode<String> tmp551;
4576 56 : compiler::TNode<Number> tmp552;
4577 56 : compiler::TNode<Object> tmp553;
4578 56 : compiler::TNode<Object> tmp554;
4579 56 : compiler::TNode<BuiltinPtr> tmp555;
4580 56 : compiler::TNode<Map> tmp556;
4581 56 : compiler::TNode<UintPtrT> tmp557;
4582 56 : compiler::TNode<IntPtrT> tmp558;
4583 56 : compiler::TNode<IntPtrT> tmp559;
4584 56 : compiler::TNode<BuiltinPtr> tmp560;
4585 56 : compiler::TNode<FixedArray> tmp561;
4586 56 : compiler::TNode<IntPtrT> tmp562;
4587 56 : compiler::TNode<IntPtrT> tmp563;
4588 56 : compiler::TNode<BoolT> tmp564;
4589 56 : compiler::TNode<UintPtrT> tmp565;
4590 56 : compiler::TNode<Object> tmp566;
4591 56 : compiler::TNode<String> tmp567;
4592 56 : compiler::TNode<Object> tmp568;
4593 56 : compiler::TNode<HeapObject> tmp569;
4594 56 : ca_.Bind(&block32, &tmp549, &tmp550, &tmp551, &tmp552, &tmp553, &tmp554, &tmp555, &tmp556, &tmp557, &tmp558, &tmp559, &tmp560, &tmp561, &tmp562, &tmp563, &tmp564, &tmp565, &tmp566, &tmp567, &tmp568, &tmp569);
4595 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 306);
4596 56 : compiler::TNode<String> tmp570;
4597 56 : tmp570 = TORQUE_CAST(CodeStubAssembler(state_).CallBuiltin(Builtins::kToString, tmp549, tmp569));
4598 56 : USE(tmp570);
4599 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 301);
4600 56 : ca_.Goto(&block27, tmp549, tmp550, tmp551, tmp552, tmp553, tmp554, tmp555, tmp556, tmp557, tmp558, tmp559, tmp560, tmp561, tmp562, tmp563, tmp564, tmp565, tmp566, tmp570, tmp568);
4601 : }
4602 :
4603 112 : if (block27.is_used()) {
4604 56 : compiler::TNode<Context> tmp571;
4605 56 : compiler::TNode<JSReceiver> tmp572;
4606 56 : compiler::TNode<String> tmp573;
4607 56 : compiler::TNode<Number> tmp574;
4608 56 : compiler::TNode<Object> tmp575;
4609 56 : compiler::TNode<Object> tmp576;
4610 56 : compiler::TNode<BuiltinPtr> tmp577;
4611 56 : compiler::TNode<Map> tmp578;
4612 56 : compiler::TNode<UintPtrT> tmp579;
4613 56 : compiler::TNode<IntPtrT> tmp580;
4614 56 : compiler::TNode<IntPtrT> tmp581;
4615 56 : compiler::TNode<BuiltinPtr> tmp582;
4616 56 : compiler::TNode<FixedArray> tmp583;
4617 56 : compiler::TNode<IntPtrT> tmp584;
4618 56 : compiler::TNode<IntPtrT> tmp585;
4619 56 : compiler::TNode<BoolT> tmp586;
4620 56 : compiler::TNode<UintPtrT> tmp587;
4621 56 : compiler::TNode<Object> tmp588;
4622 56 : compiler::TNode<String> tmp589;
4623 56 : compiler::TNode<Object> tmp590;
4624 56 : ca_.Bind(&block27, &tmp571, &tmp572, &tmp573, &tmp574, &tmp575, &tmp576, &tmp577, &tmp578, &tmp579, &tmp580, &tmp581, &tmp582, &tmp583, &tmp584, &tmp585, &tmp586, &tmp587, &tmp588, &tmp589, &tmp590);
4625 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 297);
4626 56 : ca_.Goto(&block21, tmp571, tmp572, tmp573, tmp574, tmp575, tmp576, tmp577, tmp578, tmp579, tmp580, tmp581, tmp582, tmp583, tmp584, tmp585, tmp586, tmp587, tmp588, tmp589, tmp590);
4627 : }
4628 :
4629 112 : if (block21.is_used()) {
4630 56 : compiler::TNode<Context> tmp591;
4631 56 : compiler::TNode<JSReceiver> tmp592;
4632 56 : compiler::TNode<String> tmp593;
4633 56 : compiler::TNode<Number> tmp594;
4634 56 : compiler::TNode<Object> tmp595;
4635 56 : compiler::TNode<Object> tmp596;
4636 56 : compiler::TNode<BuiltinPtr> tmp597;
4637 56 : compiler::TNode<Map> tmp598;
4638 56 : compiler::TNode<UintPtrT> tmp599;
4639 56 : compiler::TNode<IntPtrT> tmp600;
4640 56 : compiler::TNode<IntPtrT> tmp601;
4641 56 : compiler::TNode<BuiltinPtr> tmp602;
4642 56 : compiler::TNode<FixedArray> tmp603;
4643 56 : compiler::TNode<IntPtrT> tmp604;
4644 56 : compiler::TNode<IntPtrT> tmp605;
4645 56 : compiler::TNode<BoolT> tmp606;
4646 56 : compiler::TNode<UintPtrT> tmp607;
4647 56 : compiler::TNode<Object> tmp608;
4648 56 : compiler::TNode<String> tmp609;
4649 56 : compiler::TNode<Object> tmp610;
4650 56 : ca_.Bind(&block21, &tmp591, &tmp592, &tmp593, &tmp594, &tmp595, &tmp596, &tmp597, &tmp598, &tmp599, &tmp600, &tmp601, &tmp602, &tmp603, &tmp604, &tmp605, &tmp606, &tmp607, &tmp608, &tmp609, &tmp610);
4651 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 296);
4652 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 292);
4653 56 : ca_.Goto(&block18, tmp591, tmp592, tmp593, tmp594, tmp595, tmp596, tmp597, tmp598, tmp599, tmp600, tmp601, tmp602, tmp603, tmp604, tmp605, tmp606, tmp607, tmp608, tmp609);
4654 : }
4655 :
4656 112 : if (block18.is_used()) {
4657 112 : compiler::TNode<Context> tmp611;
4658 112 : compiler::TNode<JSReceiver> tmp612;
4659 112 : compiler::TNode<String> tmp613;
4660 112 : compiler::TNode<Number> tmp614;
4661 112 : compiler::TNode<Object> tmp615;
4662 112 : compiler::TNode<Object> tmp616;
4663 112 : compiler::TNode<BuiltinPtr> tmp617;
4664 112 : compiler::TNode<Map> tmp618;
4665 112 : compiler::TNode<UintPtrT> tmp619;
4666 112 : compiler::TNode<IntPtrT> tmp620;
4667 112 : compiler::TNode<IntPtrT> tmp621;
4668 112 : compiler::TNode<BuiltinPtr> tmp622;
4669 112 : compiler::TNode<FixedArray> tmp623;
4670 112 : compiler::TNode<IntPtrT> tmp624;
4671 112 : compiler::TNode<IntPtrT> tmp625;
4672 112 : compiler::TNode<BoolT> tmp626;
4673 112 : compiler::TNode<UintPtrT> tmp627;
4674 112 : compiler::TNode<Object> tmp628;
4675 112 : compiler::TNode<String> tmp629;
4676 112 : ca_.Bind(&block18, &tmp611, &tmp612, &tmp613, &tmp614, &tmp615, &tmp616, &tmp617, &tmp618, &tmp619, &tmp620, &tmp621, &tmp622, &tmp623, &tmp624, &tmp625, &tmp626, &tmp627, &tmp628, &tmp629);
4677 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 312);
4678 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 169);
4679 112 : compiler::TNode<IntPtrT> tmp630;
4680 112 : USE(tmp630);
4681 112 : tmp630 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATintptr17ATconstexpr_int31(0));
4682 112 : compiler::TNode<BoolT> tmp631;
4683 112 : USE(tmp631);
4684 112 : tmp631 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).WordEqual(compiler::TNode<IntPtrT>{tmp624}, compiler::TNode<IntPtrT>{tmp630}));
4685 112 : compiler::TNode<IntPtrT> tmp632;
4686 112 : USE(tmp632);
4687 112 : tmp632 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATintptr17ATconstexpr_int31(1));
4688 112 : compiler::TNode<BoolT> tmp633;
4689 112 : USE(tmp633);
4690 112 : tmp633 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).IntPtrGreaterThan(compiler::TNode<IntPtrT>{tmp621}, compiler::TNode<IntPtrT>{tmp632}));
4691 112 : compiler::TNode<BoolT> tmp634;
4692 112 : USE(tmp634);
4693 112 : tmp634 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).Word32Or(compiler::TNode<BoolT>{tmp631}, compiler::TNode<BoolT>{tmp633}));
4694 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 170);
4695 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 181);
4696 112 : compiler::TNode<IntPtrT> tmp635;
4697 112 : USE(tmp635);
4698 112 : tmp635 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATintptr17ATconstexpr_int31(0));
4699 112 : compiler::TNode<BoolT> tmp636;
4700 112 : USE(tmp636);
4701 112 : tmp636 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).WordEqual(compiler::TNode<IntPtrT>{tmp621}, compiler::TNode<IntPtrT>{tmp635}));
4702 112 : ca_.Branch(tmp636, &block35, &block37, tmp611, tmp612, tmp613, tmp614, tmp615, tmp616, tmp617, tmp618, tmp619, tmp620, tmp621, tmp622, tmp623, tmp624, tmp625, tmp626, tmp627, tmp628, tmp629, tmp629, tmp621, tmp620, tmp611, tmp629, tmp621, tmp620, tmp634, tmp621, tmp620, tmp634, tmp611, tmp621, tmp620, tmp634);
4703 : }
4704 :
4705 112 : if (block37.is_used()) {
4706 112 : compiler::TNode<Context> tmp637;
4707 112 : compiler::TNode<JSReceiver> tmp638;
4708 112 : compiler::TNode<String> tmp639;
4709 112 : compiler::TNode<Number> tmp640;
4710 112 : compiler::TNode<Object> tmp641;
4711 112 : compiler::TNode<Object> tmp642;
4712 112 : compiler::TNode<BuiltinPtr> tmp643;
4713 112 : compiler::TNode<Map> tmp644;
4714 112 : compiler::TNode<UintPtrT> tmp645;
4715 112 : compiler::TNode<IntPtrT> tmp646;
4716 112 : compiler::TNode<IntPtrT> tmp647;
4717 112 : compiler::TNode<BuiltinPtr> tmp648;
4718 112 : compiler::TNode<FixedArray> tmp649;
4719 112 : compiler::TNode<IntPtrT> tmp650;
4720 112 : compiler::TNode<IntPtrT> tmp651;
4721 112 : compiler::TNode<BoolT> tmp652;
4722 112 : compiler::TNode<UintPtrT> tmp653;
4723 112 : compiler::TNode<Object> tmp654;
4724 112 : compiler::TNode<String> tmp655;
4725 112 : compiler::TNode<String> tmp656;
4726 112 : compiler::TNode<IntPtrT> tmp657;
4727 112 : compiler::TNode<IntPtrT> tmp658;
4728 112 : compiler::TNode<Context> tmp659;
4729 112 : compiler::TNode<String> tmp660;
4730 112 : compiler::TNode<IntPtrT> tmp661;
4731 112 : compiler::TNode<IntPtrT> tmp662;
4732 112 : compiler::TNode<BoolT> tmp663;
4733 112 : compiler::TNode<IntPtrT> tmp664;
4734 112 : compiler::TNode<IntPtrT> tmp665;
4735 112 : compiler::TNode<BoolT> tmp666;
4736 112 : compiler::TNode<Context> tmp667;
4737 112 : compiler::TNode<IntPtrT> tmp668;
4738 112 : compiler::TNode<IntPtrT> tmp669;
4739 112 : compiler::TNode<BoolT> tmp670;
4740 112 : ca_.Bind(&block37, &tmp637, &tmp638, &tmp639, &tmp640, &tmp641, &tmp642, &tmp643, &tmp644, &tmp645, &tmp646, &tmp647, &tmp648, &tmp649, &tmp650, &tmp651, &tmp652, &tmp653, &tmp654, &tmp655, &tmp656, &tmp657, &tmp658, &tmp659, &tmp660, &tmp661, &tmp662, &tmp663, &tmp664, &tmp665, &tmp666, &tmp667, &tmp668, &tmp669, &tmp670);
4741 112 : compiler::TNode<IntPtrT> tmp671;
4742 112 : USE(tmp671);
4743 112 : tmp671 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATintptr17ATconstexpr_int31(0));
4744 112 : compiler::TNode<BoolT> tmp672;
4745 112 : USE(tmp672);
4746 112 : tmp672 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).WordEqual(compiler::TNode<IntPtrT>{tmp669}, compiler::TNode<IntPtrT>{tmp671}));
4747 112 : ca_.Branch(tmp672, &block35, &block36, tmp637, tmp638, tmp639, tmp640, tmp641, tmp642, tmp643, tmp644, tmp645, tmp646, tmp647, tmp648, tmp649, tmp650, tmp651, tmp652, tmp653, tmp654, tmp655, tmp656, tmp657, tmp658, tmp659, tmp660, tmp661, tmp662, tmp663, tmp664, tmp665, tmp666, tmp667, tmp668, tmp669, tmp670);
4748 : }
4749 :
4750 112 : if (block35.is_used()) {
4751 112 : compiler::TNode<Context> tmp673;
4752 112 : compiler::TNode<JSReceiver> tmp674;
4753 112 : compiler::TNode<String> tmp675;
4754 112 : compiler::TNode<Number> tmp676;
4755 112 : compiler::TNode<Object> tmp677;
4756 112 : compiler::TNode<Object> tmp678;
4757 112 : compiler::TNode<BuiltinPtr> tmp679;
4758 112 : compiler::TNode<Map> tmp680;
4759 112 : compiler::TNode<UintPtrT> tmp681;
4760 112 : compiler::TNode<IntPtrT> tmp682;
4761 112 : compiler::TNode<IntPtrT> tmp683;
4762 112 : compiler::TNode<BuiltinPtr> tmp684;
4763 112 : compiler::TNode<FixedArray> tmp685;
4764 112 : compiler::TNode<IntPtrT> tmp686;
4765 112 : compiler::TNode<IntPtrT> tmp687;
4766 112 : compiler::TNode<BoolT> tmp688;
4767 112 : compiler::TNode<UintPtrT> tmp689;
4768 112 : compiler::TNode<Object> tmp690;
4769 112 : compiler::TNode<String> tmp691;
4770 112 : compiler::TNode<String> tmp692;
4771 112 : compiler::TNode<IntPtrT> tmp693;
4772 112 : compiler::TNode<IntPtrT> tmp694;
4773 112 : compiler::TNode<Context> tmp695;
4774 112 : compiler::TNode<String> tmp696;
4775 112 : compiler::TNode<IntPtrT> tmp697;
4776 112 : compiler::TNode<IntPtrT> tmp698;
4777 112 : compiler::TNode<BoolT> tmp699;
4778 112 : compiler::TNode<IntPtrT> tmp700;
4779 112 : compiler::TNode<IntPtrT> tmp701;
4780 112 : compiler::TNode<BoolT> tmp702;
4781 112 : compiler::TNode<Context> tmp703;
4782 112 : compiler::TNode<IntPtrT> tmp704;
4783 112 : compiler::TNode<IntPtrT> tmp705;
4784 112 : compiler::TNode<BoolT> tmp706;
4785 112 : ca_.Bind(&block35, &tmp673, &tmp674, &tmp675, &tmp676, &tmp677, &tmp678, &tmp679, &tmp680, &tmp681, &tmp682, &tmp683, &tmp684, &tmp685, &tmp686, &tmp687, &tmp688, &tmp689, &tmp690, &tmp691, &tmp692, &tmp693, &tmp694, &tmp695, &tmp696, &tmp697, &tmp698, &tmp699, &tmp700, &tmp701, &tmp702, &tmp703, &tmp704, &tmp705, &tmp706);
4786 112 : ca_.Goto(&block34, tmp673, tmp674, tmp675, tmp676, tmp677, tmp678, tmp679, tmp680, tmp681, tmp682, tmp683, tmp684, tmp685, tmp686, tmp687, tmp688, tmp689, tmp690, tmp691, tmp692, tmp693, tmp694, tmp695, tmp696, tmp697, tmp698, tmp699, tmp700, tmp701, tmp702, tmp703, tmp704, tmp705, tmp706);
4787 : }
4788 :
4789 112 : if (block36.is_used()) {
4790 112 : compiler::TNode<Context> tmp707;
4791 112 : compiler::TNode<JSReceiver> tmp708;
4792 112 : compiler::TNode<String> tmp709;
4793 112 : compiler::TNode<Number> tmp710;
4794 112 : compiler::TNode<Object> tmp711;
4795 112 : compiler::TNode<Object> tmp712;
4796 112 : compiler::TNode<BuiltinPtr> tmp713;
4797 112 : compiler::TNode<Map> tmp714;
4798 112 : compiler::TNode<UintPtrT> tmp715;
4799 112 : compiler::TNode<IntPtrT> tmp716;
4800 112 : compiler::TNode<IntPtrT> tmp717;
4801 112 : compiler::TNode<BuiltinPtr> tmp718;
4802 112 : compiler::TNode<FixedArray> tmp719;
4803 112 : compiler::TNode<IntPtrT> tmp720;
4804 112 : compiler::TNode<IntPtrT> tmp721;
4805 112 : compiler::TNode<BoolT> tmp722;
4806 112 : compiler::TNode<UintPtrT> tmp723;
4807 112 : compiler::TNode<Object> tmp724;
4808 112 : compiler::TNode<String> tmp725;
4809 112 : compiler::TNode<String> tmp726;
4810 112 : compiler::TNode<IntPtrT> tmp727;
4811 112 : compiler::TNode<IntPtrT> tmp728;
4812 112 : compiler::TNode<Context> tmp729;
4813 112 : compiler::TNode<String> tmp730;
4814 112 : compiler::TNode<IntPtrT> tmp731;
4815 112 : compiler::TNode<IntPtrT> tmp732;
4816 112 : compiler::TNode<BoolT> tmp733;
4817 112 : compiler::TNode<IntPtrT> tmp734;
4818 112 : compiler::TNode<IntPtrT> tmp735;
4819 112 : compiler::TNode<BoolT> tmp736;
4820 112 : compiler::TNode<Context> tmp737;
4821 112 : compiler::TNode<IntPtrT> tmp738;
4822 112 : compiler::TNode<IntPtrT> tmp739;
4823 112 : compiler::TNode<BoolT> tmp740;
4824 112 : ca_.Bind(&block36, &tmp707, &tmp708, &tmp709, &tmp710, &tmp711, &tmp712, &tmp713, &tmp714, &tmp715, &tmp716, &tmp717, &tmp718, &tmp719, &tmp720, &tmp721, &tmp722, &tmp723, &tmp724, &tmp725, &tmp726, &tmp727, &tmp728, &tmp729, &tmp730, &tmp731, &tmp732, &tmp733, &tmp734, &tmp735, &tmp736, &tmp737, &tmp738, &tmp739, &tmp740);
4825 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 183);
4826 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 184);
4827 112 : compiler::TNode<IntPtrT> tmp741;
4828 112 : USE(tmp741);
4829 112 : tmp741 = ca_.UncheckedCast<IntPtrT>(CodeStubAssembler(state_).IntPtrMul(compiler::TNode<IntPtrT>{tmp739}, compiler::TNode<IntPtrT>{tmp738}));
4830 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 187);
4831 112 : compiler::TNode<IntPtrT> tmp742;
4832 112 : USE(tmp742);
4833 112 : tmp742 = ca_.UncheckedCast<IntPtrT>(CodeStubAssembler(state_).IntPtrDiv(compiler::TNode<IntPtrT>{tmp741}, compiler::TNode<IntPtrT>{tmp739}));
4834 112 : compiler::TNode<BoolT> tmp743;
4835 112 : USE(tmp743);
4836 112 : tmp743 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).WordNotEqual(compiler::TNode<IntPtrT>{tmp742}, compiler::TNode<IntPtrT>{tmp738}));
4837 112 : ca_.Branch(tmp743, &block38, &block39, tmp707, tmp708, tmp709, tmp710, tmp711, tmp712, tmp713, tmp714, tmp715, tmp716, tmp717, tmp718, tmp719, tmp720, tmp721, tmp722, tmp723, tmp724, tmp725, tmp726, tmp727, tmp728, tmp729, tmp730, tmp731, tmp732, tmp733, tmp734, tmp735, tmp736, tmp737, tmp738, tmp739, tmp740, tmp738, tmp741);
4838 : }
4839 :
4840 112 : if (block38.is_used()) {
4841 112 : compiler::TNode<Context> tmp744;
4842 112 : compiler::TNode<JSReceiver> tmp745;
4843 112 : compiler::TNode<String> tmp746;
4844 112 : compiler::TNode<Number> tmp747;
4845 112 : compiler::TNode<Object> tmp748;
4846 112 : compiler::TNode<Object> tmp749;
4847 112 : compiler::TNode<BuiltinPtr> tmp750;
4848 112 : compiler::TNode<Map> tmp751;
4849 112 : compiler::TNode<UintPtrT> tmp752;
4850 112 : compiler::TNode<IntPtrT> tmp753;
4851 112 : compiler::TNode<IntPtrT> tmp754;
4852 112 : compiler::TNode<BuiltinPtr> tmp755;
4853 112 : compiler::TNode<FixedArray> tmp756;
4854 112 : compiler::TNode<IntPtrT> tmp757;
4855 112 : compiler::TNode<IntPtrT> tmp758;
4856 112 : compiler::TNode<BoolT> tmp759;
4857 112 : compiler::TNode<UintPtrT> tmp760;
4858 112 : compiler::TNode<Object> tmp761;
4859 112 : compiler::TNode<String> tmp762;
4860 112 : compiler::TNode<String> tmp763;
4861 112 : compiler::TNode<IntPtrT> tmp764;
4862 112 : compiler::TNode<IntPtrT> tmp765;
4863 112 : compiler::TNode<Context> tmp766;
4864 112 : compiler::TNode<String> tmp767;
4865 112 : compiler::TNode<IntPtrT> tmp768;
4866 112 : compiler::TNode<IntPtrT> tmp769;
4867 112 : compiler::TNode<BoolT> tmp770;
4868 112 : compiler::TNode<IntPtrT> tmp771;
4869 112 : compiler::TNode<IntPtrT> tmp772;
4870 112 : compiler::TNode<BoolT> tmp773;
4871 112 : compiler::TNode<Context> tmp774;
4872 112 : compiler::TNode<IntPtrT> tmp775;
4873 112 : compiler::TNode<IntPtrT> tmp776;
4874 112 : compiler::TNode<BoolT> tmp777;
4875 112 : compiler::TNode<IntPtrT> tmp778;
4876 112 : compiler::TNode<IntPtrT> tmp779;
4877 112 : ca_.Bind(&block38, &tmp744, &tmp745, &tmp746, &tmp747, &tmp748, &tmp749, &tmp750, &tmp751, &tmp752, &tmp753, &tmp754, &tmp755, &tmp756, &tmp757, &tmp758, &tmp759, &tmp760, &tmp761, &tmp762, &tmp763, &tmp764, &tmp765, &tmp766, &tmp767, &tmp768, &tmp769, &tmp770, &tmp771, &tmp772, &tmp773, &tmp774, &tmp775, &tmp776, &tmp777, &tmp778, &tmp779);
4878 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 188);
4879 112 : CodeStubAssembler(state_).CallRuntime(Runtime::kThrowInvalidStringLength, tmp774);
4880 112 : CodeStubAssembler(state_).Unreachable();
4881 : }
4882 :
4883 112 : if (block39.is_used()) {
4884 112 : compiler::TNode<Context> tmp781;
4885 112 : compiler::TNode<JSReceiver> tmp782;
4886 112 : compiler::TNode<String> tmp783;
4887 112 : compiler::TNode<Number> tmp784;
4888 112 : compiler::TNode<Object> tmp785;
4889 112 : compiler::TNode<Object> tmp786;
4890 112 : compiler::TNode<BuiltinPtr> tmp787;
4891 112 : compiler::TNode<Map> tmp788;
4892 112 : compiler::TNode<UintPtrT> tmp789;
4893 112 : compiler::TNode<IntPtrT> tmp790;
4894 112 : compiler::TNode<IntPtrT> tmp791;
4895 112 : compiler::TNode<BuiltinPtr> tmp792;
4896 112 : compiler::TNode<FixedArray> tmp793;
4897 112 : compiler::TNode<IntPtrT> tmp794;
4898 112 : compiler::TNode<IntPtrT> tmp795;
4899 112 : compiler::TNode<BoolT> tmp796;
4900 112 : compiler::TNode<UintPtrT> tmp797;
4901 112 : compiler::TNode<Object> tmp798;
4902 112 : compiler::TNode<String> tmp799;
4903 112 : compiler::TNode<String> tmp800;
4904 112 : compiler::TNode<IntPtrT> tmp801;
4905 112 : compiler::TNode<IntPtrT> tmp802;
4906 112 : compiler::TNode<Context> tmp803;
4907 112 : compiler::TNode<String> tmp804;
4908 112 : compiler::TNode<IntPtrT> tmp805;
4909 112 : compiler::TNode<IntPtrT> tmp806;
4910 112 : compiler::TNode<BoolT> tmp807;
4911 112 : compiler::TNode<IntPtrT> tmp808;
4912 112 : compiler::TNode<IntPtrT> tmp809;
4913 112 : compiler::TNode<BoolT> tmp810;
4914 112 : compiler::TNode<Context> tmp811;
4915 112 : compiler::TNode<IntPtrT> tmp812;
4916 112 : compiler::TNode<IntPtrT> tmp813;
4917 112 : compiler::TNode<BoolT> tmp814;
4918 112 : compiler::TNode<IntPtrT> tmp815;
4919 112 : compiler::TNode<IntPtrT> tmp816;
4920 112 : ca_.Bind(&block39, &tmp781, &tmp782, &tmp783, &tmp784, &tmp785, &tmp786, &tmp787, &tmp788, &tmp789, &tmp790, &tmp791, &tmp792, &tmp793, &tmp794, &tmp795, &tmp796, &tmp797, &tmp798, &tmp799, &tmp800, &tmp801, &tmp802, &tmp803, &tmp804, &tmp805, &tmp806, &tmp807, &tmp808, &tmp809, &tmp810, &tmp811, &tmp812, &tmp813, &tmp814, &tmp815, &tmp816);
4921 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 191);
4922 112 : compiler::TNode<IntPtrT> tmp817;
4923 112 : USE(tmp817);
4924 112 : tmp817 = ca_.UncheckedCast<IntPtrT>(ArrayJoinBuiltinsFromDSLAssembler(state_).AddStringLength(compiler::TNode<Context>{tmp811}, compiler::TNode<IntPtrT>{tmp795}, compiler::TNode<IntPtrT>{tmp816}));
4925 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 192);
4926 112 : ca_.Branch(tmp814, &block40, &block41, tmp781, tmp782, tmp783, tmp784, tmp785, tmp786, tmp787, tmp788, tmp789, tmp790, tmp791, tmp792, tmp793, tmp794, tmp817, tmp796, tmp797, tmp798, tmp799, tmp800, tmp801, tmp802, tmp803, tmp804, tmp805, tmp806, tmp807, tmp808, tmp809, tmp810, tmp811, tmp812, tmp813, tmp814, tmp815, tmp816);
4927 : }
4928 :
4929 112 : if (block40.is_used()) {
4930 112 : compiler::TNode<Context> tmp818;
4931 112 : compiler::TNode<JSReceiver> tmp819;
4932 112 : compiler::TNode<String> tmp820;
4933 112 : compiler::TNode<Number> tmp821;
4934 112 : compiler::TNode<Object> tmp822;
4935 112 : compiler::TNode<Object> tmp823;
4936 112 : compiler::TNode<BuiltinPtr> tmp824;
4937 112 : compiler::TNode<Map> tmp825;
4938 112 : compiler::TNode<UintPtrT> tmp826;
4939 112 : compiler::TNode<IntPtrT> tmp827;
4940 112 : compiler::TNode<IntPtrT> tmp828;
4941 112 : compiler::TNode<BuiltinPtr> tmp829;
4942 112 : compiler::TNode<FixedArray> tmp830;
4943 112 : compiler::TNode<IntPtrT> tmp831;
4944 112 : compiler::TNode<IntPtrT> tmp832;
4945 112 : compiler::TNode<BoolT> tmp833;
4946 112 : compiler::TNode<UintPtrT> tmp834;
4947 112 : compiler::TNode<Object> tmp835;
4948 112 : compiler::TNode<String> tmp836;
4949 112 : compiler::TNode<String> tmp837;
4950 112 : compiler::TNode<IntPtrT> tmp838;
4951 112 : compiler::TNode<IntPtrT> tmp839;
4952 112 : compiler::TNode<Context> tmp840;
4953 112 : compiler::TNode<String> tmp841;
4954 112 : compiler::TNode<IntPtrT> tmp842;
4955 112 : compiler::TNode<IntPtrT> tmp843;
4956 112 : compiler::TNode<BoolT> tmp844;
4957 112 : compiler::TNode<IntPtrT> tmp845;
4958 112 : compiler::TNode<IntPtrT> tmp846;
4959 112 : compiler::TNode<BoolT> tmp847;
4960 112 : compiler::TNode<Context> tmp848;
4961 112 : compiler::TNode<IntPtrT> tmp849;
4962 112 : compiler::TNode<IntPtrT> tmp850;
4963 112 : compiler::TNode<BoolT> tmp851;
4964 112 : compiler::TNode<IntPtrT> tmp852;
4965 112 : compiler::TNode<IntPtrT> tmp853;
4966 112 : ca_.Bind(&block40, &tmp818, &tmp819, &tmp820, &tmp821, &tmp822, &tmp823, &tmp824, &tmp825, &tmp826, &tmp827, &tmp828, &tmp829, &tmp830, &tmp831, &tmp832, &tmp833, &tmp834, &tmp835, &tmp836, &tmp837, &tmp838, &tmp839, &tmp840, &tmp841, &tmp842, &tmp843, &tmp844, &tmp845, &tmp846, &tmp847, &tmp848, &tmp849, &tmp850, &tmp851, &tmp852, &tmp853);
4967 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 194);
4968 112 : compiler::TNode<IntPtrT> tmp854;
4969 112 : USE(tmp854);
4970 112 : tmp854 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATintptr17ATconstexpr_int31(1));
4971 112 : compiler::TNode<IntPtrT> tmp855;
4972 112 : USE(tmp855);
4973 112 : tmp855 = ca_.UncheckedCast<IntPtrT>(CodeStubAssembler(state_).IntPtrAdd(compiler::TNode<IntPtrT>{tmp831}, compiler::TNode<IntPtrT>{tmp854}));
4974 112 : compiler::TNode<Smi> tmp856;
4975 112 : USE(tmp856);
4976 112 : tmp856 = ca_.UncheckedCast<Smi>(BaseBuiltinsFromDSLAssembler(state_).Convert5ATSmi8ATintptr(compiler::TNode<IntPtrT>{tmp852}));
4977 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 193);
4978 112 : compiler::TNode<FixedArray> tmp857;
4979 112 : USE(tmp857);
4980 112 : tmp857 = ca_.UncheckedCast<FixedArray>(ArrayJoinBuiltinsFromDSLAssembler(state_).StoreAndGrowFixedArray5ATSmi(compiler::TNode<FixedArray>{tmp830}, compiler::TNode<IntPtrT>{tmp831}, compiler::TNode<Smi>{tmp856}));
4981 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 192);
4982 112 : ca_.Goto(&block41, tmp818, tmp819, tmp820, tmp821, tmp822, tmp823, tmp824, tmp825, tmp826, tmp827, tmp828, tmp829, tmp857, tmp855, tmp832, tmp833, tmp834, tmp835, tmp836, tmp837, tmp838, tmp839, tmp840, tmp841, tmp842, tmp843, tmp844, tmp845, tmp846, tmp847, tmp848, tmp849, tmp850, tmp851, tmp852, tmp853);
4983 : }
4984 :
4985 112 : if (block41.is_used()) {
4986 112 : compiler::TNode<Context> tmp858;
4987 112 : compiler::TNode<JSReceiver> tmp859;
4988 112 : compiler::TNode<String> tmp860;
4989 112 : compiler::TNode<Number> tmp861;
4990 112 : compiler::TNode<Object> tmp862;
4991 112 : compiler::TNode<Object> tmp863;
4992 112 : compiler::TNode<BuiltinPtr> tmp864;
4993 112 : compiler::TNode<Map> tmp865;
4994 112 : compiler::TNode<UintPtrT> tmp866;
4995 112 : compiler::TNode<IntPtrT> tmp867;
4996 112 : compiler::TNode<IntPtrT> tmp868;
4997 112 : compiler::TNode<BuiltinPtr> tmp869;
4998 112 : compiler::TNode<FixedArray> tmp870;
4999 112 : compiler::TNode<IntPtrT> tmp871;
5000 112 : compiler::TNode<IntPtrT> tmp872;
5001 112 : compiler::TNode<BoolT> tmp873;
5002 112 : compiler::TNode<UintPtrT> tmp874;
5003 112 : compiler::TNode<Object> tmp875;
5004 112 : compiler::TNode<String> tmp876;
5005 112 : compiler::TNode<String> tmp877;
5006 112 : compiler::TNode<IntPtrT> tmp878;
5007 112 : compiler::TNode<IntPtrT> tmp879;
5008 112 : compiler::TNode<Context> tmp880;
5009 112 : compiler::TNode<String> tmp881;
5010 112 : compiler::TNode<IntPtrT> tmp882;
5011 112 : compiler::TNode<IntPtrT> tmp883;
5012 112 : compiler::TNode<BoolT> tmp884;
5013 112 : compiler::TNode<IntPtrT> tmp885;
5014 112 : compiler::TNode<IntPtrT> tmp886;
5015 112 : compiler::TNode<BoolT> tmp887;
5016 112 : compiler::TNode<Context> tmp888;
5017 112 : compiler::TNode<IntPtrT> tmp889;
5018 112 : compiler::TNode<IntPtrT> tmp890;
5019 112 : compiler::TNode<BoolT> tmp891;
5020 112 : compiler::TNode<IntPtrT> tmp892;
5021 112 : compiler::TNode<IntPtrT> tmp893;
5022 112 : ca_.Bind(&block41, &tmp858, &tmp859, &tmp860, &tmp861, &tmp862, &tmp863, &tmp864, &tmp865, &tmp866, &tmp867, &tmp868, &tmp869, &tmp870, &tmp871, &tmp872, &tmp873, &tmp874, &tmp875, &tmp876, &tmp877, &tmp878, &tmp879, &tmp880, &tmp881, &tmp882, &tmp883, &tmp884, &tmp885, &tmp886, &tmp887, &tmp888, &tmp889, &tmp890, &tmp891, &tmp892, &tmp893);
5023 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 180);
5024 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 170);
5025 112 : ca_.Goto(&block34, tmp858, tmp859, tmp860, tmp861, tmp862, tmp863, tmp864, tmp865, tmp866, tmp867, tmp868, tmp869, tmp870, tmp871, tmp872, tmp873, tmp874, tmp875, tmp876, tmp877, tmp878, tmp879, tmp880, tmp881, tmp882, tmp883, tmp884, tmp885, tmp886, tmp887, tmp888, tmp889, tmp890, tmp891);
5026 : }
5027 :
5028 112 : if (block34.is_used()) {
5029 112 : compiler::TNode<Context> tmp894;
5030 112 : compiler::TNode<JSReceiver> tmp895;
5031 112 : compiler::TNode<String> tmp896;
5032 112 : compiler::TNode<Number> tmp897;
5033 112 : compiler::TNode<Object> tmp898;
5034 112 : compiler::TNode<Object> tmp899;
5035 112 : compiler::TNode<BuiltinPtr> tmp900;
5036 112 : compiler::TNode<Map> tmp901;
5037 112 : compiler::TNode<UintPtrT> tmp902;
5038 112 : compiler::TNode<IntPtrT> tmp903;
5039 112 : compiler::TNode<IntPtrT> tmp904;
5040 112 : compiler::TNode<BuiltinPtr> tmp905;
5041 112 : compiler::TNode<FixedArray> tmp906;
5042 112 : compiler::TNode<IntPtrT> tmp907;
5043 112 : compiler::TNode<IntPtrT> tmp908;
5044 112 : compiler::TNode<BoolT> tmp909;
5045 112 : compiler::TNode<UintPtrT> tmp910;
5046 112 : compiler::TNode<Object> tmp911;
5047 112 : compiler::TNode<String> tmp912;
5048 112 : compiler::TNode<String> tmp913;
5049 112 : compiler::TNode<IntPtrT> tmp914;
5050 112 : compiler::TNode<IntPtrT> tmp915;
5051 112 : compiler::TNode<Context> tmp916;
5052 112 : compiler::TNode<String> tmp917;
5053 112 : compiler::TNode<IntPtrT> tmp918;
5054 112 : compiler::TNode<IntPtrT> tmp919;
5055 112 : compiler::TNode<BoolT> tmp920;
5056 112 : compiler::TNode<IntPtrT> tmp921;
5057 112 : compiler::TNode<IntPtrT> tmp922;
5058 112 : compiler::TNode<BoolT> tmp923;
5059 112 : compiler::TNode<Context> tmp924;
5060 112 : compiler::TNode<IntPtrT> tmp925;
5061 112 : compiler::TNode<IntPtrT> tmp926;
5062 112 : compiler::TNode<BoolT> tmp927;
5063 112 : ca_.Bind(&block34, &tmp894, &tmp895, &tmp896, &tmp897, &tmp898, &tmp899, &tmp900, &tmp901, &tmp902, &tmp903, &tmp904, &tmp905, &tmp906, &tmp907, &tmp908, &tmp909, &tmp910, &tmp911, &tmp912, &tmp913, &tmp914, &tmp915, &tmp916, &tmp917, &tmp918, &tmp919, &tmp920, &tmp921, &tmp922, &tmp923, &tmp924, &tmp925, &tmp926, &tmp927);
5064 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 173);
5065 112 : compiler::TNode<IntPtrT> tmp928;
5066 112 : USE(tmp928);
5067 112 : tmp928 = ca_.UncheckedCast<IntPtrT>(CodeStubAssembler(state_).LoadStringLengthAsWord(compiler::TNode<String>{tmp917}));
5068 112 : compiler::TNode<IntPtrT> tmp929;
5069 112 : USE(tmp929);
5070 112 : tmp929 = ca_.UncheckedCast<IntPtrT>(ArrayJoinBuiltinsFromDSLAssembler(state_).AddStringLength(compiler::TNode<Context>{tmp916}, compiler::TNode<IntPtrT>{tmp908}, compiler::TNode<IntPtrT>{tmp928}));
5071 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 172);
5072 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 175);
5073 112 : compiler::TNode<IntPtrT> tmp930;
5074 112 : USE(tmp930);
5075 112 : tmp930 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATintptr17ATconstexpr_int31(1));
5076 112 : compiler::TNode<IntPtrT> tmp931;
5077 112 : USE(tmp931);
5078 112 : tmp931 = ca_.UncheckedCast<IntPtrT>(CodeStubAssembler(state_).IntPtrAdd(compiler::TNode<IntPtrT>{tmp907}, compiler::TNode<IntPtrT>{tmp930}));
5079 112 : compiler::TNode<FixedArray> tmp932;
5080 112 : USE(tmp932);
5081 112 : tmp932 = ca_.UncheckedCast<FixedArray>(ArrayJoinBuiltinsFromDSLAssembler(state_).StoreAndGrowFixedArray8ATString(compiler::TNode<FixedArray>{tmp906}, compiler::TNode<IntPtrT>{tmp907}, compiler::TNode<String>{tmp917}));
5082 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 174);
5083 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 176);
5084 112 : compiler::TNode<Int32T> tmp933;
5085 112 : USE(tmp933);
5086 112 : tmp933 = ca_.UncheckedCast<Int32T>(CodeStubAssembler(state_).LoadInstanceType(compiler::TNode<HeapObject>{tmp917}));
5087 112 : compiler::TNode<BoolT> tmp934;
5088 112 : USE(tmp934);
5089 112 : tmp934 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).HasOnlyOneByteChars(compiler::TNode<Int32T>{tmp933}));
5090 112 : compiler::TNode<BoolT> tmp935;
5091 112 : USE(tmp935);
5092 112 : tmp935 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).Word32And(compiler::TNode<BoolT>{tmp934}, compiler::TNode<BoolT>{tmp909}));
5093 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 167);
5094 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 312);
5095 112 : ca_.Goto(&block33, tmp894, tmp895, tmp896, tmp897, tmp898, tmp899, tmp900, tmp901, tmp902, tmp903, tmp904, tmp905, tmp932, tmp931, tmp929, tmp935, tmp910, tmp911, tmp912, tmp913, tmp914, tmp915, tmp916, tmp917, tmp918, tmp919);
5096 : }
5097 :
5098 112 : if (block33.is_used()) {
5099 112 : compiler::TNode<Context> tmp936;
5100 112 : compiler::TNode<JSReceiver> tmp937;
5101 112 : compiler::TNode<String> tmp938;
5102 112 : compiler::TNode<Number> tmp939;
5103 112 : compiler::TNode<Object> tmp940;
5104 112 : compiler::TNode<Object> tmp941;
5105 112 : compiler::TNode<BuiltinPtr> tmp942;
5106 112 : compiler::TNode<Map> tmp943;
5107 112 : compiler::TNode<UintPtrT> tmp944;
5108 112 : compiler::TNode<IntPtrT> tmp945;
5109 112 : compiler::TNode<IntPtrT> tmp946;
5110 112 : compiler::TNode<BuiltinPtr> tmp947;
5111 112 : compiler::TNode<FixedArray> tmp948;
5112 112 : compiler::TNode<IntPtrT> tmp949;
5113 112 : compiler::TNode<IntPtrT> tmp950;
5114 112 : compiler::TNode<BoolT> tmp951;
5115 112 : compiler::TNode<UintPtrT> tmp952;
5116 112 : compiler::TNode<Object> tmp953;
5117 112 : compiler::TNode<String> tmp954;
5118 112 : compiler::TNode<String> tmp955;
5119 112 : compiler::TNode<IntPtrT> tmp956;
5120 112 : compiler::TNode<IntPtrT> tmp957;
5121 112 : compiler::TNode<Context> tmp958;
5122 112 : compiler::TNode<String> tmp959;
5123 112 : compiler::TNode<IntPtrT> tmp960;
5124 112 : compiler::TNode<IntPtrT> tmp961;
5125 112 : ca_.Bind(&block33, &tmp936, &tmp937, &tmp938, &tmp939, &tmp940, &tmp941, &tmp942, &tmp943, &tmp944, &tmp945, &tmp946, &tmp947, &tmp948, &tmp949, &tmp950, &tmp951, &tmp952, &tmp953, &tmp954, &tmp955, &tmp956, &tmp957, &tmp958, &tmp959, &tmp960, &tmp961);
5126 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 313);
5127 112 : compiler::TNode<IntPtrT> tmp962;
5128 112 : USE(tmp962);
5129 112 : tmp962 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATintptr17ATconstexpr_int31(0));
5130 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 274);
5131 112 : ca_.Goto(&block9, tmp936, tmp937, tmp938, tmp939, tmp940, tmp941, tmp942, tmp943, tmp944, tmp945, tmp962, tmp947, tmp948, tmp949, tmp950, tmp951, tmp952);
5132 : }
5133 :
5134 112 : if (block8.is_used()) {
5135 112 : compiler::TNode<Context> tmp963;
5136 112 : compiler::TNode<JSReceiver> tmp964;
5137 112 : compiler::TNode<String> tmp965;
5138 112 : compiler::TNode<Number> tmp966;
5139 112 : compiler::TNode<Object> tmp967;
5140 112 : compiler::TNode<Object> tmp968;
5141 112 : compiler::TNode<BuiltinPtr> tmp969;
5142 112 : compiler::TNode<Map> tmp970;
5143 112 : compiler::TNode<UintPtrT> tmp971;
5144 112 : compiler::TNode<IntPtrT> tmp972;
5145 112 : compiler::TNode<IntPtrT> tmp973;
5146 112 : compiler::TNode<BuiltinPtr> tmp974;
5147 112 : compiler::TNode<FixedArray> tmp975;
5148 112 : compiler::TNode<IntPtrT> tmp976;
5149 112 : compiler::TNode<IntPtrT> tmp977;
5150 112 : compiler::TNode<BoolT> tmp978;
5151 112 : compiler::TNode<UintPtrT> tmp979;
5152 112 : ca_.Bind(&block8, &tmp963, &tmp964, &tmp965, &tmp966, &tmp967, &tmp968, &tmp969, &tmp970, &tmp971, &tmp972, &tmp973, &tmp974, &tmp975, &tmp976, &tmp977, &tmp978, &tmp979);
5153 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 317);
5154 112 : compiler::TNode<BoolT> tmp980;
5155 112 : USE(tmp980);
5156 112 : tmp980 = ca_.UncheckedCast<BoolT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr6ATbool16ATconstexpr_bool(true));
5157 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 181);
5158 112 : compiler::TNode<IntPtrT> tmp981;
5159 112 : USE(tmp981);
5160 112 : tmp981 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATintptr17ATconstexpr_int31(0));
5161 112 : compiler::TNode<BoolT> tmp982;
5162 112 : USE(tmp982);
5163 112 : tmp982 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).WordEqual(compiler::TNode<IntPtrT>{tmp973}, compiler::TNode<IntPtrT>{tmp981}));
5164 112 : ca_.Branch(tmp982, &block43, &block45, tmp963, tmp964, tmp965, tmp966, tmp967, tmp968, tmp969, tmp970, tmp971, tmp972, tmp973, tmp974, tmp975, tmp976, tmp977, tmp978, tmp979, tmp973, tmp972, tmp963, tmp973, tmp972, tmp980);
5165 : }
5166 :
5167 112 : if (block45.is_used()) {
5168 112 : compiler::TNode<Context> tmp983;
5169 112 : compiler::TNode<JSReceiver> tmp984;
5170 112 : compiler::TNode<String> tmp985;
5171 112 : compiler::TNode<Number> tmp986;
5172 112 : compiler::TNode<Object> tmp987;
5173 112 : compiler::TNode<Object> tmp988;
5174 112 : compiler::TNode<BuiltinPtr> tmp989;
5175 112 : compiler::TNode<Map> tmp990;
5176 112 : compiler::TNode<UintPtrT> tmp991;
5177 112 : compiler::TNode<IntPtrT> tmp992;
5178 112 : compiler::TNode<IntPtrT> tmp993;
5179 112 : compiler::TNode<BuiltinPtr> tmp994;
5180 112 : compiler::TNode<FixedArray> tmp995;
5181 112 : compiler::TNode<IntPtrT> tmp996;
5182 112 : compiler::TNode<IntPtrT> tmp997;
5183 112 : compiler::TNode<BoolT> tmp998;
5184 112 : compiler::TNode<UintPtrT> tmp999;
5185 112 : compiler::TNode<IntPtrT> tmp1000;
5186 112 : compiler::TNode<IntPtrT> tmp1001;
5187 112 : compiler::TNode<Context> tmp1002;
5188 112 : compiler::TNode<IntPtrT> tmp1003;
5189 112 : compiler::TNode<IntPtrT> tmp1004;
5190 112 : compiler::TNode<BoolT> tmp1005;
5191 112 : ca_.Bind(&block45, &tmp983, &tmp984, &tmp985, &tmp986, &tmp987, &tmp988, &tmp989, &tmp990, &tmp991, &tmp992, &tmp993, &tmp994, &tmp995, &tmp996, &tmp997, &tmp998, &tmp999, &tmp1000, &tmp1001, &tmp1002, &tmp1003, &tmp1004, &tmp1005);
5192 112 : compiler::TNode<IntPtrT> tmp1006;
5193 112 : USE(tmp1006);
5194 112 : tmp1006 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATintptr17ATconstexpr_int31(0));
5195 112 : compiler::TNode<BoolT> tmp1007;
5196 112 : USE(tmp1007);
5197 112 : tmp1007 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).WordEqual(compiler::TNode<IntPtrT>{tmp1004}, compiler::TNode<IntPtrT>{tmp1006}));
5198 112 : ca_.Branch(tmp1007, &block43, &block44, tmp983, tmp984, tmp985, tmp986, tmp987, tmp988, tmp989, tmp990, tmp991, tmp992, tmp993, tmp994, tmp995, tmp996, tmp997, tmp998, tmp999, tmp1000, tmp1001, tmp1002, tmp1003, tmp1004, tmp1005);
5199 : }
5200 :
5201 112 : if (block43.is_used()) {
5202 112 : compiler::TNode<Context> tmp1008;
5203 112 : compiler::TNode<JSReceiver> tmp1009;
5204 112 : compiler::TNode<String> tmp1010;
5205 112 : compiler::TNode<Number> tmp1011;
5206 112 : compiler::TNode<Object> tmp1012;
5207 112 : compiler::TNode<Object> tmp1013;
5208 112 : compiler::TNode<BuiltinPtr> tmp1014;
5209 112 : compiler::TNode<Map> tmp1015;
5210 112 : compiler::TNode<UintPtrT> tmp1016;
5211 112 : compiler::TNode<IntPtrT> tmp1017;
5212 112 : compiler::TNode<IntPtrT> tmp1018;
5213 112 : compiler::TNode<BuiltinPtr> tmp1019;
5214 112 : compiler::TNode<FixedArray> tmp1020;
5215 112 : compiler::TNode<IntPtrT> tmp1021;
5216 112 : compiler::TNode<IntPtrT> tmp1022;
5217 112 : compiler::TNode<BoolT> tmp1023;
5218 112 : compiler::TNode<UintPtrT> tmp1024;
5219 112 : compiler::TNode<IntPtrT> tmp1025;
5220 112 : compiler::TNode<IntPtrT> tmp1026;
5221 112 : compiler::TNode<Context> tmp1027;
5222 112 : compiler::TNode<IntPtrT> tmp1028;
5223 112 : compiler::TNode<IntPtrT> tmp1029;
5224 112 : compiler::TNode<BoolT> tmp1030;
5225 112 : ca_.Bind(&block43, &tmp1008, &tmp1009, &tmp1010, &tmp1011, &tmp1012, &tmp1013, &tmp1014, &tmp1015, &tmp1016, &tmp1017, &tmp1018, &tmp1019, &tmp1020, &tmp1021, &tmp1022, &tmp1023, &tmp1024, &tmp1025, &tmp1026, &tmp1027, &tmp1028, &tmp1029, &tmp1030);
5226 112 : ca_.Goto(&block42, tmp1008, tmp1009, tmp1010, tmp1011, tmp1012, tmp1013, tmp1014, tmp1015, tmp1016, tmp1017, tmp1018, tmp1019, tmp1020, tmp1021, tmp1022, tmp1023, tmp1024, tmp1025, tmp1026, tmp1027, tmp1028, tmp1029, tmp1030);
5227 : }
5228 :
5229 112 : if (block44.is_used()) {
5230 112 : compiler::TNode<Context> tmp1031;
5231 112 : compiler::TNode<JSReceiver> tmp1032;
5232 112 : compiler::TNode<String> tmp1033;
5233 112 : compiler::TNode<Number> tmp1034;
5234 112 : compiler::TNode<Object> tmp1035;
5235 112 : compiler::TNode<Object> tmp1036;
5236 112 : compiler::TNode<BuiltinPtr> tmp1037;
5237 112 : compiler::TNode<Map> tmp1038;
5238 112 : compiler::TNode<UintPtrT> tmp1039;
5239 112 : compiler::TNode<IntPtrT> tmp1040;
5240 112 : compiler::TNode<IntPtrT> tmp1041;
5241 112 : compiler::TNode<BuiltinPtr> tmp1042;
5242 112 : compiler::TNode<FixedArray> tmp1043;
5243 112 : compiler::TNode<IntPtrT> tmp1044;
5244 112 : compiler::TNode<IntPtrT> tmp1045;
5245 112 : compiler::TNode<BoolT> tmp1046;
5246 112 : compiler::TNode<UintPtrT> tmp1047;
5247 112 : compiler::TNode<IntPtrT> tmp1048;
5248 112 : compiler::TNode<IntPtrT> tmp1049;
5249 112 : compiler::TNode<Context> tmp1050;
5250 112 : compiler::TNode<IntPtrT> tmp1051;
5251 112 : compiler::TNode<IntPtrT> tmp1052;
5252 112 : compiler::TNode<BoolT> tmp1053;
5253 112 : ca_.Bind(&block44, &tmp1031, &tmp1032, &tmp1033, &tmp1034, &tmp1035, &tmp1036, &tmp1037, &tmp1038, &tmp1039, &tmp1040, &tmp1041, &tmp1042, &tmp1043, &tmp1044, &tmp1045, &tmp1046, &tmp1047, &tmp1048, &tmp1049, &tmp1050, &tmp1051, &tmp1052, &tmp1053);
5254 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 183);
5255 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 184);
5256 112 : compiler::TNode<IntPtrT> tmp1054;
5257 112 : USE(tmp1054);
5258 112 : tmp1054 = ca_.UncheckedCast<IntPtrT>(CodeStubAssembler(state_).IntPtrMul(compiler::TNode<IntPtrT>{tmp1052}, compiler::TNode<IntPtrT>{tmp1051}));
5259 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 187);
5260 112 : compiler::TNode<IntPtrT> tmp1055;
5261 112 : USE(tmp1055);
5262 112 : tmp1055 = ca_.UncheckedCast<IntPtrT>(CodeStubAssembler(state_).IntPtrDiv(compiler::TNode<IntPtrT>{tmp1054}, compiler::TNode<IntPtrT>{tmp1052}));
5263 112 : compiler::TNode<BoolT> tmp1056;
5264 112 : USE(tmp1056);
5265 112 : tmp1056 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).WordNotEqual(compiler::TNode<IntPtrT>{tmp1055}, compiler::TNode<IntPtrT>{tmp1051}));
5266 112 : ca_.Branch(tmp1056, &block46, &block47, tmp1031, tmp1032, tmp1033, tmp1034, tmp1035, tmp1036, tmp1037, tmp1038, tmp1039, tmp1040, tmp1041, tmp1042, tmp1043, tmp1044, tmp1045, tmp1046, tmp1047, tmp1048, tmp1049, tmp1050, tmp1051, tmp1052, tmp1053, tmp1051, tmp1054);
5267 : }
5268 :
5269 112 : if (block46.is_used()) {
5270 112 : compiler::TNode<Context> tmp1057;
5271 112 : compiler::TNode<JSReceiver> tmp1058;
5272 112 : compiler::TNode<String> tmp1059;
5273 112 : compiler::TNode<Number> tmp1060;
5274 112 : compiler::TNode<Object> tmp1061;
5275 112 : compiler::TNode<Object> tmp1062;
5276 112 : compiler::TNode<BuiltinPtr> tmp1063;
5277 112 : compiler::TNode<Map> tmp1064;
5278 112 : compiler::TNode<UintPtrT> tmp1065;
5279 112 : compiler::TNode<IntPtrT> tmp1066;
5280 112 : compiler::TNode<IntPtrT> tmp1067;
5281 112 : compiler::TNode<BuiltinPtr> tmp1068;
5282 112 : compiler::TNode<FixedArray> tmp1069;
5283 112 : compiler::TNode<IntPtrT> tmp1070;
5284 112 : compiler::TNode<IntPtrT> tmp1071;
5285 112 : compiler::TNode<BoolT> tmp1072;
5286 112 : compiler::TNode<UintPtrT> tmp1073;
5287 112 : compiler::TNode<IntPtrT> tmp1074;
5288 112 : compiler::TNode<IntPtrT> tmp1075;
5289 112 : compiler::TNode<Context> tmp1076;
5290 112 : compiler::TNode<IntPtrT> tmp1077;
5291 112 : compiler::TNode<IntPtrT> tmp1078;
5292 112 : compiler::TNode<BoolT> tmp1079;
5293 112 : compiler::TNode<IntPtrT> tmp1080;
5294 112 : compiler::TNode<IntPtrT> tmp1081;
5295 112 : ca_.Bind(&block46, &tmp1057, &tmp1058, &tmp1059, &tmp1060, &tmp1061, &tmp1062, &tmp1063, &tmp1064, &tmp1065, &tmp1066, &tmp1067, &tmp1068, &tmp1069, &tmp1070, &tmp1071, &tmp1072, &tmp1073, &tmp1074, &tmp1075, &tmp1076, &tmp1077, &tmp1078, &tmp1079, &tmp1080, &tmp1081);
5296 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 188);
5297 112 : CodeStubAssembler(state_).CallRuntime(Runtime::kThrowInvalidStringLength, tmp1076);
5298 112 : CodeStubAssembler(state_).Unreachable();
5299 : }
5300 :
5301 112 : if (block47.is_used()) {
5302 112 : compiler::TNode<Context> tmp1083;
5303 112 : compiler::TNode<JSReceiver> tmp1084;
5304 112 : compiler::TNode<String> tmp1085;
5305 112 : compiler::TNode<Number> tmp1086;
5306 112 : compiler::TNode<Object> tmp1087;
5307 112 : compiler::TNode<Object> tmp1088;
5308 112 : compiler::TNode<BuiltinPtr> tmp1089;
5309 112 : compiler::TNode<Map> tmp1090;
5310 112 : compiler::TNode<UintPtrT> tmp1091;
5311 112 : compiler::TNode<IntPtrT> tmp1092;
5312 112 : compiler::TNode<IntPtrT> tmp1093;
5313 112 : compiler::TNode<BuiltinPtr> tmp1094;
5314 112 : compiler::TNode<FixedArray> tmp1095;
5315 112 : compiler::TNode<IntPtrT> tmp1096;
5316 112 : compiler::TNode<IntPtrT> tmp1097;
5317 112 : compiler::TNode<BoolT> tmp1098;
5318 112 : compiler::TNode<UintPtrT> tmp1099;
5319 112 : compiler::TNode<IntPtrT> tmp1100;
5320 112 : compiler::TNode<IntPtrT> tmp1101;
5321 112 : compiler::TNode<Context> tmp1102;
5322 112 : compiler::TNode<IntPtrT> tmp1103;
5323 112 : compiler::TNode<IntPtrT> tmp1104;
5324 112 : compiler::TNode<BoolT> tmp1105;
5325 112 : compiler::TNode<IntPtrT> tmp1106;
5326 112 : compiler::TNode<IntPtrT> tmp1107;
5327 112 : ca_.Bind(&block47, &tmp1083, &tmp1084, &tmp1085, &tmp1086, &tmp1087, &tmp1088, &tmp1089, &tmp1090, &tmp1091, &tmp1092, &tmp1093, &tmp1094, &tmp1095, &tmp1096, &tmp1097, &tmp1098, &tmp1099, &tmp1100, &tmp1101, &tmp1102, &tmp1103, &tmp1104, &tmp1105, &tmp1106, &tmp1107);
5328 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 191);
5329 112 : compiler::TNode<IntPtrT> tmp1108;
5330 112 : USE(tmp1108);
5331 112 : tmp1108 = ca_.UncheckedCast<IntPtrT>(ArrayJoinBuiltinsFromDSLAssembler(state_).AddStringLength(compiler::TNode<Context>{tmp1102}, compiler::TNode<IntPtrT>{tmp1097}, compiler::TNode<IntPtrT>{tmp1107}));
5332 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 192);
5333 112 : ca_.Branch(tmp1105, &block48, &block49, tmp1083, tmp1084, tmp1085, tmp1086, tmp1087, tmp1088, tmp1089, tmp1090, tmp1091, tmp1092, tmp1093, tmp1094, tmp1095, tmp1096, tmp1108, tmp1098, tmp1099, tmp1100, tmp1101, tmp1102, tmp1103, tmp1104, tmp1105, tmp1106, tmp1107);
5334 : }
5335 :
5336 112 : if (block48.is_used()) {
5337 112 : compiler::TNode<Context> tmp1109;
5338 112 : compiler::TNode<JSReceiver> tmp1110;
5339 112 : compiler::TNode<String> tmp1111;
5340 112 : compiler::TNode<Number> tmp1112;
5341 112 : compiler::TNode<Object> tmp1113;
5342 112 : compiler::TNode<Object> tmp1114;
5343 112 : compiler::TNode<BuiltinPtr> tmp1115;
5344 112 : compiler::TNode<Map> tmp1116;
5345 112 : compiler::TNode<UintPtrT> tmp1117;
5346 112 : compiler::TNode<IntPtrT> tmp1118;
5347 112 : compiler::TNode<IntPtrT> tmp1119;
5348 112 : compiler::TNode<BuiltinPtr> tmp1120;
5349 112 : compiler::TNode<FixedArray> tmp1121;
5350 112 : compiler::TNode<IntPtrT> tmp1122;
5351 112 : compiler::TNode<IntPtrT> tmp1123;
5352 112 : compiler::TNode<BoolT> tmp1124;
5353 112 : compiler::TNode<UintPtrT> tmp1125;
5354 112 : compiler::TNode<IntPtrT> tmp1126;
5355 112 : compiler::TNode<IntPtrT> tmp1127;
5356 112 : compiler::TNode<Context> tmp1128;
5357 112 : compiler::TNode<IntPtrT> tmp1129;
5358 112 : compiler::TNode<IntPtrT> tmp1130;
5359 112 : compiler::TNode<BoolT> tmp1131;
5360 112 : compiler::TNode<IntPtrT> tmp1132;
5361 112 : compiler::TNode<IntPtrT> tmp1133;
5362 112 : ca_.Bind(&block48, &tmp1109, &tmp1110, &tmp1111, &tmp1112, &tmp1113, &tmp1114, &tmp1115, &tmp1116, &tmp1117, &tmp1118, &tmp1119, &tmp1120, &tmp1121, &tmp1122, &tmp1123, &tmp1124, &tmp1125, &tmp1126, &tmp1127, &tmp1128, &tmp1129, &tmp1130, &tmp1131, &tmp1132, &tmp1133);
5363 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 194);
5364 112 : compiler::TNode<IntPtrT> tmp1134;
5365 112 : USE(tmp1134);
5366 112 : tmp1134 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATintptr17ATconstexpr_int31(1));
5367 112 : compiler::TNode<IntPtrT> tmp1135;
5368 112 : USE(tmp1135);
5369 112 : tmp1135 = ca_.UncheckedCast<IntPtrT>(CodeStubAssembler(state_).IntPtrAdd(compiler::TNode<IntPtrT>{tmp1122}, compiler::TNode<IntPtrT>{tmp1134}));
5370 112 : compiler::TNode<Smi> tmp1136;
5371 112 : USE(tmp1136);
5372 112 : tmp1136 = ca_.UncheckedCast<Smi>(BaseBuiltinsFromDSLAssembler(state_).Convert5ATSmi8ATintptr(compiler::TNode<IntPtrT>{tmp1132}));
5373 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 193);
5374 112 : compiler::TNode<FixedArray> tmp1137;
5375 112 : USE(tmp1137);
5376 112 : tmp1137 = ca_.UncheckedCast<FixedArray>(ArrayJoinBuiltinsFromDSLAssembler(state_).StoreAndGrowFixedArray5ATSmi(compiler::TNode<FixedArray>{tmp1121}, compiler::TNode<IntPtrT>{tmp1122}, compiler::TNode<Smi>{tmp1136}));
5377 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 192);
5378 112 : ca_.Goto(&block49, tmp1109, tmp1110, tmp1111, tmp1112, tmp1113, tmp1114, tmp1115, tmp1116, tmp1117, tmp1118, tmp1119, tmp1120, tmp1137, tmp1135, tmp1123, tmp1124, tmp1125, tmp1126, tmp1127, tmp1128, tmp1129, tmp1130, tmp1131, tmp1132, tmp1133);
5379 : }
5380 :
5381 112 : if (block49.is_used()) {
5382 112 : compiler::TNode<Context> tmp1138;
5383 112 : compiler::TNode<JSReceiver> tmp1139;
5384 112 : compiler::TNode<String> tmp1140;
5385 112 : compiler::TNode<Number> tmp1141;
5386 112 : compiler::TNode<Object> tmp1142;
5387 112 : compiler::TNode<Object> tmp1143;
5388 112 : compiler::TNode<BuiltinPtr> tmp1144;
5389 112 : compiler::TNode<Map> tmp1145;
5390 112 : compiler::TNode<UintPtrT> tmp1146;
5391 112 : compiler::TNode<IntPtrT> tmp1147;
5392 112 : compiler::TNode<IntPtrT> tmp1148;
5393 112 : compiler::TNode<BuiltinPtr> tmp1149;
5394 112 : compiler::TNode<FixedArray> tmp1150;
5395 112 : compiler::TNode<IntPtrT> tmp1151;
5396 112 : compiler::TNode<IntPtrT> tmp1152;
5397 112 : compiler::TNode<BoolT> tmp1153;
5398 112 : compiler::TNode<UintPtrT> tmp1154;
5399 112 : compiler::TNode<IntPtrT> tmp1155;
5400 112 : compiler::TNode<IntPtrT> tmp1156;
5401 112 : compiler::TNode<Context> tmp1157;
5402 112 : compiler::TNode<IntPtrT> tmp1158;
5403 112 : compiler::TNode<IntPtrT> tmp1159;
5404 112 : compiler::TNode<BoolT> tmp1160;
5405 112 : compiler::TNode<IntPtrT> tmp1161;
5406 112 : compiler::TNode<IntPtrT> tmp1162;
5407 112 : ca_.Bind(&block49, &tmp1138, &tmp1139, &tmp1140, &tmp1141, &tmp1142, &tmp1143, &tmp1144, &tmp1145, &tmp1146, &tmp1147, &tmp1148, &tmp1149, &tmp1150, &tmp1151, &tmp1152, &tmp1153, &tmp1154, &tmp1155, &tmp1156, &tmp1157, &tmp1158, &tmp1159, &tmp1160, &tmp1161, &tmp1162);
5408 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 180);
5409 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 317);
5410 112 : ca_.Goto(&block42, tmp1138, tmp1139, tmp1140, tmp1141, tmp1142, tmp1143, tmp1144, tmp1145, tmp1146, tmp1147, tmp1148, tmp1149, tmp1150, tmp1151, tmp1152, tmp1153, tmp1154, tmp1155, tmp1156, tmp1157, tmp1158, tmp1159, tmp1160);
5411 : }
5412 :
5413 112 : if (block42.is_used()) {
5414 112 : compiler::TNode<Context> tmp1163;
5415 112 : compiler::TNode<JSReceiver> tmp1164;
5416 112 : compiler::TNode<String> tmp1165;
5417 112 : compiler::TNode<Number> tmp1166;
5418 112 : compiler::TNode<Object> tmp1167;
5419 112 : compiler::TNode<Object> tmp1168;
5420 112 : compiler::TNode<BuiltinPtr> tmp1169;
5421 112 : compiler::TNode<Map> tmp1170;
5422 112 : compiler::TNode<UintPtrT> tmp1171;
5423 112 : compiler::TNode<IntPtrT> tmp1172;
5424 112 : compiler::TNode<IntPtrT> tmp1173;
5425 112 : compiler::TNode<BuiltinPtr> tmp1174;
5426 112 : compiler::TNode<FixedArray> tmp1175;
5427 112 : compiler::TNode<IntPtrT> tmp1176;
5428 112 : compiler::TNode<IntPtrT> tmp1177;
5429 112 : compiler::TNode<BoolT> tmp1178;
5430 112 : compiler::TNode<UintPtrT> tmp1179;
5431 112 : compiler::TNode<IntPtrT> tmp1180;
5432 112 : compiler::TNode<IntPtrT> tmp1181;
5433 112 : compiler::TNode<Context> tmp1182;
5434 112 : compiler::TNode<IntPtrT> tmp1183;
5435 112 : compiler::TNode<IntPtrT> tmp1184;
5436 112 : compiler::TNode<BoolT> tmp1185;
5437 112 : ca_.Bind(&block42, &tmp1163, &tmp1164, &tmp1165, &tmp1166, &tmp1167, &tmp1168, &tmp1169, &tmp1170, &tmp1171, &tmp1172, &tmp1173, &tmp1174, &tmp1175, &tmp1176, &tmp1177, &tmp1178, &tmp1179, &tmp1180, &tmp1181, &tmp1182, &tmp1183, &tmp1184, &tmp1185);
5438 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 320);
5439 112 : compiler::TNode<String> tmp1186;
5440 112 : USE(tmp1186);
5441 112 : tmp1186 = ca_.UncheckedCast<String>(ArrayJoinBuiltinsFromDSLAssembler(state_).BufferJoin(compiler::TNode<Context>{tmp1163}, ArrayJoinBuiltinsFromDSLAssembler::Buffer{compiler::TNode<FixedArray>{tmp1175}, compiler::TNode<IntPtrT>{tmp1176}, compiler::TNode<IntPtrT>{tmp1177}, compiler::TNode<BoolT>{tmp1178}}, compiler::TNode<String>{tmp1165}));
5442 112 : ca_.Goto(&block1, tmp1163, tmp1164, tmp1165, tmp1166, tmp1167, tmp1168, tmp1169, tmp1186);
5443 : }
5444 :
5445 112 : if (block1.is_used()) {
5446 112 : compiler::TNode<Context> tmp1187;
5447 112 : compiler::TNode<JSReceiver> tmp1188;
5448 112 : compiler::TNode<String> tmp1189;
5449 112 : compiler::TNode<Number> tmp1190;
5450 112 : compiler::TNode<Object> tmp1191;
5451 112 : compiler::TNode<Object> tmp1192;
5452 112 : compiler::TNode<BuiltinPtr> tmp1193;
5453 112 : compiler::TNode<String> tmp1194;
5454 112 : ca_.Bind(&block1, &tmp1187, &tmp1188, &tmp1189, &tmp1190, &tmp1191, &tmp1192, &tmp1193, &tmp1194);
5455 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 259);
5456 112 : ca_.Goto(&block50, tmp1187, tmp1188, tmp1189, tmp1190, tmp1191, tmp1192, tmp1193, tmp1194);
5457 : }
5458 :
5459 112 : compiler::TNode<Context> tmp1195;
5460 112 : compiler::TNode<JSReceiver> tmp1196;
5461 112 : compiler::TNode<String> tmp1197;
5462 112 : compiler::TNode<Number> tmp1198;
5463 112 : compiler::TNode<Object> tmp1199;
5464 112 : compiler::TNode<Object> tmp1200;
5465 112 : compiler::TNode<BuiltinPtr> tmp1201;
5466 112 : compiler::TNode<String> tmp1202;
5467 112 : ca_.Bind(&block50, &tmp1195, &tmp1196, &tmp1197, &tmp1198, &tmp1199, &tmp1200, &tmp1201, &tmp1202);
5468 224 : return compiler::TNode<String>{tmp1202};
5469 : }
5470 :
5471 392 : TF_BUILTIN(LoadJoinTypedElement17ATFixedInt32Array, CodeStubAssembler) {
5472 56 : compiler::CodeAssemblerState* state_ = state(); compiler::CodeAssembler ca_(state());
5473 56 : TNode<Context> parameter0 = UncheckedCast<Context>(Parameter(Descriptor::kContext));
5474 56 : USE(parameter0);
5475 56 : compiler::TNode<JSReceiver> parameter1 = UncheckedCast<JSReceiver>(Parameter(Descriptor::kReceiver));
5476 56 : USE(parameter1);
5477 56 : compiler::TNode<Number> parameter2 = UncheckedCast<Number>(Parameter(Descriptor::kK));
5478 56 : USE(parameter2);
5479 112 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
5480 56 : ca_.Goto(&block0, parameter0, parameter1, parameter2);
5481 :
5482 56 : if (block0.is_used()) {
5483 56 : compiler::TNode<Context> tmp0;
5484 56 : compiler::TNode<JSReceiver> tmp1;
5485 56 : compiler::TNode<Number> tmp2;
5486 56 : ca_.Bind(&block0, &tmp0, &tmp1, &tmp2);
5487 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 55);
5488 56 : compiler::TNode<JSTypedArray> tmp3;
5489 56 : USE(tmp3);
5490 56 : tmp3 = ca_.UncheckedCast<JSTypedArray>(BaseBuiltinsFromDSLAssembler(state_).UnsafeCast12JSTypedArray(compiler::TNode<Context>{tmp0}, compiler::TNode<Object>{tmp1}));
5491 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 58);
5492 56 : compiler::TNode<RawPtrT> tmp4;
5493 56 : USE(tmp4);
5494 56 : tmp4 = ca_.UncheckedCast<RawPtrT>(TypedArrayBuiltinsAssembler(state_).LoadDataPtr(compiler::TNode<JSTypedArray>{tmp3}));
5495 56 : compiler::TNode<Smi> tmp5;
5496 56 : USE(tmp5);
5497 56 : tmp5 = ca_.UncheckedCast<Smi>(BaseBuiltinsFromDSLAssembler(state_).UnsafeCast5ATSmi(compiler::TNode<Context>{tmp0}, compiler::TNode<Object>{tmp2}));
5498 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 57);
5499 56 : compiler::TNode<Object> tmp6;
5500 56 : USE(tmp6);
5501 56 : tmp6 = ca_.UncheckedCast<Object>(CodeStubAssembler(state_).LoadFixedTypedArrayElementAsTagged(compiler::TNode<RawPtrT>{tmp4}, compiler::TNode<Smi>{tmp5}, (TypedArrayBuiltinsFromDSLAssembler(state_).KindForArrayType17ATFixedInt32Array()), CodeStubAssembler::SMI_PARAMETERS));
5502 56 : CodeStubAssembler(state_).Return(tmp6);
5503 56 : }
5504 56 : }
5505 :
5506 392 : TF_BUILTIN(LoadJoinTypedElement19ATFixedFloat32Array, CodeStubAssembler) {
5507 56 : compiler::CodeAssemblerState* state_ = state(); compiler::CodeAssembler ca_(state());
5508 56 : TNode<Context> parameter0 = UncheckedCast<Context>(Parameter(Descriptor::kContext));
5509 56 : USE(parameter0);
5510 56 : compiler::TNode<JSReceiver> parameter1 = UncheckedCast<JSReceiver>(Parameter(Descriptor::kReceiver));
5511 56 : USE(parameter1);
5512 56 : compiler::TNode<Number> parameter2 = UncheckedCast<Number>(Parameter(Descriptor::kK));
5513 56 : USE(parameter2);
5514 112 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
5515 56 : ca_.Goto(&block0, parameter0, parameter1, parameter2);
5516 :
5517 56 : if (block0.is_used()) {
5518 56 : compiler::TNode<Context> tmp0;
5519 56 : compiler::TNode<JSReceiver> tmp1;
5520 56 : compiler::TNode<Number> tmp2;
5521 56 : ca_.Bind(&block0, &tmp0, &tmp1, &tmp2);
5522 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 55);
5523 56 : compiler::TNode<JSTypedArray> tmp3;
5524 56 : USE(tmp3);
5525 56 : tmp3 = ca_.UncheckedCast<JSTypedArray>(BaseBuiltinsFromDSLAssembler(state_).UnsafeCast12JSTypedArray(compiler::TNode<Context>{tmp0}, compiler::TNode<Object>{tmp1}));
5526 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 58);
5527 56 : compiler::TNode<RawPtrT> tmp4;
5528 56 : USE(tmp4);
5529 56 : tmp4 = ca_.UncheckedCast<RawPtrT>(TypedArrayBuiltinsAssembler(state_).LoadDataPtr(compiler::TNode<JSTypedArray>{tmp3}));
5530 56 : compiler::TNode<Smi> tmp5;
5531 56 : USE(tmp5);
5532 56 : tmp5 = ca_.UncheckedCast<Smi>(BaseBuiltinsFromDSLAssembler(state_).UnsafeCast5ATSmi(compiler::TNode<Context>{tmp0}, compiler::TNode<Object>{tmp2}));
5533 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 57);
5534 56 : compiler::TNode<Object> tmp6;
5535 56 : USE(tmp6);
5536 56 : tmp6 = ca_.UncheckedCast<Object>(CodeStubAssembler(state_).LoadFixedTypedArrayElementAsTagged(compiler::TNode<RawPtrT>{tmp4}, compiler::TNode<Smi>{tmp5}, (TypedArrayBuiltinsFromDSLAssembler(state_).KindForArrayType19ATFixedFloat32Array()), CodeStubAssembler::SMI_PARAMETERS));
5537 56 : CodeStubAssembler(state_).Return(tmp6);
5538 56 : }
5539 56 : }
5540 :
5541 392 : TF_BUILTIN(LoadJoinTypedElement19ATFixedFloat64Array, CodeStubAssembler) {
5542 56 : compiler::CodeAssemblerState* state_ = state(); compiler::CodeAssembler ca_(state());
5543 56 : TNode<Context> parameter0 = UncheckedCast<Context>(Parameter(Descriptor::kContext));
5544 56 : USE(parameter0);
5545 56 : compiler::TNode<JSReceiver> parameter1 = UncheckedCast<JSReceiver>(Parameter(Descriptor::kReceiver));
5546 56 : USE(parameter1);
5547 56 : compiler::TNode<Number> parameter2 = UncheckedCast<Number>(Parameter(Descriptor::kK));
5548 56 : USE(parameter2);
5549 112 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
5550 56 : ca_.Goto(&block0, parameter0, parameter1, parameter2);
5551 :
5552 56 : if (block0.is_used()) {
5553 56 : compiler::TNode<Context> tmp0;
5554 56 : compiler::TNode<JSReceiver> tmp1;
5555 56 : compiler::TNode<Number> tmp2;
5556 56 : ca_.Bind(&block0, &tmp0, &tmp1, &tmp2);
5557 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 55);
5558 56 : compiler::TNode<JSTypedArray> tmp3;
5559 56 : USE(tmp3);
5560 56 : tmp3 = ca_.UncheckedCast<JSTypedArray>(BaseBuiltinsFromDSLAssembler(state_).UnsafeCast12JSTypedArray(compiler::TNode<Context>{tmp0}, compiler::TNode<Object>{tmp1}));
5561 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 58);
5562 56 : compiler::TNode<RawPtrT> tmp4;
5563 56 : USE(tmp4);
5564 56 : tmp4 = ca_.UncheckedCast<RawPtrT>(TypedArrayBuiltinsAssembler(state_).LoadDataPtr(compiler::TNode<JSTypedArray>{tmp3}));
5565 56 : compiler::TNode<Smi> tmp5;
5566 56 : USE(tmp5);
5567 56 : tmp5 = ca_.UncheckedCast<Smi>(BaseBuiltinsFromDSLAssembler(state_).UnsafeCast5ATSmi(compiler::TNode<Context>{tmp0}, compiler::TNode<Object>{tmp2}));
5568 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 57);
5569 56 : compiler::TNode<Object> tmp6;
5570 56 : USE(tmp6);
5571 56 : tmp6 = ca_.UncheckedCast<Object>(CodeStubAssembler(state_).LoadFixedTypedArrayElementAsTagged(compiler::TNode<RawPtrT>{tmp4}, compiler::TNode<Smi>{tmp5}, (TypedArrayBuiltinsFromDSLAssembler(state_).KindForArrayType19ATFixedFloat64Array()), CodeStubAssembler::SMI_PARAMETERS));
5572 56 : CodeStubAssembler(state_).Return(tmp6);
5573 56 : }
5574 56 : }
5575 :
5576 392 : TF_BUILTIN(LoadJoinTypedElement24ATFixedUint8ClampedArray, CodeStubAssembler) {
5577 56 : compiler::CodeAssemblerState* state_ = state(); compiler::CodeAssembler ca_(state());
5578 56 : TNode<Context> parameter0 = UncheckedCast<Context>(Parameter(Descriptor::kContext));
5579 56 : USE(parameter0);
5580 56 : compiler::TNode<JSReceiver> parameter1 = UncheckedCast<JSReceiver>(Parameter(Descriptor::kReceiver));
5581 56 : USE(parameter1);
5582 56 : compiler::TNode<Number> parameter2 = UncheckedCast<Number>(Parameter(Descriptor::kK));
5583 56 : USE(parameter2);
5584 112 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
5585 56 : ca_.Goto(&block0, parameter0, parameter1, parameter2);
5586 :
5587 56 : if (block0.is_used()) {
5588 56 : compiler::TNode<Context> tmp0;
5589 56 : compiler::TNode<JSReceiver> tmp1;
5590 56 : compiler::TNode<Number> tmp2;
5591 56 : ca_.Bind(&block0, &tmp0, &tmp1, &tmp2);
5592 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 55);
5593 56 : compiler::TNode<JSTypedArray> tmp3;
5594 56 : USE(tmp3);
5595 56 : tmp3 = ca_.UncheckedCast<JSTypedArray>(BaseBuiltinsFromDSLAssembler(state_).UnsafeCast12JSTypedArray(compiler::TNode<Context>{tmp0}, compiler::TNode<Object>{tmp1}));
5596 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 58);
5597 56 : compiler::TNode<RawPtrT> tmp4;
5598 56 : USE(tmp4);
5599 56 : tmp4 = ca_.UncheckedCast<RawPtrT>(TypedArrayBuiltinsAssembler(state_).LoadDataPtr(compiler::TNode<JSTypedArray>{tmp3}));
5600 56 : compiler::TNode<Smi> tmp5;
5601 56 : USE(tmp5);
5602 56 : tmp5 = ca_.UncheckedCast<Smi>(BaseBuiltinsFromDSLAssembler(state_).UnsafeCast5ATSmi(compiler::TNode<Context>{tmp0}, compiler::TNode<Object>{tmp2}));
5603 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 57);
5604 56 : compiler::TNode<Object> tmp6;
5605 56 : USE(tmp6);
5606 56 : tmp6 = ca_.UncheckedCast<Object>(CodeStubAssembler(state_).LoadFixedTypedArrayElementAsTagged(compiler::TNode<RawPtrT>{tmp4}, compiler::TNode<Smi>{tmp5}, (TypedArrayBuiltinsFromDSLAssembler(state_).KindForArrayType24ATFixedUint8ClampedArray()), CodeStubAssembler::SMI_PARAMETERS));
5607 56 : CodeStubAssembler(state_).Return(tmp6);
5608 56 : }
5609 56 : }
5610 :
5611 392 : TF_BUILTIN(LoadJoinTypedElement21ATFixedBigUint64Array, CodeStubAssembler) {
5612 56 : compiler::CodeAssemblerState* state_ = state(); compiler::CodeAssembler ca_(state());
5613 56 : TNode<Context> parameter0 = UncheckedCast<Context>(Parameter(Descriptor::kContext));
5614 56 : USE(parameter0);
5615 56 : compiler::TNode<JSReceiver> parameter1 = UncheckedCast<JSReceiver>(Parameter(Descriptor::kReceiver));
5616 56 : USE(parameter1);
5617 56 : compiler::TNode<Number> parameter2 = UncheckedCast<Number>(Parameter(Descriptor::kK));
5618 56 : USE(parameter2);
5619 112 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
5620 56 : ca_.Goto(&block0, parameter0, parameter1, parameter2);
5621 :
5622 56 : if (block0.is_used()) {
5623 56 : compiler::TNode<Context> tmp0;
5624 56 : compiler::TNode<JSReceiver> tmp1;
5625 56 : compiler::TNode<Number> tmp2;
5626 56 : ca_.Bind(&block0, &tmp0, &tmp1, &tmp2);
5627 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 55);
5628 56 : compiler::TNode<JSTypedArray> tmp3;
5629 56 : USE(tmp3);
5630 56 : tmp3 = ca_.UncheckedCast<JSTypedArray>(BaseBuiltinsFromDSLAssembler(state_).UnsafeCast12JSTypedArray(compiler::TNode<Context>{tmp0}, compiler::TNode<Object>{tmp1}));
5631 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 58);
5632 56 : compiler::TNode<RawPtrT> tmp4;
5633 56 : USE(tmp4);
5634 56 : tmp4 = ca_.UncheckedCast<RawPtrT>(TypedArrayBuiltinsAssembler(state_).LoadDataPtr(compiler::TNode<JSTypedArray>{tmp3}));
5635 56 : compiler::TNode<Smi> tmp5;
5636 56 : USE(tmp5);
5637 56 : tmp5 = ca_.UncheckedCast<Smi>(BaseBuiltinsFromDSLAssembler(state_).UnsafeCast5ATSmi(compiler::TNode<Context>{tmp0}, compiler::TNode<Object>{tmp2}));
5638 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 57);
5639 56 : compiler::TNode<Object> tmp6;
5640 56 : USE(tmp6);
5641 56 : tmp6 = ca_.UncheckedCast<Object>(CodeStubAssembler(state_).LoadFixedTypedArrayElementAsTagged(compiler::TNode<RawPtrT>{tmp4}, compiler::TNode<Smi>{tmp5}, (TypedArrayBuiltinsFromDSLAssembler(state_).KindForArrayType21ATFixedBigUint64Array()), CodeStubAssembler::SMI_PARAMETERS));
5642 56 : CodeStubAssembler(state_).Return(tmp6);
5643 56 : }
5644 56 : }
5645 :
5646 392 : TF_BUILTIN(LoadJoinTypedElement20ATFixedBigInt64Array, CodeStubAssembler) {
5647 56 : compiler::CodeAssemblerState* state_ = state(); compiler::CodeAssembler ca_(state());
5648 56 : TNode<Context> parameter0 = UncheckedCast<Context>(Parameter(Descriptor::kContext));
5649 56 : USE(parameter0);
5650 56 : compiler::TNode<JSReceiver> parameter1 = UncheckedCast<JSReceiver>(Parameter(Descriptor::kReceiver));
5651 56 : USE(parameter1);
5652 56 : compiler::TNode<Number> parameter2 = UncheckedCast<Number>(Parameter(Descriptor::kK));
5653 56 : USE(parameter2);
5654 112 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
5655 56 : ca_.Goto(&block0, parameter0, parameter1, parameter2);
5656 :
5657 56 : if (block0.is_used()) {
5658 56 : compiler::TNode<Context> tmp0;
5659 56 : compiler::TNode<JSReceiver> tmp1;
5660 56 : compiler::TNode<Number> tmp2;
5661 56 : ca_.Bind(&block0, &tmp0, &tmp1, &tmp2);
5662 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 55);
5663 56 : compiler::TNode<JSTypedArray> tmp3;
5664 56 : USE(tmp3);
5665 56 : tmp3 = ca_.UncheckedCast<JSTypedArray>(BaseBuiltinsFromDSLAssembler(state_).UnsafeCast12JSTypedArray(compiler::TNode<Context>{tmp0}, compiler::TNode<Object>{tmp1}));
5666 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 58);
5667 56 : compiler::TNode<RawPtrT> tmp4;
5668 56 : USE(tmp4);
5669 56 : tmp4 = ca_.UncheckedCast<RawPtrT>(TypedArrayBuiltinsAssembler(state_).LoadDataPtr(compiler::TNode<JSTypedArray>{tmp3}));
5670 56 : compiler::TNode<Smi> tmp5;
5671 56 : USE(tmp5);
5672 56 : tmp5 = ca_.UncheckedCast<Smi>(BaseBuiltinsFromDSLAssembler(state_).UnsafeCast5ATSmi(compiler::TNode<Context>{tmp0}, compiler::TNode<Object>{tmp2}));
5673 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 57);
5674 56 : compiler::TNode<Object> tmp6;
5675 56 : USE(tmp6);
5676 56 : tmp6 = ca_.UncheckedCast<Object>(CodeStubAssembler(state_).LoadFixedTypedArrayElementAsTagged(compiler::TNode<RawPtrT>{tmp4}, compiler::TNode<Smi>{tmp5}, (TypedArrayBuiltinsFromDSLAssembler(state_).KindForArrayType20ATFixedBigInt64Array()), CodeStubAssembler::SMI_PARAMETERS));
5677 56 : CodeStubAssembler(state_).Return(tmp6);
5678 56 : }
5679 56 : }
5680 :
5681 392 : TF_BUILTIN(LoadJoinTypedElement17ATFixedUint8Array, CodeStubAssembler) {
5682 56 : compiler::CodeAssemblerState* state_ = state(); compiler::CodeAssembler ca_(state());
5683 56 : TNode<Context> parameter0 = UncheckedCast<Context>(Parameter(Descriptor::kContext));
5684 56 : USE(parameter0);
5685 56 : compiler::TNode<JSReceiver> parameter1 = UncheckedCast<JSReceiver>(Parameter(Descriptor::kReceiver));
5686 56 : USE(parameter1);
5687 56 : compiler::TNode<Number> parameter2 = UncheckedCast<Number>(Parameter(Descriptor::kK));
5688 56 : USE(parameter2);
5689 112 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
5690 56 : ca_.Goto(&block0, parameter0, parameter1, parameter2);
5691 :
5692 56 : if (block0.is_used()) {
5693 56 : compiler::TNode<Context> tmp0;
5694 56 : compiler::TNode<JSReceiver> tmp1;
5695 56 : compiler::TNode<Number> tmp2;
5696 56 : ca_.Bind(&block0, &tmp0, &tmp1, &tmp2);
5697 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 55);
5698 56 : compiler::TNode<JSTypedArray> tmp3;
5699 56 : USE(tmp3);
5700 56 : tmp3 = ca_.UncheckedCast<JSTypedArray>(BaseBuiltinsFromDSLAssembler(state_).UnsafeCast12JSTypedArray(compiler::TNode<Context>{tmp0}, compiler::TNode<Object>{tmp1}));
5701 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 58);
5702 56 : compiler::TNode<RawPtrT> tmp4;
5703 56 : USE(tmp4);
5704 56 : tmp4 = ca_.UncheckedCast<RawPtrT>(TypedArrayBuiltinsAssembler(state_).LoadDataPtr(compiler::TNode<JSTypedArray>{tmp3}));
5705 56 : compiler::TNode<Smi> tmp5;
5706 56 : USE(tmp5);
5707 56 : tmp5 = ca_.UncheckedCast<Smi>(BaseBuiltinsFromDSLAssembler(state_).UnsafeCast5ATSmi(compiler::TNode<Context>{tmp0}, compiler::TNode<Object>{tmp2}));
5708 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 57);
5709 56 : compiler::TNode<Object> tmp6;
5710 56 : USE(tmp6);
5711 56 : tmp6 = ca_.UncheckedCast<Object>(CodeStubAssembler(state_).LoadFixedTypedArrayElementAsTagged(compiler::TNode<RawPtrT>{tmp4}, compiler::TNode<Smi>{tmp5}, (TypedArrayBuiltinsFromDSLAssembler(state_).KindForArrayType17ATFixedUint8Array()), CodeStubAssembler::SMI_PARAMETERS));
5712 56 : CodeStubAssembler(state_).Return(tmp6);
5713 56 : }
5714 56 : }
5715 :
5716 392 : TF_BUILTIN(LoadJoinTypedElement16ATFixedInt8Array, CodeStubAssembler) {
5717 56 : compiler::CodeAssemblerState* state_ = state(); compiler::CodeAssembler ca_(state());
5718 56 : TNode<Context> parameter0 = UncheckedCast<Context>(Parameter(Descriptor::kContext));
5719 56 : USE(parameter0);
5720 56 : compiler::TNode<JSReceiver> parameter1 = UncheckedCast<JSReceiver>(Parameter(Descriptor::kReceiver));
5721 56 : USE(parameter1);
5722 56 : compiler::TNode<Number> parameter2 = UncheckedCast<Number>(Parameter(Descriptor::kK));
5723 56 : USE(parameter2);
5724 112 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
5725 56 : ca_.Goto(&block0, parameter0, parameter1, parameter2);
5726 :
5727 56 : if (block0.is_used()) {
5728 56 : compiler::TNode<Context> tmp0;
5729 56 : compiler::TNode<JSReceiver> tmp1;
5730 56 : compiler::TNode<Number> tmp2;
5731 56 : ca_.Bind(&block0, &tmp0, &tmp1, &tmp2);
5732 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 55);
5733 56 : compiler::TNode<JSTypedArray> tmp3;
5734 56 : USE(tmp3);
5735 56 : tmp3 = ca_.UncheckedCast<JSTypedArray>(BaseBuiltinsFromDSLAssembler(state_).UnsafeCast12JSTypedArray(compiler::TNode<Context>{tmp0}, compiler::TNode<Object>{tmp1}));
5736 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 58);
5737 56 : compiler::TNode<RawPtrT> tmp4;
5738 56 : USE(tmp4);
5739 56 : tmp4 = ca_.UncheckedCast<RawPtrT>(TypedArrayBuiltinsAssembler(state_).LoadDataPtr(compiler::TNode<JSTypedArray>{tmp3}));
5740 56 : compiler::TNode<Smi> tmp5;
5741 56 : USE(tmp5);
5742 56 : tmp5 = ca_.UncheckedCast<Smi>(BaseBuiltinsFromDSLAssembler(state_).UnsafeCast5ATSmi(compiler::TNode<Context>{tmp0}, compiler::TNode<Object>{tmp2}));
5743 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 57);
5744 56 : compiler::TNode<Object> tmp6;
5745 56 : USE(tmp6);
5746 56 : tmp6 = ca_.UncheckedCast<Object>(CodeStubAssembler(state_).LoadFixedTypedArrayElementAsTagged(compiler::TNode<RawPtrT>{tmp4}, compiler::TNode<Smi>{tmp5}, (TypedArrayBuiltinsFromDSLAssembler(state_).KindForArrayType16ATFixedInt8Array()), CodeStubAssembler::SMI_PARAMETERS));
5747 56 : CodeStubAssembler(state_).Return(tmp6);
5748 56 : }
5749 56 : }
5750 :
5751 392 : TF_BUILTIN(LoadJoinTypedElement18ATFixedUint16Array, CodeStubAssembler) {
5752 56 : compiler::CodeAssemblerState* state_ = state(); compiler::CodeAssembler ca_(state());
5753 56 : TNode<Context> parameter0 = UncheckedCast<Context>(Parameter(Descriptor::kContext));
5754 56 : USE(parameter0);
5755 56 : compiler::TNode<JSReceiver> parameter1 = UncheckedCast<JSReceiver>(Parameter(Descriptor::kReceiver));
5756 56 : USE(parameter1);
5757 56 : compiler::TNode<Number> parameter2 = UncheckedCast<Number>(Parameter(Descriptor::kK));
5758 56 : USE(parameter2);
5759 112 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
5760 56 : ca_.Goto(&block0, parameter0, parameter1, parameter2);
5761 :
5762 56 : if (block0.is_used()) {
5763 56 : compiler::TNode<Context> tmp0;
5764 56 : compiler::TNode<JSReceiver> tmp1;
5765 56 : compiler::TNode<Number> tmp2;
5766 56 : ca_.Bind(&block0, &tmp0, &tmp1, &tmp2);
5767 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 55);
5768 56 : compiler::TNode<JSTypedArray> tmp3;
5769 56 : USE(tmp3);
5770 56 : tmp3 = ca_.UncheckedCast<JSTypedArray>(BaseBuiltinsFromDSLAssembler(state_).UnsafeCast12JSTypedArray(compiler::TNode<Context>{tmp0}, compiler::TNode<Object>{tmp1}));
5771 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 58);
5772 56 : compiler::TNode<RawPtrT> tmp4;
5773 56 : USE(tmp4);
5774 56 : tmp4 = ca_.UncheckedCast<RawPtrT>(TypedArrayBuiltinsAssembler(state_).LoadDataPtr(compiler::TNode<JSTypedArray>{tmp3}));
5775 56 : compiler::TNode<Smi> tmp5;
5776 56 : USE(tmp5);
5777 56 : tmp5 = ca_.UncheckedCast<Smi>(BaseBuiltinsFromDSLAssembler(state_).UnsafeCast5ATSmi(compiler::TNode<Context>{tmp0}, compiler::TNode<Object>{tmp2}));
5778 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 57);
5779 56 : compiler::TNode<Object> tmp6;
5780 56 : USE(tmp6);
5781 56 : tmp6 = ca_.UncheckedCast<Object>(CodeStubAssembler(state_).LoadFixedTypedArrayElementAsTagged(compiler::TNode<RawPtrT>{tmp4}, compiler::TNode<Smi>{tmp5}, (TypedArrayBuiltinsFromDSLAssembler(state_).KindForArrayType18ATFixedUint16Array()), CodeStubAssembler::SMI_PARAMETERS));
5782 56 : CodeStubAssembler(state_).Return(tmp6);
5783 56 : }
5784 56 : }
5785 :
5786 392 : TF_BUILTIN(LoadJoinTypedElement17ATFixedInt16Array, CodeStubAssembler) {
5787 56 : compiler::CodeAssemblerState* state_ = state(); compiler::CodeAssembler ca_(state());
5788 56 : TNode<Context> parameter0 = UncheckedCast<Context>(Parameter(Descriptor::kContext));
5789 56 : USE(parameter0);
5790 56 : compiler::TNode<JSReceiver> parameter1 = UncheckedCast<JSReceiver>(Parameter(Descriptor::kReceiver));
5791 56 : USE(parameter1);
5792 56 : compiler::TNode<Number> parameter2 = UncheckedCast<Number>(Parameter(Descriptor::kK));
5793 56 : USE(parameter2);
5794 112 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
5795 56 : ca_.Goto(&block0, parameter0, parameter1, parameter2);
5796 :
5797 56 : if (block0.is_used()) {
5798 56 : compiler::TNode<Context> tmp0;
5799 56 : compiler::TNode<JSReceiver> tmp1;
5800 56 : compiler::TNode<Number> tmp2;
5801 56 : ca_.Bind(&block0, &tmp0, &tmp1, &tmp2);
5802 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 55);
5803 56 : compiler::TNode<JSTypedArray> tmp3;
5804 56 : USE(tmp3);
5805 56 : tmp3 = ca_.UncheckedCast<JSTypedArray>(BaseBuiltinsFromDSLAssembler(state_).UnsafeCast12JSTypedArray(compiler::TNode<Context>{tmp0}, compiler::TNode<Object>{tmp1}));
5806 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 58);
5807 56 : compiler::TNode<RawPtrT> tmp4;
5808 56 : USE(tmp4);
5809 56 : tmp4 = ca_.UncheckedCast<RawPtrT>(TypedArrayBuiltinsAssembler(state_).LoadDataPtr(compiler::TNode<JSTypedArray>{tmp3}));
5810 56 : compiler::TNode<Smi> tmp5;
5811 56 : USE(tmp5);
5812 56 : tmp5 = ca_.UncheckedCast<Smi>(BaseBuiltinsFromDSLAssembler(state_).UnsafeCast5ATSmi(compiler::TNode<Context>{tmp0}, compiler::TNode<Object>{tmp2}));
5813 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 57);
5814 56 : compiler::TNode<Object> tmp6;
5815 56 : USE(tmp6);
5816 56 : tmp6 = ca_.UncheckedCast<Object>(CodeStubAssembler(state_).LoadFixedTypedArrayElementAsTagged(compiler::TNode<RawPtrT>{tmp4}, compiler::TNode<Smi>{tmp5}, (TypedArrayBuiltinsFromDSLAssembler(state_).KindForArrayType17ATFixedInt16Array()), CodeStubAssembler::SMI_PARAMETERS));
5817 56 : CodeStubAssembler(state_).Return(tmp6);
5818 56 : }
5819 56 : }
5820 :
5821 392 : TF_BUILTIN(LoadJoinTypedElement18ATFixedUint32Array, CodeStubAssembler) {
5822 56 : compiler::CodeAssemblerState* state_ = state(); compiler::CodeAssembler ca_(state());
5823 56 : TNode<Context> parameter0 = UncheckedCast<Context>(Parameter(Descriptor::kContext));
5824 56 : USE(parameter0);
5825 56 : compiler::TNode<JSReceiver> parameter1 = UncheckedCast<JSReceiver>(Parameter(Descriptor::kReceiver));
5826 56 : USE(parameter1);
5827 56 : compiler::TNode<Number> parameter2 = UncheckedCast<Number>(Parameter(Descriptor::kK));
5828 56 : USE(parameter2);
5829 112 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
5830 56 : ca_.Goto(&block0, parameter0, parameter1, parameter2);
5831 :
5832 56 : if (block0.is_used()) {
5833 56 : compiler::TNode<Context> tmp0;
5834 56 : compiler::TNode<JSReceiver> tmp1;
5835 56 : compiler::TNode<Number> tmp2;
5836 56 : ca_.Bind(&block0, &tmp0, &tmp1, &tmp2);
5837 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 55);
5838 56 : compiler::TNode<JSTypedArray> tmp3;
5839 56 : USE(tmp3);
5840 56 : tmp3 = ca_.UncheckedCast<JSTypedArray>(BaseBuiltinsFromDSLAssembler(state_).UnsafeCast12JSTypedArray(compiler::TNode<Context>{tmp0}, compiler::TNode<Object>{tmp1}));
5841 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 58);
5842 56 : compiler::TNode<RawPtrT> tmp4;
5843 56 : USE(tmp4);
5844 56 : tmp4 = ca_.UncheckedCast<RawPtrT>(TypedArrayBuiltinsAssembler(state_).LoadDataPtr(compiler::TNode<JSTypedArray>{tmp3}));
5845 56 : compiler::TNode<Smi> tmp5;
5846 56 : USE(tmp5);
5847 56 : tmp5 = ca_.UncheckedCast<Smi>(BaseBuiltinsFromDSLAssembler(state_).UnsafeCast5ATSmi(compiler::TNode<Context>{tmp0}, compiler::TNode<Object>{tmp2}));
5848 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 57);
5849 56 : compiler::TNode<Object> tmp6;
5850 56 : USE(tmp6);
5851 56 : tmp6 = ca_.UncheckedCast<Object>(CodeStubAssembler(state_).LoadFixedTypedArrayElementAsTagged(compiler::TNode<RawPtrT>{tmp4}, compiler::TNode<Smi>{tmp5}, (TypedArrayBuiltinsFromDSLAssembler(state_).KindForArrayType18ATFixedUint32Array()), CodeStubAssembler::SMI_PARAMETERS));
5852 56 : CodeStubAssembler(state_).Return(tmp6);
5853 56 : }
5854 56 : }
5855 :
5856 112 : compiler::TNode<String> ArrayJoinBuiltinsFromDSLAssembler::ArrayJoinImpl12JSTypedArray(compiler::TNode<Context> p_context, compiler::TNode<JSReceiver> p_receiver, compiler::TNode<String> p_sep, compiler::TNode<Number> p_lengthNumber, bool p_useToLocaleString, compiler::TNode<Object> p_locales, compiler::TNode<Object> p_options, compiler::TNode<BuiltinPtr> p_initialLoadFn) {
5857 112 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
5858 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, String, UintPtrT, String> block3(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
5859 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, String, UintPtrT, String> block4(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
5860 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, String, UintPtrT, String> block6(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
5861 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, String, UintPtrT, String, IntPtrT> block5(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
5862 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, String, UintPtrT, String> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
5863 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT> block9(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
5864 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT> block7(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
5865 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, BuiltinPtr, JSReceiver, Map, Number> block12(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
5866 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, BuiltinPtr, JSReceiver, Map, Number> block13(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
5867 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT> block10(&ca_, compiler::CodeAssemblerLabel::kDeferred);
5868 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT> block11(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
5869 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT> block14(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
5870 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT> block15(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
5871 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, Object, String> block16(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
5872 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, Object, String> block19(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
5873 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, Object, String> block20(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
5874 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, Object, String> block17(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
5875 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, Object, String, Object, Object> block24(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
5876 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, Object, String, Object, Object, String> block23(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
5877 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, Object, String, Object, String> block25(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
5878 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, Object, String, Object, String> block26(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
5879 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, Object, String, Object> block22(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
5880 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, Object, String, Object, Object> block30(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
5881 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, Object, String, Object, Object, Number> block29(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
5882 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, Object, String, Object> block28(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
5883 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, Object, String, Object, HeapObject> block31(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
5884 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, Object, String, Object, HeapObject> block32(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
5885 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, Object, String, Object> block27(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
5886 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, Object, String, Object> block21(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
5887 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, Object, String> block18(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
5888 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, Object, String, String, IntPtrT, IntPtrT, Context, String, IntPtrT, IntPtrT, BoolT, IntPtrT, IntPtrT, BoolT, Context, IntPtrT, IntPtrT, BoolT> block37(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
5889 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, Object, String, String, IntPtrT, IntPtrT, Context, String, IntPtrT, IntPtrT, BoolT, IntPtrT, IntPtrT, BoolT, Context, IntPtrT, IntPtrT, BoolT> block35(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
5890 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, Object, String, String, IntPtrT, IntPtrT, Context, String, IntPtrT, IntPtrT, BoolT, IntPtrT, IntPtrT, BoolT, Context, IntPtrT, IntPtrT, BoolT> block36(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
5891 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, Object, String, String, IntPtrT, IntPtrT, Context, String, IntPtrT, IntPtrT, BoolT, IntPtrT, IntPtrT, BoolT, Context, IntPtrT, IntPtrT, BoolT, IntPtrT, IntPtrT> block38(&ca_, compiler::CodeAssemblerLabel::kDeferred);
5892 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, Object, String, String, IntPtrT, IntPtrT, Context, String, IntPtrT, IntPtrT, BoolT, IntPtrT, IntPtrT, BoolT, Context, IntPtrT, IntPtrT, BoolT, IntPtrT, IntPtrT> block39(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
5893 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, Object, String, String, IntPtrT, IntPtrT, Context, String, IntPtrT, IntPtrT, BoolT, IntPtrT, IntPtrT, BoolT, Context, IntPtrT, IntPtrT, BoolT, IntPtrT, IntPtrT> block40(&ca_, compiler::CodeAssemblerLabel::kDeferred);
5894 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, Object, String, String, IntPtrT, IntPtrT, Context, String, IntPtrT, IntPtrT, BoolT, IntPtrT, IntPtrT, BoolT, Context, IntPtrT, IntPtrT, BoolT, IntPtrT, IntPtrT> block41(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
5895 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, Object, String, String, IntPtrT, IntPtrT, Context, String, IntPtrT, IntPtrT, BoolT, IntPtrT, IntPtrT, BoolT, Context, IntPtrT, IntPtrT, BoolT> block34(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
5896 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, Object, String, String, IntPtrT, IntPtrT, Context, String, IntPtrT, IntPtrT> block33(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
5897 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT> block8(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
5898 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, IntPtrT, IntPtrT, Context, IntPtrT, IntPtrT, BoolT> block45(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
5899 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, IntPtrT, IntPtrT, Context, IntPtrT, IntPtrT, BoolT> block43(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
5900 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, IntPtrT, IntPtrT, Context, IntPtrT, IntPtrT, BoolT> block44(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
5901 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, IntPtrT, IntPtrT, Context, IntPtrT, IntPtrT, BoolT, IntPtrT, IntPtrT> block46(&ca_, compiler::CodeAssemblerLabel::kDeferred);
5902 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, IntPtrT, IntPtrT, Context, IntPtrT, IntPtrT, BoolT, IntPtrT, IntPtrT> block47(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
5903 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, IntPtrT, IntPtrT, Context, IntPtrT, IntPtrT, BoolT, IntPtrT, IntPtrT> block48(&ca_, compiler::CodeAssemblerLabel::kDeferred);
5904 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, IntPtrT, IntPtrT, Context, IntPtrT, IntPtrT, BoolT, IntPtrT, IntPtrT> block49(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
5905 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, Map, UintPtrT, IntPtrT, IntPtrT, BuiltinPtr, FixedArray, IntPtrT, IntPtrT, BoolT, UintPtrT, IntPtrT, IntPtrT, Context, IntPtrT, IntPtrT, BoolT> block42(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
5906 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, String> block1(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
5907 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, String, Number, Object, Object, BuiltinPtr, String> block50(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
5908 112 : ca_.Goto(&block0, p_context, p_receiver, p_sep, p_lengthNumber, p_locales, p_options, p_initialLoadFn);
5909 :
5910 112 : if (block0.is_used()) {
5911 112 : compiler::TNode<Context> tmp0;
5912 112 : compiler::TNode<JSReceiver> tmp1;
5913 112 : compiler::TNode<String> tmp2;
5914 112 : compiler::TNode<Number> tmp3;
5915 112 : compiler::TNode<Object> tmp4;
5916 112 : compiler::TNode<Object> tmp5;
5917 112 : compiler::TNode<BuiltinPtr> tmp6;
5918 112 : ca_.Bind(&block0, &tmp0, &tmp1, &tmp2, &tmp3, &tmp4, &tmp5, &tmp6);
5919 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 263);
5920 112 : compiler::TNode<Map> tmp7;
5921 112 : USE(tmp7);
5922 112 : tmp7 = ca_.UncheckedCast<Map>(BaseBuiltinsFromDSLAssembler(state_).LoadHeapObjectMap(compiler::TNode<HeapObject>{tmp1}));
5923 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 264);
5924 112 : compiler::TNode<UintPtrT> tmp8;
5925 112 : USE(tmp8);
5926 112 : tmp8 = ca_.UncheckedCast<UintPtrT>(BaseBuiltinsFromDSLAssembler(state_).Convert9ATuintptr22UT12ATHeapNumber5ATSmi(compiler::TNode<Number>{tmp3}));
5927 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 265);
5928 112 : compiler::TNode<IntPtrT> tmp9;
5929 112 : USE(tmp9);
5930 112 : tmp9 = ca_.UncheckedCast<IntPtrT>(CodeStubAssembler(state_).LoadStringLengthAsWord(compiler::TNode<String>{tmp2}));
5931 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 266);
5932 112 : compiler::TNode<IntPtrT> tmp10;
5933 112 : USE(tmp10);
5934 112 : tmp10 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATintptr17ATconstexpr_int31(0));
5935 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 267);
5936 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 268);
5937 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 156);
5938 112 : compiler::TNode<UintPtrT> tmp11;
5939 112 : USE(tmp11);
5940 112 : tmp11 = ca_.UncheckedCast<UintPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr9ATuintptr17ATconstexpr_int31(FixedArray::kMaxRegularLength));
5941 112 : compiler::TNode<BoolT> tmp12;
5942 112 : USE(tmp12);
5943 112 : tmp12 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).UintPtrGreaterThan(compiler::TNode<UintPtrT>{tmp8}, compiler::TNode<UintPtrT>{tmp11}));
5944 112 : ca_.Branch(tmp12, &block3, &block4, tmp0, tmp1, tmp2, tmp3, tmp4, tmp5, tmp6, tmp7, tmp8, tmp9, tmp10, tmp6, ca_.Uninitialized<FixedArray>(), ca_.Uninitialized<IntPtrT>(), ca_.Uninitialized<IntPtrT>(), ca_.Uninitialized<BoolT>(), tmp8, tmp2, tmp8, tmp2);
5945 : }
5946 :
5947 112 : if (block3.is_used()) {
5948 112 : compiler::TNode<Context> tmp13;
5949 112 : compiler::TNode<JSReceiver> tmp14;
5950 112 : compiler::TNode<String> tmp15;
5951 112 : compiler::TNode<Number> tmp16;
5952 112 : compiler::TNode<Object> tmp17;
5953 112 : compiler::TNode<Object> tmp18;
5954 112 : compiler::TNode<BuiltinPtr> tmp19;
5955 112 : compiler::TNode<Map> tmp20;
5956 112 : compiler::TNode<UintPtrT> tmp21;
5957 112 : compiler::TNode<IntPtrT> tmp22;
5958 112 : compiler::TNode<IntPtrT> tmp23;
5959 112 : compiler::TNode<BuiltinPtr> tmp24;
5960 112 : compiler::TNode<FixedArray> tmp25;
5961 112 : compiler::TNode<IntPtrT> tmp26;
5962 112 : compiler::TNode<IntPtrT> tmp27;
5963 112 : compiler::TNode<BoolT> tmp28;
5964 112 : compiler::TNode<UintPtrT> tmp29;
5965 112 : compiler::TNode<String> tmp30;
5966 112 : compiler::TNode<UintPtrT> tmp31;
5967 112 : compiler::TNode<String> tmp32;
5968 112 : ca_.Bind(&block3, &tmp13, &tmp14, &tmp15, &tmp16, &tmp17, &tmp18, &tmp19, &tmp20, &tmp21, &tmp22, &tmp23, &tmp24, &tmp25, &tmp26, &tmp27, &tmp28, &tmp29, &tmp30, &tmp31, &tmp32);
5969 112 : ca_.Goto(&block6, tmp13, tmp14, tmp15, tmp16, tmp17, tmp18, tmp19, tmp20, tmp21, tmp22, tmp23, tmp24, tmp25, tmp26, tmp27, tmp28, tmp29, tmp30, tmp31, tmp32);
5970 : }
5971 :
5972 112 : if (block4.is_used()) {
5973 112 : compiler::TNode<Context> tmp33;
5974 112 : compiler::TNode<JSReceiver> tmp34;
5975 112 : compiler::TNode<String> tmp35;
5976 112 : compiler::TNode<Number> tmp36;
5977 112 : compiler::TNode<Object> tmp37;
5978 112 : compiler::TNode<Object> tmp38;
5979 112 : compiler::TNode<BuiltinPtr> tmp39;
5980 112 : compiler::TNode<Map> tmp40;
5981 112 : compiler::TNode<UintPtrT> tmp41;
5982 112 : compiler::TNode<IntPtrT> tmp42;
5983 112 : compiler::TNode<IntPtrT> tmp43;
5984 112 : compiler::TNode<BuiltinPtr> tmp44;
5985 112 : compiler::TNode<FixedArray> tmp45;
5986 112 : compiler::TNode<IntPtrT> tmp46;
5987 112 : compiler::TNode<IntPtrT> tmp47;
5988 112 : compiler::TNode<BoolT> tmp48;
5989 112 : compiler::TNode<UintPtrT> tmp49;
5990 112 : compiler::TNode<String> tmp50;
5991 112 : compiler::TNode<UintPtrT> tmp51;
5992 112 : compiler::TNode<String> tmp52;
5993 112 : ca_.Bind(&block4, &tmp33, &tmp34, &tmp35, &tmp36, &tmp37, &tmp38, &tmp39, &tmp40, &tmp41, &tmp42, &tmp43, &tmp44, &tmp45, &tmp46, &tmp47, &tmp48, &tmp49, &tmp50, &tmp51, &tmp52);
5994 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 158);
5995 112 : compiler::TNode<IntPtrT> tmp53;
5996 112 : USE(tmp53);
5997 112 : tmp53 = ca_.UncheckedCast<IntPtrT>(CodeStubAssembler(state_).Signed(compiler::TNode<UintPtrT>{tmp51}));
5998 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 156);
5999 112 : ca_.Goto(&block5, tmp33, tmp34, tmp35, tmp36, tmp37, tmp38, tmp39, tmp40, tmp41, tmp42, tmp43, tmp44, tmp45, tmp46, tmp47, tmp48, tmp49, tmp50, tmp51, tmp52, tmp53);
6000 : }
6001 :
6002 112 : if (block6.is_used()) {
6003 112 : compiler::TNode<Context> tmp54;
6004 112 : compiler::TNode<JSReceiver> tmp55;
6005 112 : compiler::TNode<String> tmp56;
6006 112 : compiler::TNode<Number> tmp57;
6007 112 : compiler::TNode<Object> tmp58;
6008 112 : compiler::TNode<Object> tmp59;
6009 112 : compiler::TNode<BuiltinPtr> tmp60;
6010 112 : compiler::TNode<Map> tmp61;
6011 112 : compiler::TNode<UintPtrT> tmp62;
6012 112 : compiler::TNode<IntPtrT> tmp63;
6013 112 : compiler::TNode<IntPtrT> tmp64;
6014 112 : compiler::TNode<BuiltinPtr> tmp65;
6015 112 : compiler::TNode<FixedArray> tmp66;
6016 112 : compiler::TNode<IntPtrT> tmp67;
6017 112 : compiler::TNode<IntPtrT> tmp68;
6018 112 : compiler::TNode<BoolT> tmp69;
6019 112 : compiler::TNode<UintPtrT> tmp70;
6020 112 : compiler::TNode<String> tmp71;
6021 112 : compiler::TNode<UintPtrT> tmp72;
6022 112 : compiler::TNode<String> tmp73;
6023 112 : ca_.Bind(&block6, &tmp54, &tmp55, &tmp56, &tmp57, &tmp58, &tmp59, &tmp60, &tmp61, &tmp62, &tmp63, &tmp64, &tmp65, &tmp66, &tmp67, &tmp68, &tmp69, &tmp70, &tmp71, &tmp72, &tmp73);
6024 112 : compiler::TNode<IntPtrT> tmp74;
6025 112 : USE(tmp74);
6026 112 : tmp74 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATintptr17ATconstexpr_int31(FixedArray::kMaxRegularLength));
6027 112 : ca_.Goto(&block5, tmp54, tmp55, tmp56, tmp57, tmp58, tmp59, tmp60, tmp61, tmp62, tmp63, tmp64, tmp65, tmp66, tmp67, tmp68, tmp69, tmp70, tmp71, tmp72, tmp73, tmp74);
6028 : }
6029 :
6030 112 : if (block5.is_used()) {
6031 112 : compiler::TNode<Context> tmp75;
6032 112 : compiler::TNode<JSReceiver> tmp76;
6033 112 : compiler::TNode<String> tmp77;
6034 112 : compiler::TNode<Number> tmp78;
6035 112 : compiler::TNode<Object> tmp79;
6036 112 : compiler::TNode<Object> tmp80;
6037 112 : compiler::TNode<BuiltinPtr> tmp81;
6038 112 : compiler::TNode<Map> tmp82;
6039 112 : compiler::TNode<UintPtrT> tmp83;
6040 112 : compiler::TNode<IntPtrT> tmp84;
6041 112 : compiler::TNode<IntPtrT> tmp85;
6042 112 : compiler::TNode<BuiltinPtr> tmp86;
6043 112 : compiler::TNode<FixedArray> tmp87;
6044 112 : compiler::TNode<IntPtrT> tmp88;
6045 112 : compiler::TNode<IntPtrT> tmp89;
6046 112 : compiler::TNode<BoolT> tmp90;
6047 112 : compiler::TNode<UintPtrT> tmp91;
6048 112 : compiler::TNode<String> tmp92;
6049 112 : compiler::TNode<UintPtrT> tmp93;
6050 112 : compiler::TNode<String> tmp94;
6051 112 : compiler::TNode<IntPtrT> tmp95;
6052 112 : ca_.Bind(&block5, &tmp75, &tmp76, &tmp77, &tmp78, &tmp79, &tmp80, &tmp81, &tmp82, &tmp83, &tmp84, &tmp85, &tmp86, &tmp87, &tmp88, &tmp89, &tmp90, &tmp91, &tmp92, &tmp93, &tmp94, &tmp95);
6053 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 160);
6054 112 : compiler::TNode<FixedArray> tmp96;
6055 112 : USE(tmp96);
6056 112 : tmp96 = ca_.UncheckedCast<FixedArray>(CodeStubAssembler(state_).AllocateZeroedFixedArray(compiler::TNode<IntPtrT>{tmp95}));
6057 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 161);
6058 112 : compiler::TNode<Int32T> tmp97;
6059 112 : USE(tmp97);
6060 112 : tmp97 = ca_.UncheckedCast<Int32T>(CodeStubAssembler(state_).LoadInstanceType(compiler::TNode<HeapObject>{tmp94}));
6061 112 : compiler::TNode<BoolT> tmp98;
6062 112 : USE(tmp98);
6063 112 : tmp98 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).HasOnlyOneByteChars(compiler::TNode<Int32T>{tmp97}));
6064 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 162);
6065 112 : compiler::TNode<IntPtrT> tmp99;
6066 112 : USE(tmp99);
6067 112 : tmp99 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATintptr17ATconstexpr_int31(0));
6068 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 163);
6069 112 : compiler::TNode<IntPtrT> tmp100;
6070 112 : USE(tmp100);
6071 112 : tmp100 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATintptr17ATconstexpr_int31(0));
6072 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 155);
6073 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 268);
6074 112 : ca_.Goto(&block2, tmp75, tmp76, tmp77, tmp78, tmp79, tmp80, tmp81, tmp82, tmp83, tmp84, tmp85, tmp86, tmp96, tmp99, tmp100, tmp98, tmp91, tmp92, tmp93, tmp94);
6075 : }
6076 :
6077 112 : if (block2.is_used()) {
6078 112 : compiler::TNode<Context> tmp101;
6079 112 : compiler::TNode<JSReceiver> tmp102;
6080 112 : compiler::TNode<String> tmp103;
6081 112 : compiler::TNode<Number> tmp104;
6082 112 : compiler::TNode<Object> tmp105;
6083 112 : compiler::TNode<Object> tmp106;
6084 112 : compiler::TNode<BuiltinPtr> tmp107;
6085 112 : compiler::TNode<Map> tmp108;
6086 112 : compiler::TNode<UintPtrT> tmp109;
6087 112 : compiler::TNode<IntPtrT> tmp110;
6088 112 : compiler::TNode<IntPtrT> tmp111;
6089 112 : compiler::TNode<BuiltinPtr> tmp112;
6090 112 : compiler::TNode<FixedArray> tmp113;
6091 112 : compiler::TNode<IntPtrT> tmp114;
6092 112 : compiler::TNode<IntPtrT> tmp115;
6093 112 : compiler::TNode<BoolT> tmp116;
6094 112 : compiler::TNode<UintPtrT> tmp117;
6095 112 : compiler::TNode<String> tmp118;
6096 112 : compiler::TNode<UintPtrT> tmp119;
6097 112 : compiler::TNode<String> tmp120;
6098 112 : ca_.Bind(&block2, &tmp101, &tmp102, &tmp103, &tmp104, &tmp105, &tmp106, &tmp107, &tmp108, &tmp109, &tmp110, &tmp111, &tmp112, &tmp113, &tmp114, &tmp115, &tmp116, &tmp117, &tmp118, &tmp119, &tmp120);
6099 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 271);
6100 112 : compiler::TNode<UintPtrT> tmp121;
6101 112 : USE(tmp121);
6102 112 : tmp121 = ca_.UncheckedCast<UintPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr9ATuintptr17ATconstexpr_int31(0));
6103 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 274);
6104 112 : ca_.Goto(&block9, tmp101, tmp102, tmp103, tmp104, tmp105, tmp106, tmp107, tmp108, tmp109, tmp110, tmp111, tmp112, tmp113, tmp114, tmp115, tmp116, tmp121);
6105 : }
6106 :
6107 112 : if (block9.is_used()) {
6108 112 : compiler::TNode<Context> tmp122;
6109 112 : compiler::TNode<JSReceiver> tmp123;
6110 112 : compiler::TNode<String> tmp124;
6111 112 : compiler::TNode<Number> tmp125;
6112 112 : compiler::TNode<Object> tmp126;
6113 112 : compiler::TNode<Object> tmp127;
6114 112 : compiler::TNode<BuiltinPtr> tmp128;
6115 112 : compiler::TNode<Map> tmp129;
6116 112 : compiler::TNode<UintPtrT> tmp130;
6117 112 : compiler::TNode<IntPtrT> tmp131;
6118 112 : compiler::TNode<IntPtrT> tmp132;
6119 112 : compiler::TNode<BuiltinPtr> tmp133;
6120 112 : compiler::TNode<FixedArray> tmp134;
6121 112 : compiler::TNode<IntPtrT> tmp135;
6122 112 : compiler::TNode<IntPtrT> tmp136;
6123 112 : compiler::TNode<BoolT> tmp137;
6124 112 : compiler::TNode<UintPtrT> tmp138;
6125 112 : ca_.Bind(&block9, &tmp122, &tmp123, &tmp124, &tmp125, &tmp126, &tmp127, &tmp128, &tmp129, &tmp130, &tmp131, &tmp132, &tmp133, &tmp134, &tmp135, &tmp136, &tmp137, &tmp138);
6126 112 : compiler::TNode<BoolT> tmp139;
6127 112 : USE(tmp139);
6128 112 : tmp139 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).UintPtrLessThan(compiler::TNode<UintPtrT>{tmp138}, compiler::TNode<UintPtrT>{tmp130}));
6129 112 : ca_.Branch(tmp139, &block7, &block8, tmp122, tmp123, tmp124, tmp125, tmp126, tmp127, tmp128, tmp129, tmp130, tmp131, tmp132, tmp133, tmp134, tmp135, tmp136, tmp137, tmp138);
6130 : }
6131 :
6132 112 : if (block7.is_used()) {
6133 112 : compiler::TNode<Context> tmp140;
6134 112 : compiler::TNode<JSReceiver> tmp141;
6135 112 : compiler::TNode<String> tmp142;
6136 112 : compiler::TNode<Number> tmp143;
6137 112 : compiler::TNode<Object> tmp144;
6138 112 : compiler::TNode<Object> tmp145;
6139 112 : compiler::TNode<BuiltinPtr> tmp146;
6140 112 : compiler::TNode<Map> tmp147;
6141 112 : compiler::TNode<UintPtrT> tmp148;
6142 112 : compiler::TNode<IntPtrT> tmp149;
6143 112 : compiler::TNode<IntPtrT> tmp150;
6144 112 : compiler::TNode<BuiltinPtr> tmp151;
6145 112 : compiler::TNode<FixedArray> tmp152;
6146 112 : compiler::TNode<IntPtrT> tmp153;
6147 112 : compiler::TNode<IntPtrT> tmp154;
6148 112 : compiler::TNode<BoolT> tmp155;
6149 112 : compiler::TNode<UintPtrT> tmp156;
6150 112 : ca_.Bind(&block7, &tmp140, &tmp141, &tmp142, &tmp143, &tmp144, &tmp145, &tmp146, &tmp147, &tmp148, &tmp149, &tmp150, &tmp151, &tmp152, &tmp153, &tmp154, &tmp155, &tmp156);
6151 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 276);
6152 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 275);
6153 112 : compiler::CodeAssemblerLabel label0(&ca_);
6154 224 : compiler::CodeAssemblerLabel label1(&ca_);
6155 112 : ArrayJoinBuiltinsFromDSLAssembler(state_).CannotUseSameArrayAccessor12JSTypedArray(compiler::TNode<Context>{tmp140}, compiler::TNode<BuiltinPtr>{tmp151}, compiler::TNode<JSReceiver>{tmp141}, compiler::TNode<Map>{tmp147}, compiler::TNode<Number>{tmp143}, &label0, &label1);
6156 112 : if (label0.is_used()) {
6157 112 : ca_.Bind(&label0);
6158 112 : ca_.Goto(&block12, tmp140, tmp141, tmp142, tmp143, tmp144, tmp145, tmp146, tmp147, tmp148, tmp149, tmp150, tmp151, tmp152, tmp153, tmp154, tmp155, tmp156, tmp151, tmp141, tmp147, tmp143);
6159 : }
6160 112 : if (label1.is_used()) {
6161 112 : ca_.Bind(&label1);
6162 112 : ca_.Goto(&block13, tmp140, tmp141, tmp142, tmp143, tmp144, tmp145, tmp146, tmp147, tmp148, tmp149, tmp150, tmp151, tmp152, tmp153, tmp154, tmp155, tmp156, tmp151, tmp141, tmp147, tmp143);
6163 112 : }
6164 : }
6165 :
6166 112 : if (block12.is_used()) {
6167 112 : compiler::TNode<Context> tmp157;
6168 112 : compiler::TNode<JSReceiver> tmp158;
6169 112 : compiler::TNode<String> tmp159;
6170 112 : compiler::TNode<Number> tmp160;
6171 112 : compiler::TNode<Object> tmp161;
6172 112 : compiler::TNode<Object> tmp162;
6173 112 : compiler::TNode<BuiltinPtr> tmp163;
6174 112 : compiler::TNode<Map> tmp164;
6175 112 : compiler::TNode<UintPtrT> tmp165;
6176 112 : compiler::TNode<IntPtrT> tmp166;
6177 112 : compiler::TNode<IntPtrT> tmp167;
6178 112 : compiler::TNode<BuiltinPtr> tmp168;
6179 112 : compiler::TNode<FixedArray> tmp169;
6180 112 : compiler::TNode<IntPtrT> tmp170;
6181 112 : compiler::TNode<IntPtrT> tmp171;
6182 112 : compiler::TNode<BoolT> tmp172;
6183 112 : compiler::TNode<UintPtrT> tmp173;
6184 112 : compiler::TNode<BuiltinPtr> tmp174;
6185 112 : compiler::TNode<JSReceiver> tmp175;
6186 112 : compiler::TNode<Map> tmp176;
6187 112 : compiler::TNode<Number> tmp177;
6188 112 : ca_.Bind(&block12, &tmp157, &tmp158, &tmp159, &tmp160, &tmp161, &tmp162, &tmp163, &tmp164, &tmp165, &tmp166, &tmp167, &tmp168, &tmp169, &tmp170, &tmp171, &tmp172, &tmp173, &tmp174, &tmp175, &tmp176, &tmp177);
6189 112 : ca_.Goto(&block10, tmp157, tmp158, tmp159, tmp160, tmp161, tmp162, tmp163, tmp164, tmp165, tmp166, tmp167, tmp168, tmp169, tmp170, tmp171, tmp172, tmp173);
6190 : }
6191 :
6192 112 : if (block13.is_used()) {
6193 112 : compiler::TNode<Context> tmp178;
6194 112 : compiler::TNode<JSReceiver> tmp179;
6195 112 : compiler::TNode<String> tmp180;
6196 112 : compiler::TNode<Number> tmp181;
6197 112 : compiler::TNode<Object> tmp182;
6198 112 : compiler::TNode<Object> tmp183;
6199 112 : compiler::TNode<BuiltinPtr> tmp184;
6200 112 : compiler::TNode<Map> tmp185;
6201 112 : compiler::TNode<UintPtrT> tmp186;
6202 112 : compiler::TNode<IntPtrT> tmp187;
6203 112 : compiler::TNode<IntPtrT> tmp188;
6204 112 : compiler::TNode<BuiltinPtr> tmp189;
6205 112 : compiler::TNode<FixedArray> tmp190;
6206 112 : compiler::TNode<IntPtrT> tmp191;
6207 112 : compiler::TNode<IntPtrT> tmp192;
6208 112 : compiler::TNode<BoolT> tmp193;
6209 112 : compiler::TNode<UintPtrT> tmp194;
6210 112 : compiler::TNode<BuiltinPtr> tmp195;
6211 112 : compiler::TNode<JSReceiver> tmp196;
6212 112 : compiler::TNode<Map> tmp197;
6213 112 : compiler::TNode<Number> tmp198;
6214 112 : ca_.Bind(&block13, &tmp178, &tmp179, &tmp180, &tmp181, &tmp182, &tmp183, &tmp184, &tmp185, &tmp186, &tmp187, &tmp188, &tmp189, &tmp190, &tmp191, &tmp192, &tmp193, &tmp194, &tmp195, &tmp196, &tmp197, &tmp198);
6215 112 : ca_.Goto(&block11, tmp178, tmp179, tmp180, tmp181, tmp182, tmp183, tmp184, tmp185, tmp186, tmp187, tmp188, tmp189, tmp190, tmp191, tmp192, tmp193, tmp194);
6216 : }
6217 :
6218 112 : if (block10.is_used()) {
6219 112 : compiler::TNode<Context> tmp199;
6220 112 : compiler::TNode<JSReceiver> tmp200;
6221 112 : compiler::TNode<String> tmp201;
6222 112 : compiler::TNode<Number> tmp202;
6223 112 : compiler::TNode<Object> tmp203;
6224 112 : compiler::TNode<Object> tmp204;
6225 112 : compiler::TNode<BuiltinPtr> tmp205;
6226 112 : compiler::TNode<Map> tmp206;
6227 112 : compiler::TNode<UintPtrT> tmp207;
6228 112 : compiler::TNode<IntPtrT> tmp208;
6229 112 : compiler::TNode<IntPtrT> tmp209;
6230 112 : compiler::TNode<BuiltinPtr> tmp210;
6231 112 : compiler::TNode<FixedArray> tmp211;
6232 112 : compiler::TNode<IntPtrT> tmp212;
6233 112 : compiler::TNode<IntPtrT> tmp213;
6234 112 : compiler::TNode<BoolT> tmp214;
6235 112 : compiler::TNode<UintPtrT> tmp215;
6236 112 : ca_.Bind(&block10, &tmp199, &tmp200, &tmp201, &tmp202, &tmp203, &tmp204, &tmp205, &tmp206, &tmp207, &tmp208, &tmp209, &tmp210, &tmp211, &tmp212, &tmp213, &tmp214, &tmp215);
6237 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 278);
6238 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 275);
6239 112 : ca_.Goto(&block11, tmp199, tmp200, tmp201, tmp202, tmp203, tmp204, tmp205, tmp206, tmp207, tmp208, tmp209, ca_.UncheckedCast<BuiltinPtr>(ca_.SmiConstant(Builtins::kLoadJoinElement25ATGenericElementsAccessor)), tmp211, tmp212, tmp213, tmp214, tmp215);
6240 : }
6241 :
6242 112 : if (block11.is_used()) {
6243 112 : compiler::TNode<Context> tmp216;
6244 112 : compiler::TNode<JSReceiver> tmp217;
6245 112 : compiler::TNode<String> tmp218;
6246 112 : compiler::TNode<Number> tmp219;
6247 112 : compiler::TNode<Object> tmp220;
6248 112 : compiler::TNode<Object> tmp221;
6249 112 : compiler::TNode<BuiltinPtr> tmp222;
6250 112 : compiler::TNode<Map> tmp223;
6251 112 : compiler::TNode<UintPtrT> tmp224;
6252 112 : compiler::TNode<IntPtrT> tmp225;
6253 112 : compiler::TNode<IntPtrT> tmp226;
6254 112 : compiler::TNode<BuiltinPtr> tmp227;
6255 112 : compiler::TNode<FixedArray> tmp228;
6256 112 : compiler::TNode<IntPtrT> tmp229;
6257 112 : compiler::TNode<IntPtrT> tmp230;
6258 112 : compiler::TNode<BoolT> tmp231;
6259 112 : compiler::TNode<UintPtrT> tmp232;
6260 112 : ca_.Bind(&block11, &tmp216, &tmp217, &tmp218, &tmp219, &tmp220, &tmp221, &tmp222, &tmp223, &tmp224, &tmp225, &tmp226, &tmp227, &tmp228, &tmp229, &tmp230, &tmp231, &tmp232);
6261 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 281);
6262 112 : compiler::TNode<UintPtrT> tmp233;
6263 112 : USE(tmp233);
6264 112 : tmp233 = ca_.UncheckedCast<UintPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr9ATuintptr17ATconstexpr_int31(0));
6265 112 : compiler::TNode<BoolT> tmp234;
6266 112 : USE(tmp234);
6267 112 : tmp234 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).UintPtrGreaterThan(compiler::TNode<UintPtrT>{tmp232}, compiler::TNode<UintPtrT>{tmp233}));
6268 112 : ca_.Branch(tmp234, &block14, &block15, tmp216, tmp217, tmp218, tmp219, tmp220, tmp221, tmp222, tmp223, tmp224, tmp225, tmp226, tmp227, tmp228, tmp229, tmp230, tmp231, tmp232);
6269 : }
6270 :
6271 112 : if (block14.is_used()) {
6272 112 : compiler::TNode<Context> tmp235;
6273 112 : compiler::TNode<JSReceiver> tmp236;
6274 112 : compiler::TNode<String> tmp237;
6275 112 : compiler::TNode<Number> tmp238;
6276 112 : compiler::TNode<Object> tmp239;
6277 112 : compiler::TNode<Object> tmp240;
6278 112 : compiler::TNode<BuiltinPtr> tmp241;
6279 112 : compiler::TNode<Map> tmp242;
6280 112 : compiler::TNode<UintPtrT> tmp243;
6281 112 : compiler::TNode<IntPtrT> tmp244;
6282 112 : compiler::TNode<IntPtrT> tmp245;
6283 112 : compiler::TNode<BuiltinPtr> tmp246;
6284 112 : compiler::TNode<FixedArray> tmp247;
6285 112 : compiler::TNode<IntPtrT> tmp248;
6286 112 : compiler::TNode<IntPtrT> tmp249;
6287 112 : compiler::TNode<BoolT> tmp250;
6288 112 : compiler::TNode<UintPtrT> tmp251;
6289 112 : ca_.Bind(&block14, &tmp235, &tmp236, &tmp237, &tmp238, &tmp239, &tmp240, &tmp241, &tmp242, &tmp243, &tmp244, &tmp245, &tmp246, &tmp247, &tmp248, &tmp249, &tmp250, &tmp251);
6290 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 283);
6291 112 : compiler::TNode<IntPtrT> tmp252;
6292 112 : USE(tmp252);
6293 112 : tmp252 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATintptr17ATconstexpr_int31(1));
6294 112 : compiler::TNode<IntPtrT> tmp253;
6295 112 : USE(tmp253);
6296 112 : tmp253 = ca_.UncheckedCast<IntPtrT>(CodeStubAssembler(state_).IntPtrAdd(compiler::TNode<IntPtrT>{tmp245}, compiler::TNode<IntPtrT>{tmp252}));
6297 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 281);
6298 112 : ca_.Goto(&block15, tmp235, tmp236, tmp237, tmp238, tmp239, tmp240, tmp241, tmp242, tmp243, tmp244, tmp253, tmp246, tmp247, tmp248, tmp249, tmp250, tmp251);
6299 : }
6300 :
6301 112 : if (block15.is_used()) {
6302 112 : compiler::TNode<Context> tmp254;
6303 112 : compiler::TNode<JSReceiver> tmp255;
6304 112 : compiler::TNode<String> tmp256;
6305 112 : compiler::TNode<Number> tmp257;
6306 112 : compiler::TNode<Object> tmp258;
6307 112 : compiler::TNode<Object> tmp259;
6308 112 : compiler::TNode<BuiltinPtr> tmp260;
6309 112 : compiler::TNode<Map> tmp261;
6310 112 : compiler::TNode<UintPtrT> tmp262;
6311 112 : compiler::TNode<IntPtrT> tmp263;
6312 112 : compiler::TNode<IntPtrT> tmp264;
6313 112 : compiler::TNode<BuiltinPtr> tmp265;
6314 112 : compiler::TNode<FixedArray> tmp266;
6315 112 : compiler::TNode<IntPtrT> tmp267;
6316 112 : compiler::TNode<IntPtrT> tmp268;
6317 112 : compiler::TNode<BoolT> tmp269;
6318 112 : compiler::TNode<UintPtrT> tmp270;
6319 112 : ca_.Bind(&block15, &tmp254, &tmp255, &tmp256, &tmp257, &tmp258, &tmp259, &tmp260, &tmp261, &tmp262, &tmp263, &tmp264, &tmp265, &tmp266, &tmp267, &tmp268, &tmp269, &tmp270);
6320 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 287);
6321 112 : compiler::TNode<UintPtrT> tmp271;
6322 112 : USE(tmp271);
6323 112 : tmp271 = ca_.UncheckedCast<UintPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr9ATuintptr17ATconstexpr_int31(1));
6324 112 : compiler::TNode<UintPtrT> tmp272;
6325 112 : USE(tmp272);
6326 112 : tmp272 = ca_.UncheckedCast<UintPtrT>(CodeStubAssembler(state_).UintPtrAdd(compiler::TNode<UintPtrT>{tmp270}, compiler::TNode<UintPtrT>{tmp271}));
6327 112 : compiler::TNode<Number> tmp273;
6328 112 : USE(tmp273);
6329 112 : tmp273 = ca_.UncheckedCast<Number>(BaseBuiltinsFromDSLAssembler(state_).Convert22UT12ATHeapNumber5ATSmi9ATuintptr(compiler::TNode<UintPtrT>{tmp270}));
6330 112 : compiler::TNode<Object> tmp274 = CodeStubAssembler(state_).CallBuiltinPointer(Builtins::CallableFor(ca_.isolate(),ExampleBuiltinForTorqueFunctionPointerType(0)).descriptor(), tmp265, tmp254, tmp255, tmp273);
6331 112 : USE(tmp274);
6332 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 291);
6333 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 292);
6334 112 : if ((p_useToLocaleString)) {
6335 56 : ca_.Goto(&block16, tmp254, tmp255, tmp256, tmp257, tmp258, tmp259, tmp260, tmp261, tmp262, tmp263, tmp264, tmp265, tmp266, tmp267, tmp268, tmp269, tmp272, tmp274, ca_.Uninitialized<String>());
6336 : } else {
6337 56 : ca_.Goto(&block17, tmp254, tmp255, tmp256, tmp257, tmp258, tmp259, tmp260, tmp261, tmp262, tmp263, tmp264, tmp265, tmp266, tmp267, tmp268, tmp269, tmp272, tmp274, ca_.Uninitialized<String>());
6338 : }
6339 : }
6340 :
6341 112 : if (block16.is_used()) {
6342 56 : compiler::TNode<Context> tmp275;
6343 56 : compiler::TNode<JSReceiver> tmp276;
6344 56 : compiler::TNode<String> tmp277;
6345 56 : compiler::TNode<Number> tmp278;
6346 56 : compiler::TNode<Object> tmp279;
6347 56 : compiler::TNode<Object> tmp280;
6348 56 : compiler::TNode<BuiltinPtr> tmp281;
6349 56 : compiler::TNode<Map> tmp282;
6350 56 : compiler::TNode<UintPtrT> tmp283;
6351 56 : compiler::TNode<IntPtrT> tmp284;
6352 56 : compiler::TNode<IntPtrT> tmp285;
6353 56 : compiler::TNode<BuiltinPtr> tmp286;
6354 56 : compiler::TNode<FixedArray> tmp287;
6355 56 : compiler::TNode<IntPtrT> tmp288;
6356 56 : compiler::TNode<IntPtrT> tmp289;
6357 56 : compiler::TNode<BoolT> tmp290;
6358 56 : compiler::TNode<UintPtrT> tmp291;
6359 56 : compiler::TNode<Object> tmp292;
6360 56 : compiler::TNode<String> tmp293;
6361 56 : ca_.Bind(&block16, &tmp275, &tmp276, &tmp277, &tmp278, &tmp279, &tmp280, &tmp281, &tmp282, &tmp283, &tmp284, &tmp285, &tmp286, &tmp287, &tmp288, &tmp289, &tmp290, &tmp291, &tmp292, &tmp293);
6362 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 293);
6363 56 : compiler::TNode<String> tmp294;
6364 56 : tmp294 = TORQUE_CAST(CodeStubAssembler(state_).CallBuiltin(Builtins::kConvertToLocaleString, tmp275, tmp292, tmp279, tmp280));
6365 56 : USE(tmp294);
6366 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 294);
6367 56 : compiler::TNode<String> tmp295;
6368 56 : USE(tmp295);
6369 56 : tmp295 = BaseBuiltinsFromDSLAssembler(state_).kEmptyString();
6370 56 : compiler::TNode<BoolT> tmp296;
6371 56 : USE(tmp296);
6372 56 : tmp296 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).WordEqual(compiler::TNode<Object>{tmp294}, compiler::TNode<HeapObject>{tmp295}));
6373 56 : ca_.Branch(tmp296, &block19, &block20, tmp275, tmp276, tmp277, tmp278, tmp279, tmp280, tmp281, tmp282, tmp283, tmp284, tmp285, tmp286, tmp287, tmp288, tmp289, tmp290, tmp291, tmp292, tmp294);
6374 : }
6375 :
6376 112 : if (block19.is_used()) {
6377 56 : compiler::TNode<Context> tmp297;
6378 56 : compiler::TNode<JSReceiver> tmp298;
6379 56 : compiler::TNode<String> tmp299;
6380 56 : compiler::TNode<Number> tmp300;
6381 56 : compiler::TNode<Object> tmp301;
6382 56 : compiler::TNode<Object> tmp302;
6383 56 : compiler::TNode<BuiltinPtr> tmp303;
6384 56 : compiler::TNode<Map> tmp304;
6385 56 : compiler::TNode<UintPtrT> tmp305;
6386 56 : compiler::TNode<IntPtrT> tmp306;
6387 56 : compiler::TNode<IntPtrT> tmp307;
6388 56 : compiler::TNode<BuiltinPtr> tmp308;
6389 56 : compiler::TNode<FixedArray> tmp309;
6390 56 : compiler::TNode<IntPtrT> tmp310;
6391 56 : compiler::TNode<IntPtrT> tmp311;
6392 56 : compiler::TNode<BoolT> tmp312;
6393 56 : compiler::TNode<UintPtrT> tmp313;
6394 56 : compiler::TNode<Object> tmp314;
6395 56 : compiler::TNode<String> tmp315;
6396 56 : ca_.Bind(&block19, &tmp297, &tmp298, &tmp299, &tmp300, &tmp301, &tmp302, &tmp303, &tmp304, &tmp305, &tmp306, &tmp307, &tmp308, &tmp309, &tmp310, &tmp311, &tmp312, &tmp313, &tmp314, &tmp315);
6397 56 : ca_.Goto(&block9, tmp297, tmp298, tmp299, tmp300, tmp301, tmp302, tmp303, tmp304, tmp305, tmp306, tmp307, tmp308, tmp309, tmp310, tmp311, tmp312, tmp313);
6398 : }
6399 :
6400 112 : if (block20.is_used()) {
6401 56 : compiler::TNode<Context> tmp316;
6402 56 : compiler::TNode<JSReceiver> tmp317;
6403 56 : compiler::TNode<String> tmp318;
6404 56 : compiler::TNode<Number> tmp319;
6405 56 : compiler::TNode<Object> tmp320;
6406 56 : compiler::TNode<Object> tmp321;
6407 56 : compiler::TNode<BuiltinPtr> tmp322;
6408 56 : compiler::TNode<Map> tmp323;
6409 56 : compiler::TNode<UintPtrT> tmp324;
6410 56 : compiler::TNode<IntPtrT> tmp325;
6411 56 : compiler::TNode<IntPtrT> tmp326;
6412 56 : compiler::TNode<BuiltinPtr> tmp327;
6413 56 : compiler::TNode<FixedArray> tmp328;
6414 56 : compiler::TNode<IntPtrT> tmp329;
6415 56 : compiler::TNode<IntPtrT> tmp330;
6416 56 : compiler::TNode<BoolT> tmp331;
6417 56 : compiler::TNode<UintPtrT> tmp332;
6418 56 : compiler::TNode<Object> tmp333;
6419 56 : compiler::TNode<String> tmp334;
6420 56 : ca_.Bind(&block20, &tmp316, &tmp317, &tmp318, &tmp319, &tmp320, &tmp321, &tmp322, &tmp323, &tmp324, &tmp325, &tmp326, &tmp327, &tmp328, &tmp329, &tmp330, &tmp331, &tmp332, &tmp333, &tmp334);
6421 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 292);
6422 56 : ca_.Goto(&block18, tmp316, tmp317, tmp318, tmp319, tmp320, tmp321, tmp322, tmp323, tmp324, tmp325, tmp326, tmp327, tmp328, tmp329, tmp330, tmp331, tmp332, tmp333, tmp334);
6423 : }
6424 :
6425 112 : if (block17.is_used()) {
6426 56 : compiler::TNode<Context> tmp335;
6427 56 : compiler::TNode<JSReceiver> tmp336;
6428 56 : compiler::TNode<String> tmp337;
6429 56 : compiler::TNode<Number> tmp338;
6430 56 : compiler::TNode<Object> tmp339;
6431 56 : compiler::TNode<Object> tmp340;
6432 56 : compiler::TNode<BuiltinPtr> tmp341;
6433 56 : compiler::TNode<Map> tmp342;
6434 56 : compiler::TNode<UintPtrT> tmp343;
6435 56 : compiler::TNode<IntPtrT> tmp344;
6436 56 : compiler::TNode<IntPtrT> tmp345;
6437 56 : compiler::TNode<BuiltinPtr> tmp346;
6438 56 : compiler::TNode<FixedArray> tmp347;
6439 56 : compiler::TNode<IntPtrT> tmp348;
6440 56 : compiler::TNode<IntPtrT> tmp349;
6441 56 : compiler::TNode<BoolT> tmp350;
6442 56 : compiler::TNode<UintPtrT> tmp351;
6443 56 : compiler::TNode<Object> tmp352;
6444 56 : compiler::TNode<String> tmp353;
6445 56 : ca_.Bind(&block17, &tmp335, &tmp336, &tmp337, &tmp338, &tmp339, &tmp340, &tmp341, &tmp342, &tmp343, &tmp344, &tmp345, &tmp346, &tmp347, &tmp348, &tmp349, &tmp350, &tmp351, &tmp352, &tmp353);
6446 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 296);
6447 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 297);
6448 56 : compiler::TNode<String> tmp354;
6449 56 : USE(tmp354);
6450 56 : compiler::CodeAssemblerLabel label0(&ca_);
6451 56 : tmp354 = BaseBuiltinsFromDSLAssembler(state_).Cast8ATString(compiler::TNode<Context>{tmp335}, compiler::TNode<Object>{tmp352}, &label0);
6452 56 : ca_.Goto(&block23, tmp335, tmp336, tmp337, tmp338, tmp339, tmp340, tmp341, tmp342, tmp343, tmp344, tmp345, tmp346, tmp347, tmp348, tmp349, tmp350, tmp351, tmp352, tmp353, tmp352, tmp352, tmp354);
6453 56 : if (label0.is_used()) {
6454 56 : ca_.Bind(&label0);
6455 56 : ca_.Goto(&block24, tmp335, tmp336, tmp337, tmp338, tmp339, tmp340, tmp341, tmp342, tmp343, tmp344, tmp345, tmp346, tmp347, tmp348, tmp349, tmp350, tmp351, tmp352, tmp353, tmp352, tmp352);
6456 56 : }
6457 : }
6458 :
6459 112 : if (block24.is_used()) {
6460 56 : compiler::TNode<Context> tmp355;
6461 56 : compiler::TNode<JSReceiver> tmp356;
6462 56 : compiler::TNode<String> tmp357;
6463 56 : compiler::TNode<Number> tmp358;
6464 56 : compiler::TNode<Object> tmp359;
6465 56 : compiler::TNode<Object> tmp360;
6466 56 : compiler::TNode<BuiltinPtr> tmp361;
6467 56 : compiler::TNode<Map> tmp362;
6468 56 : compiler::TNode<UintPtrT> tmp363;
6469 56 : compiler::TNode<IntPtrT> tmp364;
6470 56 : compiler::TNode<IntPtrT> tmp365;
6471 56 : compiler::TNode<BuiltinPtr> tmp366;
6472 56 : compiler::TNode<FixedArray> tmp367;
6473 56 : compiler::TNode<IntPtrT> tmp368;
6474 56 : compiler::TNode<IntPtrT> tmp369;
6475 56 : compiler::TNode<BoolT> tmp370;
6476 56 : compiler::TNode<UintPtrT> tmp371;
6477 56 : compiler::TNode<Object> tmp372;
6478 56 : compiler::TNode<String> tmp373;
6479 56 : compiler::TNode<Object> tmp374;
6480 56 : compiler::TNode<Object> tmp375;
6481 56 : ca_.Bind(&block24, &tmp355, &tmp356, &tmp357, &tmp358, &tmp359, &tmp360, &tmp361, &tmp362, &tmp363, &tmp364, &tmp365, &tmp366, &tmp367, &tmp368, &tmp369, &tmp370, &tmp371, &tmp372, &tmp373, &tmp374, &tmp375);
6482 56 : ca_.Goto(&block22, tmp355, tmp356, tmp357, tmp358, tmp359, tmp360, tmp361, tmp362, tmp363, tmp364, tmp365, tmp366, tmp367, tmp368, tmp369, tmp370, tmp371, tmp372, tmp373, tmp374);
6483 : }
6484 :
6485 112 : if (block23.is_used()) {
6486 56 : compiler::TNode<Context> tmp376;
6487 56 : compiler::TNode<JSReceiver> tmp377;
6488 56 : compiler::TNode<String> tmp378;
6489 56 : compiler::TNode<Number> tmp379;
6490 56 : compiler::TNode<Object> tmp380;
6491 56 : compiler::TNode<Object> tmp381;
6492 56 : compiler::TNode<BuiltinPtr> tmp382;
6493 56 : compiler::TNode<Map> tmp383;
6494 56 : compiler::TNode<UintPtrT> tmp384;
6495 56 : compiler::TNode<IntPtrT> tmp385;
6496 56 : compiler::TNode<IntPtrT> tmp386;
6497 56 : compiler::TNode<BuiltinPtr> tmp387;
6498 56 : compiler::TNode<FixedArray> tmp388;
6499 56 : compiler::TNode<IntPtrT> tmp389;
6500 56 : compiler::TNode<IntPtrT> tmp390;
6501 56 : compiler::TNode<BoolT> tmp391;
6502 56 : compiler::TNode<UintPtrT> tmp392;
6503 56 : compiler::TNode<Object> tmp393;
6504 56 : compiler::TNode<String> tmp394;
6505 56 : compiler::TNode<Object> tmp395;
6506 56 : compiler::TNode<Object> tmp396;
6507 56 : compiler::TNode<String> tmp397;
6508 56 : ca_.Bind(&block23, &tmp376, &tmp377, &tmp378, &tmp379, &tmp380, &tmp381, &tmp382, &tmp383, &tmp384, &tmp385, &tmp386, &tmp387, &tmp388, &tmp389, &tmp390, &tmp391, &tmp392, &tmp393, &tmp394, &tmp395, &tmp396, &tmp397);
6509 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 298);
6510 56 : compiler::TNode<String> tmp398;
6511 56 : USE(tmp398);
6512 56 : tmp398 = BaseBuiltinsFromDSLAssembler(state_).kEmptyString();
6513 56 : compiler::TNode<BoolT> tmp399;
6514 56 : USE(tmp399);
6515 56 : tmp399 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).WordEqual(compiler::TNode<Object>{tmp397}, compiler::TNode<HeapObject>{tmp398}));
6516 56 : ca_.Branch(tmp399, &block25, &block26, tmp376, tmp377, tmp378, tmp379, tmp380, tmp381, tmp382, tmp383, tmp384, tmp385, tmp386, tmp387, tmp388, tmp389, tmp390, tmp391, tmp392, tmp393, tmp394, tmp395, tmp397);
6517 : }
6518 :
6519 112 : if (block25.is_used()) {
6520 56 : compiler::TNode<Context> tmp400;
6521 56 : compiler::TNode<JSReceiver> tmp401;
6522 56 : compiler::TNode<String> tmp402;
6523 56 : compiler::TNode<Number> tmp403;
6524 56 : compiler::TNode<Object> tmp404;
6525 56 : compiler::TNode<Object> tmp405;
6526 56 : compiler::TNode<BuiltinPtr> tmp406;
6527 56 : compiler::TNode<Map> tmp407;
6528 56 : compiler::TNode<UintPtrT> tmp408;
6529 56 : compiler::TNode<IntPtrT> tmp409;
6530 56 : compiler::TNode<IntPtrT> tmp410;
6531 56 : compiler::TNode<BuiltinPtr> tmp411;
6532 56 : compiler::TNode<FixedArray> tmp412;
6533 56 : compiler::TNode<IntPtrT> tmp413;
6534 56 : compiler::TNode<IntPtrT> tmp414;
6535 56 : compiler::TNode<BoolT> tmp415;
6536 56 : compiler::TNode<UintPtrT> tmp416;
6537 56 : compiler::TNode<Object> tmp417;
6538 56 : compiler::TNode<String> tmp418;
6539 56 : compiler::TNode<Object> tmp419;
6540 56 : compiler::TNode<String> tmp420;
6541 56 : ca_.Bind(&block25, &tmp400, &tmp401, &tmp402, &tmp403, &tmp404, &tmp405, &tmp406, &tmp407, &tmp408, &tmp409, &tmp410, &tmp411, &tmp412, &tmp413, &tmp414, &tmp415, &tmp416, &tmp417, &tmp418, &tmp419, &tmp420);
6542 56 : ca_.Goto(&block9, tmp400, tmp401, tmp402, tmp403, tmp404, tmp405, tmp406, tmp407, tmp408, tmp409, tmp410, tmp411, tmp412, tmp413, tmp414, tmp415, tmp416);
6543 : }
6544 :
6545 112 : if (block26.is_used()) {
6546 56 : compiler::TNode<Context> tmp421;
6547 56 : compiler::TNode<JSReceiver> tmp422;
6548 56 : compiler::TNode<String> tmp423;
6549 56 : compiler::TNode<Number> tmp424;
6550 56 : compiler::TNode<Object> tmp425;
6551 56 : compiler::TNode<Object> tmp426;
6552 56 : compiler::TNode<BuiltinPtr> tmp427;
6553 56 : compiler::TNode<Map> tmp428;
6554 56 : compiler::TNode<UintPtrT> tmp429;
6555 56 : compiler::TNode<IntPtrT> tmp430;
6556 56 : compiler::TNode<IntPtrT> tmp431;
6557 56 : compiler::TNode<BuiltinPtr> tmp432;
6558 56 : compiler::TNode<FixedArray> tmp433;
6559 56 : compiler::TNode<IntPtrT> tmp434;
6560 56 : compiler::TNode<IntPtrT> tmp435;
6561 56 : compiler::TNode<BoolT> tmp436;
6562 56 : compiler::TNode<UintPtrT> tmp437;
6563 56 : compiler::TNode<Object> tmp438;
6564 56 : compiler::TNode<String> tmp439;
6565 56 : compiler::TNode<Object> tmp440;
6566 56 : compiler::TNode<String> tmp441;
6567 56 : ca_.Bind(&block26, &tmp421, &tmp422, &tmp423, &tmp424, &tmp425, &tmp426, &tmp427, &tmp428, &tmp429, &tmp430, &tmp431, &tmp432, &tmp433, &tmp434, &tmp435, &tmp436, &tmp437, &tmp438, &tmp439, &tmp440, &tmp441);
6568 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 299);
6569 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 297);
6570 56 : ca_.Goto(&block21, tmp421, tmp422, tmp423, tmp424, tmp425, tmp426, tmp427, tmp428, tmp429, tmp430, tmp431, tmp432, tmp433, tmp434, tmp435, tmp436, tmp437, tmp438, tmp441, tmp440);
6571 : }
6572 :
6573 112 : if (block22.is_used()) {
6574 56 : compiler::TNode<Context> tmp442;
6575 56 : compiler::TNode<JSReceiver> tmp443;
6576 56 : compiler::TNode<String> tmp444;
6577 56 : compiler::TNode<Number> tmp445;
6578 56 : compiler::TNode<Object> tmp446;
6579 56 : compiler::TNode<Object> tmp447;
6580 56 : compiler::TNode<BuiltinPtr> tmp448;
6581 56 : compiler::TNode<Map> tmp449;
6582 56 : compiler::TNode<UintPtrT> tmp450;
6583 56 : compiler::TNode<IntPtrT> tmp451;
6584 56 : compiler::TNode<IntPtrT> tmp452;
6585 56 : compiler::TNode<BuiltinPtr> tmp453;
6586 56 : compiler::TNode<FixedArray> tmp454;
6587 56 : compiler::TNode<IntPtrT> tmp455;
6588 56 : compiler::TNode<IntPtrT> tmp456;
6589 56 : compiler::TNode<BoolT> tmp457;
6590 56 : compiler::TNode<UintPtrT> tmp458;
6591 56 : compiler::TNode<Object> tmp459;
6592 56 : compiler::TNode<String> tmp460;
6593 56 : compiler::TNode<Object> tmp461;
6594 56 : ca_.Bind(&block22, &tmp442, &tmp443, &tmp444, &tmp445, &tmp446, &tmp447, &tmp448, &tmp449, &tmp450, &tmp451, &tmp452, &tmp453, &tmp454, &tmp455, &tmp456, &tmp457, &tmp458, &tmp459, &tmp460, &tmp461);
6595 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 301);
6596 56 : compiler::TNode<Number> tmp462;
6597 56 : USE(tmp462);
6598 56 : compiler::CodeAssemblerLabel label0(&ca_);
6599 56 : tmp462 = BaseBuiltinsFromDSLAssembler(state_).Cast22UT12ATHeapNumber5ATSmi(compiler::TNode<Object>{ca_.UncheckedCast<Object>(tmp461)}, &label0);
6600 56 : ca_.Goto(&block29, tmp442, tmp443, tmp444, tmp445, tmp446, tmp447, tmp448, tmp449, tmp450, tmp451, tmp452, tmp453, tmp454, tmp455, tmp456, tmp457, tmp458, tmp459, tmp460, tmp461, ca_.UncheckedCast<Object>(tmp461), tmp462);
6601 56 : if (label0.is_used()) {
6602 56 : ca_.Bind(&label0);
6603 56 : ca_.Goto(&block30, tmp442, tmp443, tmp444, tmp445, tmp446, tmp447, tmp448, tmp449, tmp450, tmp451, tmp452, tmp453, tmp454, tmp455, tmp456, tmp457, tmp458, tmp459, tmp460, tmp461, ca_.UncheckedCast<Object>(tmp461));
6604 56 : }
6605 : }
6606 :
6607 112 : if (block30.is_used()) {
6608 56 : compiler::TNode<Context> tmp463;
6609 56 : compiler::TNode<JSReceiver> tmp464;
6610 56 : compiler::TNode<String> tmp465;
6611 56 : compiler::TNode<Number> tmp466;
6612 56 : compiler::TNode<Object> tmp467;
6613 56 : compiler::TNode<Object> tmp468;
6614 56 : compiler::TNode<BuiltinPtr> tmp469;
6615 56 : compiler::TNode<Map> tmp470;
6616 56 : compiler::TNode<UintPtrT> tmp471;
6617 56 : compiler::TNode<IntPtrT> tmp472;
6618 56 : compiler::TNode<IntPtrT> tmp473;
6619 56 : compiler::TNode<BuiltinPtr> tmp474;
6620 56 : compiler::TNode<FixedArray> tmp475;
6621 56 : compiler::TNode<IntPtrT> tmp476;
6622 56 : compiler::TNode<IntPtrT> tmp477;
6623 56 : compiler::TNode<BoolT> tmp478;
6624 56 : compiler::TNode<UintPtrT> tmp479;
6625 56 : compiler::TNode<Object> tmp480;
6626 56 : compiler::TNode<String> tmp481;
6627 56 : compiler::TNode<Object> tmp482;
6628 56 : compiler::TNode<Object> tmp483;
6629 56 : ca_.Bind(&block30, &tmp463, &tmp464, &tmp465, &tmp466, &tmp467, &tmp468, &tmp469, &tmp470, &tmp471, &tmp472, &tmp473, &tmp474, &tmp475, &tmp476, &tmp477, &tmp478, &tmp479, &tmp480, &tmp481, &tmp482, &tmp483);
6630 56 : ca_.Goto(&block28, tmp463, tmp464, tmp465, tmp466, tmp467, tmp468, tmp469, tmp470, tmp471, tmp472, tmp473, tmp474, tmp475, tmp476, tmp477, tmp478, tmp479, tmp480, tmp481, tmp482);
6631 : }
6632 :
6633 112 : if (block29.is_used()) {
6634 56 : compiler::TNode<Context> tmp484;
6635 56 : compiler::TNode<JSReceiver> tmp485;
6636 56 : compiler::TNode<String> tmp486;
6637 56 : compiler::TNode<Number> tmp487;
6638 56 : compiler::TNode<Object> tmp488;
6639 56 : compiler::TNode<Object> tmp489;
6640 56 : compiler::TNode<BuiltinPtr> tmp490;
6641 56 : compiler::TNode<Map> tmp491;
6642 56 : compiler::TNode<UintPtrT> tmp492;
6643 56 : compiler::TNode<IntPtrT> tmp493;
6644 56 : compiler::TNode<IntPtrT> tmp494;
6645 56 : compiler::TNode<BuiltinPtr> tmp495;
6646 56 : compiler::TNode<FixedArray> tmp496;
6647 56 : compiler::TNode<IntPtrT> tmp497;
6648 56 : compiler::TNode<IntPtrT> tmp498;
6649 56 : compiler::TNode<BoolT> tmp499;
6650 56 : compiler::TNode<UintPtrT> tmp500;
6651 56 : compiler::TNode<Object> tmp501;
6652 56 : compiler::TNode<String> tmp502;
6653 56 : compiler::TNode<Object> tmp503;
6654 56 : compiler::TNode<Object> tmp504;
6655 56 : compiler::TNode<Number> tmp505;
6656 56 : ca_.Bind(&block29, &tmp484, &tmp485, &tmp486, &tmp487, &tmp488, &tmp489, &tmp490, &tmp491, &tmp492, &tmp493, &tmp494, &tmp495, &tmp496, &tmp497, &tmp498, &tmp499, &tmp500, &tmp501, &tmp502, &tmp503, &tmp504, &tmp505);
6657 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 302);
6658 56 : compiler::TNode<String> tmp506;
6659 56 : USE(tmp506);
6660 56 : tmp506 = ca_.UncheckedCast<String>(CodeStubAssembler(state_).NumberToString(compiler::TNode<Number>{tmp505}));
6661 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 301);
6662 56 : ca_.Goto(&block27, tmp484, tmp485, tmp486, tmp487, tmp488, tmp489, tmp490, tmp491, tmp492, tmp493, tmp494, tmp495, tmp496, tmp497, tmp498, tmp499, tmp500, tmp501, tmp506, tmp503);
6663 : }
6664 :
6665 112 : if (block28.is_used()) {
6666 56 : compiler::TNode<Context> tmp507;
6667 56 : compiler::TNode<JSReceiver> tmp508;
6668 56 : compiler::TNode<String> tmp509;
6669 56 : compiler::TNode<Number> tmp510;
6670 56 : compiler::TNode<Object> tmp511;
6671 56 : compiler::TNode<Object> tmp512;
6672 56 : compiler::TNode<BuiltinPtr> tmp513;
6673 56 : compiler::TNode<Map> tmp514;
6674 56 : compiler::TNode<UintPtrT> tmp515;
6675 56 : compiler::TNode<IntPtrT> tmp516;
6676 56 : compiler::TNode<IntPtrT> tmp517;
6677 56 : compiler::TNode<BuiltinPtr> tmp518;
6678 56 : compiler::TNode<FixedArray> tmp519;
6679 56 : compiler::TNode<IntPtrT> tmp520;
6680 56 : compiler::TNode<IntPtrT> tmp521;
6681 56 : compiler::TNode<BoolT> tmp522;
6682 56 : compiler::TNode<UintPtrT> tmp523;
6683 56 : compiler::TNode<Object> tmp524;
6684 56 : compiler::TNode<String> tmp525;
6685 56 : compiler::TNode<Object> tmp526;
6686 56 : ca_.Bind(&block28, &tmp507, &tmp508, &tmp509, &tmp510, &tmp511, &tmp512, &tmp513, &tmp514, &tmp515, &tmp516, &tmp517, &tmp518, &tmp519, &tmp520, &tmp521, &tmp522, &tmp523, &tmp524, &tmp525, &tmp526);
6687 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 304);
6688 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 305);
6689 56 : compiler::TNode<BoolT> tmp527;
6690 56 : USE(tmp527);
6691 56 : tmp527 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).IsNullOrUndefined(compiler::TNode<Object>{ca_.UncheckedCast<HeapObject>(tmp526)}));
6692 56 : ca_.Branch(tmp527, &block31, &block32, tmp507, tmp508, tmp509, tmp510, tmp511, tmp512, tmp513, tmp514, tmp515, tmp516, tmp517, tmp518, tmp519, tmp520, tmp521, tmp522, tmp523, tmp524, tmp525, tmp526, ca_.UncheckedCast<HeapObject>(tmp526));
6693 : }
6694 :
6695 112 : if (block31.is_used()) {
6696 56 : compiler::TNode<Context> tmp528;
6697 56 : compiler::TNode<JSReceiver> tmp529;
6698 56 : compiler::TNode<String> tmp530;
6699 56 : compiler::TNode<Number> tmp531;
6700 56 : compiler::TNode<Object> tmp532;
6701 56 : compiler::TNode<Object> tmp533;
6702 56 : compiler::TNode<BuiltinPtr> tmp534;
6703 56 : compiler::TNode<Map> tmp535;
6704 56 : compiler::TNode<UintPtrT> tmp536;
6705 56 : compiler::TNode<IntPtrT> tmp537;
6706 56 : compiler::TNode<IntPtrT> tmp538;
6707 56 : compiler::TNode<BuiltinPtr> tmp539;
6708 56 : compiler::TNode<FixedArray> tmp540;
6709 56 : compiler::TNode<IntPtrT> tmp541;
6710 56 : compiler::TNode<IntPtrT> tmp542;
6711 56 : compiler::TNode<BoolT> tmp543;
6712 56 : compiler::TNode<UintPtrT> tmp544;
6713 56 : compiler::TNode<Object> tmp545;
6714 56 : compiler::TNode<String> tmp546;
6715 56 : compiler::TNode<Object> tmp547;
6716 56 : compiler::TNode<HeapObject> tmp548;
6717 56 : ca_.Bind(&block31, &tmp528, &tmp529, &tmp530, &tmp531, &tmp532, &tmp533, &tmp534, &tmp535, &tmp536, &tmp537, &tmp538, &tmp539, &tmp540, &tmp541, &tmp542, &tmp543, &tmp544, &tmp545, &tmp546, &tmp547, &tmp548);
6718 56 : ca_.Goto(&block9, tmp528, tmp529, tmp530, tmp531, tmp532, tmp533, tmp534, tmp535, tmp536, tmp537, tmp538, tmp539, tmp540, tmp541, tmp542, tmp543, tmp544);
6719 : }
6720 :
6721 112 : if (block32.is_used()) {
6722 56 : compiler::TNode<Context> tmp549;
6723 56 : compiler::TNode<JSReceiver> tmp550;
6724 56 : compiler::TNode<String> tmp551;
6725 56 : compiler::TNode<Number> tmp552;
6726 56 : compiler::TNode<Object> tmp553;
6727 56 : compiler::TNode<Object> tmp554;
6728 56 : compiler::TNode<BuiltinPtr> tmp555;
6729 56 : compiler::TNode<Map> tmp556;
6730 56 : compiler::TNode<UintPtrT> tmp557;
6731 56 : compiler::TNode<IntPtrT> tmp558;
6732 56 : compiler::TNode<IntPtrT> tmp559;
6733 56 : compiler::TNode<BuiltinPtr> tmp560;
6734 56 : compiler::TNode<FixedArray> tmp561;
6735 56 : compiler::TNode<IntPtrT> tmp562;
6736 56 : compiler::TNode<IntPtrT> tmp563;
6737 56 : compiler::TNode<BoolT> tmp564;
6738 56 : compiler::TNode<UintPtrT> tmp565;
6739 56 : compiler::TNode<Object> tmp566;
6740 56 : compiler::TNode<String> tmp567;
6741 56 : compiler::TNode<Object> tmp568;
6742 56 : compiler::TNode<HeapObject> tmp569;
6743 56 : ca_.Bind(&block32, &tmp549, &tmp550, &tmp551, &tmp552, &tmp553, &tmp554, &tmp555, &tmp556, &tmp557, &tmp558, &tmp559, &tmp560, &tmp561, &tmp562, &tmp563, &tmp564, &tmp565, &tmp566, &tmp567, &tmp568, &tmp569);
6744 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 306);
6745 56 : compiler::TNode<String> tmp570;
6746 56 : tmp570 = TORQUE_CAST(CodeStubAssembler(state_).CallBuiltin(Builtins::kToString, tmp549, tmp569));
6747 56 : USE(tmp570);
6748 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 301);
6749 56 : ca_.Goto(&block27, tmp549, tmp550, tmp551, tmp552, tmp553, tmp554, tmp555, tmp556, tmp557, tmp558, tmp559, tmp560, tmp561, tmp562, tmp563, tmp564, tmp565, tmp566, tmp570, tmp568);
6750 : }
6751 :
6752 112 : if (block27.is_used()) {
6753 56 : compiler::TNode<Context> tmp571;
6754 56 : compiler::TNode<JSReceiver> tmp572;
6755 56 : compiler::TNode<String> tmp573;
6756 56 : compiler::TNode<Number> tmp574;
6757 56 : compiler::TNode<Object> tmp575;
6758 56 : compiler::TNode<Object> tmp576;
6759 56 : compiler::TNode<BuiltinPtr> tmp577;
6760 56 : compiler::TNode<Map> tmp578;
6761 56 : compiler::TNode<UintPtrT> tmp579;
6762 56 : compiler::TNode<IntPtrT> tmp580;
6763 56 : compiler::TNode<IntPtrT> tmp581;
6764 56 : compiler::TNode<BuiltinPtr> tmp582;
6765 56 : compiler::TNode<FixedArray> tmp583;
6766 56 : compiler::TNode<IntPtrT> tmp584;
6767 56 : compiler::TNode<IntPtrT> tmp585;
6768 56 : compiler::TNode<BoolT> tmp586;
6769 56 : compiler::TNode<UintPtrT> tmp587;
6770 56 : compiler::TNode<Object> tmp588;
6771 56 : compiler::TNode<String> tmp589;
6772 56 : compiler::TNode<Object> tmp590;
6773 56 : ca_.Bind(&block27, &tmp571, &tmp572, &tmp573, &tmp574, &tmp575, &tmp576, &tmp577, &tmp578, &tmp579, &tmp580, &tmp581, &tmp582, &tmp583, &tmp584, &tmp585, &tmp586, &tmp587, &tmp588, &tmp589, &tmp590);
6774 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 297);
6775 56 : ca_.Goto(&block21, tmp571, tmp572, tmp573, tmp574, tmp575, tmp576, tmp577, tmp578, tmp579, tmp580, tmp581, tmp582, tmp583, tmp584, tmp585, tmp586, tmp587, tmp588, tmp589, tmp590);
6776 : }
6777 :
6778 112 : if (block21.is_used()) {
6779 56 : compiler::TNode<Context> tmp591;
6780 56 : compiler::TNode<JSReceiver> tmp592;
6781 56 : compiler::TNode<String> tmp593;
6782 56 : compiler::TNode<Number> tmp594;
6783 56 : compiler::TNode<Object> tmp595;
6784 56 : compiler::TNode<Object> tmp596;
6785 56 : compiler::TNode<BuiltinPtr> tmp597;
6786 56 : compiler::TNode<Map> tmp598;
6787 56 : compiler::TNode<UintPtrT> tmp599;
6788 56 : compiler::TNode<IntPtrT> tmp600;
6789 56 : compiler::TNode<IntPtrT> tmp601;
6790 56 : compiler::TNode<BuiltinPtr> tmp602;
6791 56 : compiler::TNode<FixedArray> tmp603;
6792 56 : compiler::TNode<IntPtrT> tmp604;
6793 56 : compiler::TNode<IntPtrT> tmp605;
6794 56 : compiler::TNode<BoolT> tmp606;
6795 56 : compiler::TNode<UintPtrT> tmp607;
6796 56 : compiler::TNode<Object> tmp608;
6797 56 : compiler::TNode<String> tmp609;
6798 56 : compiler::TNode<Object> tmp610;
6799 56 : ca_.Bind(&block21, &tmp591, &tmp592, &tmp593, &tmp594, &tmp595, &tmp596, &tmp597, &tmp598, &tmp599, &tmp600, &tmp601, &tmp602, &tmp603, &tmp604, &tmp605, &tmp606, &tmp607, &tmp608, &tmp609, &tmp610);
6800 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 296);
6801 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 292);
6802 56 : ca_.Goto(&block18, tmp591, tmp592, tmp593, tmp594, tmp595, tmp596, tmp597, tmp598, tmp599, tmp600, tmp601, tmp602, tmp603, tmp604, tmp605, tmp606, tmp607, tmp608, tmp609);
6803 : }
6804 :
6805 112 : if (block18.is_used()) {
6806 112 : compiler::TNode<Context> tmp611;
6807 112 : compiler::TNode<JSReceiver> tmp612;
6808 112 : compiler::TNode<String> tmp613;
6809 112 : compiler::TNode<Number> tmp614;
6810 112 : compiler::TNode<Object> tmp615;
6811 112 : compiler::TNode<Object> tmp616;
6812 112 : compiler::TNode<BuiltinPtr> tmp617;
6813 112 : compiler::TNode<Map> tmp618;
6814 112 : compiler::TNode<UintPtrT> tmp619;
6815 112 : compiler::TNode<IntPtrT> tmp620;
6816 112 : compiler::TNode<IntPtrT> tmp621;
6817 112 : compiler::TNode<BuiltinPtr> tmp622;
6818 112 : compiler::TNode<FixedArray> tmp623;
6819 112 : compiler::TNode<IntPtrT> tmp624;
6820 112 : compiler::TNode<IntPtrT> tmp625;
6821 112 : compiler::TNode<BoolT> tmp626;
6822 112 : compiler::TNode<UintPtrT> tmp627;
6823 112 : compiler::TNode<Object> tmp628;
6824 112 : compiler::TNode<String> tmp629;
6825 112 : ca_.Bind(&block18, &tmp611, &tmp612, &tmp613, &tmp614, &tmp615, &tmp616, &tmp617, &tmp618, &tmp619, &tmp620, &tmp621, &tmp622, &tmp623, &tmp624, &tmp625, &tmp626, &tmp627, &tmp628, &tmp629);
6826 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 312);
6827 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 169);
6828 112 : compiler::TNode<IntPtrT> tmp630;
6829 112 : USE(tmp630);
6830 112 : tmp630 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATintptr17ATconstexpr_int31(0));
6831 112 : compiler::TNode<BoolT> tmp631;
6832 112 : USE(tmp631);
6833 112 : tmp631 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).WordEqual(compiler::TNode<IntPtrT>{tmp624}, compiler::TNode<IntPtrT>{tmp630}));
6834 112 : compiler::TNode<IntPtrT> tmp632;
6835 112 : USE(tmp632);
6836 112 : tmp632 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATintptr17ATconstexpr_int31(1));
6837 112 : compiler::TNode<BoolT> tmp633;
6838 112 : USE(tmp633);
6839 112 : tmp633 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).IntPtrGreaterThan(compiler::TNode<IntPtrT>{tmp621}, compiler::TNode<IntPtrT>{tmp632}));
6840 112 : compiler::TNode<BoolT> tmp634;
6841 112 : USE(tmp634);
6842 112 : tmp634 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).Word32Or(compiler::TNode<BoolT>{tmp631}, compiler::TNode<BoolT>{tmp633}));
6843 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 170);
6844 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 181);
6845 112 : compiler::TNode<IntPtrT> tmp635;
6846 112 : USE(tmp635);
6847 112 : tmp635 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATintptr17ATconstexpr_int31(0));
6848 112 : compiler::TNode<BoolT> tmp636;
6849 112 : USE(tmp636);
6850 112 : tmp636 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).WordEqual(compiler::TNode<IntPtrT>{tmp621}, compiler::TNode<IntPtrT>{tmp635}));
6851 112 : ca_.Branch(tmp636, &block35, &block37, tmp611, tmp612, tmp613, tmp614, tmp615, tmp616, tmp617, tmp618, tmp619, tmp620, tmp621, tmp622, tmp623, tmp624, tmp625, tmp626, tmp627, tmp628, tmp629, tmp629, tmp621, tmp620, tmp611, tmp629, tmp621, tmp620, tmp634, tmp621, tmp620, tmp634, tmp611, tmp621, tmp620, tmp634);
6852 : }
6853 :
6854 112 : if (block37.is_used()) {
6855 112 : compiler::TNode<Context> tmp637;
6856 112 : compiler::TNode<JSReceiver> tmp638;
6857 112 : compiler::TNode<String> tmp639;
6858 112 : compiler::TNode<Number> tmp640;
6859 112 : compiler::TNode<Object> tmp641;
6860 112 : compiler::TNode<Object> tmp642;
6861 112 : compiler::TNode<BuiltinPtr> tmp643;
6862 112 : compiler::TNode<Map> tmp644;
6863 112 : compiler::TNode<UintPtrT> tmp645;
6864 112 : compiler::TNode<IntPtrT> tmp646;
6865 112 : compiler::TNode<IntPtrT> tmp647;
6866 112 : compiler::TNode<BuiltinPtr> tmp648;
6867 112 : compiler::TNode<FixedArray> tmp649;
6868 112 : compiler::TNode<IntPtrT> tmp650;
6869 112 : compiler::TNode<IntPtrT> tmp651;
6870 112 : compiler::TNode<BoolT> tmp652;
6871 112 : compiler::TNode<UintPtrT> tmp653;
6872 112 : compiler::TNode<Object> tmp654;
6873 112 : compiler::TNode<String> tmp655;
6874 112 : compiler::TNode<String> tmp656;
6875 112 : compiler::TNode<IntPtrT> tmp657;
6876 112 : compiler::TNode<IntPtrT> tmp658;
6877 112 : compiler::TNode<Context> tmp659;
6878 112 : compiler::TNode<String> tmp660;
6879 112 : compiler::TNode<IntPtrT> tmp661;
6880 112 : compiler::TNode<IntPtrT> tmp662;
6881 112 : compiler::TNode<BoolT> tmp663;
6882 112 : compiler::TNode<IntPtrT> tmp664;
6883 112 : compiler::TNode<IntPtrT> tmp665;
6884 112 : compiler::TNode<BoolT> tmp666;
6885 112 : compiler::TNode<Context> tmp667;
6886 112 : compiler::TNode<IntPtrT> tmp668;
6887 112 : compiler::TNode<IntPtrT> tmp669;
6888 112 : compiler::TNode<BoolT> tmp670;
6889 112 : ca_.Bind(&block37, &tmp637, &tmp638, &tmp639, &tmp640, &tmp641, &tmp642, &tmp643, &tmp644, &tmp645, &tmp646, &tmp647, &tmp648, &tmp649, &tmp650, &tmp651, &tmp652, &tmp653, &tmp654, &tmp655, &tmp656, &tmp657, &tmp658, &tmp659, &tmp660, &tmp661, &tmp662, &tmp663, &tmp664, &tmp665, &tmp666, &tmp667, &tmp668, &tmp669, &tmp670);
6890 112 : compiler::TNode<IntPtrT> tmp671;
6891 112 : USE(tmp671);
6892 112 : tmp671 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATintptr17ATconstexpr_int31(0));
6893 112 : compiler::TNode<BoolT> tmp672;
6894 112 : USE(tmp672);
6895 112 : tmp672 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).WordEqual(compiler::TNode<IntPtrT>{tmp669}, compiler::TNode<IntPtrT>{tmp671}));
6896 112 : ca_.Branch(tmp672, &block35, &block36, tmp637, tmp638, tmp639, tmp640, tmp641, tmp642, tmp643, tmp644, tmp645, tmp646, tmp647, tmp648, tmp649, tmp650, tmp651, tmp652, tmp653, tmp654, tmp655, tmp656, tmp657, tmp658, tmp659, tmp660, tmp661, tmp662, tmp663, tmp664, tmp665, tmp666, tmp667, tmp668, tmp669, tmp670);
6897 : }
6898 :
6899 112 : if (block35.is_used()) {
6900 112 : compiler::TNode<Context> tmp673;
6901 112 : compiler::TNode<JSReceiver> tmp674;
6902 112 : compiler::TNode<String> tmp675;
6903 112 : compiler::TNode<Number> tmp676;
6904 112 : compiler::TNode<Object> tmp677;
6905 112 : compiler::TNode<Object> tmp678;
6906 112 : compiler::TNode<BuiltinPtr> tmp679;
6907 112 : compiler::TNode<Map> tmp680;
6908 112 : compiler::TNode<UintPtrT> tmp681;
6909 112 : compiler::TNode<IntPtrT> tmp682;
6910 112 : compiler::TNode<IntPtrT> tmp683;
6911 112 : compiler::TNode<BuiltinPtr> tmp684;
6912 112 : compiler::TNode<FixedArray> tmp685;
6913 112 : compiler::TNode<IntPtrT> tmp686;
6914 112 : compiler::TNode<IntPtrT> tmp687;
6915 112 : compiler::TNode<BoolT> tmp688;
6916 112 : compiler::TNode<UintPtrT> tmp689;
6917 112 : compiler::TNode<Object> tmp690;
6918 112 : compiler::TNode<String> tmp691;
6919 112 : compiler::TNode<String> tmp692;
6920 112 : compiler::TNode<IntPtrT> tmp693;
6921 112 : compiler::TNode<IntPtrT> tmp694;
6922 112 : compiler::TNode<Context> tmp695;
6923 112 : compiler::TNode<String> tmp696;
6924 112 : compiler::TNode<IntPtrT> tmp697;
6925 112 : compiler::TNode<IntPtrT> tmp698;
6926 112 : compiler::TNode<BoolT> tmp699;
6927 112 : compiler::TNode<IntPtrT> tmp700;
6928 112 : compiler::TNode<IntPtrT> tmp701;
6929 112 : compiler::TNode<BoolT> tmp702;
6930 112 : compiler::TNode<Context> tmp703;
6931 112 : compiler::TNode<IntPtrT> tmp704;
6932 112 : compiler::TNode<IntPtrT> tmp705;
6933 112 : compiler::TNode<BoolT> tmp706;
6934 112 : ca_.Bind(&block35, &tmp673, &tmp674, &tmp675, &tmp676, &tmp677, &tmp678, &tmp679, &tmp680, &tmp681, &tmp682, &tmp683, &tmp684, &tmp685, &tmp686, &tmp687, &tmp688, &tmp689, &tmp690, &tmp691, &tmp692, &tmp693, &tmp694, &tmp695, &tmp696, &tmp697, &tmp698, &tmp699, &tmp700, &tmp701, &tmp702, &tmp703, &tmp704, &tmp705, &tmp706);
6935 112 : ca_.Goto(&block34, tmp673, tmp674, tmp675, tmp676, tmp677, tmp678, tmp679, tmp680, tmp681, tmp682, tmp683, tmp684, tmp685, tmp686, tmp687, tmp688, tmp689, tmp690, tmp691, tmp692, tmp693, tmp694, tmp695, tmp696, tmp697, tmp698, tmp699, tmp700, tmp701, tmp702, tmp703, tmp704, tmp705, tmp706);
6936 : }
6937 :
6938 112 : if (block36.is_used()) {
6939 112 : compiler::TNode<Context> tmp707;
6940 112 : compiler::TNode<JSReceiver> tmp708;
6941 112 : compiler::TNode<String> tmp709;
6942 112 : compiler::TNode<Number> tmp710;
6943 112 : compiler::TNode<Object> tmp711;
6944 112 : compiler::TNode<Object> tmp712;
6945 112 : compiler::TNode<BuiltinPtr> tmp713;
6946 112 : compiler::TNode<Map> tmp714;
6947 112 : compiler::TNode<UintPtrT> tmp715;
6948 112 : compiler::TNode<IntPtrT> tmp716;
6949 112 : compiler::TNode<IntPtrT> tmp717;
6950 112 : compiler::TNode<BuiltinPtr> tmp718;
6951 112 : compiler::TNode<FixedArray> tmp719;
6952 112 : compiler::TNode<IntPtrT> tmp720;
6953 112 : compiler::TNode<IntPtrT> tmp721;
6954 112 : compiler::TNode<BoolT> tmp722;
6955 112 : compiler::TNode<UintPtrT> tmp723;
6956 112 : compiler::TNode<Object> tmp724;
6957 112 : compiler::TNode<String> tmp725;
6958 112 : compiler::TNode<String> tmp726;
6959 112 : compiler::TNode<IntPtrT> tmp727;
6960 112 : compiler::TNode<IntPtrT> tmp728;
6961 112 : compiler::TNode<Context> tmp729;
6962 112 : compiler::TNode<String> tmp730;
6963 112 : compiler::TNode<IntPtrT> tmp731;
6964 112 : compiler::TNode<IntPtrT> tmp732;
6965 112 : compiler::TNode<BoolT> tmp733;
6966 112 : compiler::TNode<IntPtrT> tmp734;
6967 112 : compiler::TNode<IntPtrT> tmp735;
6968 112 : compiler::TNode<BoolT> tmp736;
6969 112 : compiler::TNode<Context> tmp737;
6970 112 : compiler::TNode<IntPtrT> tmp738;
6971 112 : compiler::TNode<IntPtrT> tmp739;
6972 112 : compiler::TNode<BoolT> tmp740;
6973 112 : ca_.Bind(&block36, &tmp707, &tmp708, &tmp709, &tmp710, &tmp711, &tmp712, &tmp713, &tmp714, &tmp715, &tmp716, &tmp717, &tmp718, &tmp719, &tmp720, &tmp721, &tmp722, &tmp723, &tmp724, &tmp725, &tmp726, &tmp727, &tmp728, &tmp729, &tmp730, &tmp731, &tmp732, &tmp733, &tmp734, &tmp735, &tmp736, &tmp737, &tmp738, &tmp739, &tmp740);
6974 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 183);
6975 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 184);
6976 112 : compiler::TNode<IntPtrT> tmp741;
6977 112 : USE(tmp741);
6978 112 : tmp741 = ca_.UncheckedCast<IntPtrT>(CodeStubAssembler(state_).IntPtrMul(compiler::TNode<IntPtrT>{tmp739}, compiler::TNode<IntPtrT>{tmp738}));
6979 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 187);
6980 112 : compiler::TNode<IntPtrT> tmp742;
6981 112 : USE(tmp742);
6982 112 : tmp742 = ca_.UncheckedCast<IntPtrT>(CodeStubAssembler(state_).IntPtrDiv(compiler::TNode<IntPtrT>{tmp741}, compiler::TNode<IntPtrT>{tmp739}));
6983 112 : compiler::TNode<BoolT> tmp743;
6984 112 : USE(tmp743);
6985 112 : tmp743 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).WordNotEqual(compiler::TNode<IntPtrT>{tmp742}, compiler::TNode<IntPtrT>{tmp738}));
6986 112 : ca_.Branch(tmp743, &block38, &block39, tmp707, tmp708, tmp709, tmp710, tmp711, tmp712, tmp713, tmp714, tmp715, tmp716, tmp717, tmp718, tmp719, tmp720, tmp721, tmp722, tmp723, tmp724, tmp725, tmp726, tmp727, tmp728, tmp729, tmp730, tmp731, tmp732, tmp733, tmp734, tmp735, tmp736, tmp737, tmp738, tmp739, tmp740, tmp738, tmp741);
6987 : }
6988 :
6989 112 : if (block38.is_used()) {
6990 112 : compiler::TNode<Context> tmp744;
6991 112 : compiler::TNode<JSReceiver> tmp745;
6992 112 : compiler::TNode<String> tmp746;
6993 112 : compiler::TNode<Number> tmp747;
6994 112 : compiler::TNode<Object> tmp748;
6995 112 : compiler::TNode<Object> tmp749;
6996 112 : compiler::TNode<BuiltinPtr> tmp750;
6997 112 : compiler::TNode<Map> tmp751;
6998 112 : compiler::TNode<UintPtrT> tmp752;
6999 112 : compiler::TNode<IntPtrT> tmp753;
7000 112 : compiler::TNode<IntPtrT> tmp754;
7001 112 : compiler::TNode<BuiltinPtr> tmp755;
7002 112 : compiler::TNode<FixedArray> tmp756;
7003 112 : compiler::TNode<IntPtrT> tmp757;
7004 112 : compiler::TNode<IntPtrT> tmp758;
7005 112 : compiler::TNode<BoolT> tmp759;
7006 112 : compiler::TNode<UintPtrT> tmp760;
7007 112 : compiler::TNode<Object> tmp761;
7008 112 : compiler::TNode<String> tmp762;
7009 112 : compiler::TNode<String> tmp763;
7010 112 : compiler::TNode<IntPtrT> tmp764;
7011 112 : compiler::TNode<IntPtrT> tmp765;
7012 112 : compiler::TNode<Context> tmp766;
7013 112 : compiler::TNode<String> tmp767;
7014 112 : compiler::TNode<IntPtrT> tmp768;
7015 112 : compiler::TNode<IntPtrT> tmp769;
7016 112 : compiler::TNode<BoolT> tmp770;
7017 112 : compiler::TNode<IntPtrT> tmp771;
7018 112 : compiler::TNode<IntPtrT> tmp772;
7019 112 : compiler::TNode<BoolT> tmp773;
7020 112 : compiler::TNode<Context> tmp774;
7021 112 : compiler::TNode<IntPtrT> tmp775;
7022 112 : compiler::TNode<IntPtrT> tmp776;
7023 112 : compiler::TNode<BoolT> tmp777;
7024 112 : compiler::TNode<IntPtrT> tmp778;
7025 112 : compiler::TNode<IntPtrT> tmp779;
7026 112 : ca_.Bind(&block38, &tmp744, &tmp745, &tmp746, &tmp747, &tmp748, &tmp749, &tmp750, &tmp751, &tmp752, &tmp753, &tmp754, &tmp755, &tmp756, &tmp757, &tmp758, &tmp759, &tmp760, &tmp761, &tmp762, &tmp763, &tmp764, &tmp765, &tmp766, &tmp767, &tmp768, &tmp769, &tmp770, &tmp771, &tmp772, &tmp773, &tmp774, &tmp775, &tmp776, &tmp777, &tmp778, &tmp779);
7027 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 188);
7028 112 : CodeStubAssembler(state_).CallRuntime(Runtime::kThrowInvalidStringLength, tmp774);
7029 112 : CodeStubAssembler(state_).Unreachable();
7030 : }
7031 :
7032 112 : if (block39.is_used()) {
7033 112 : compiler::TNode<Context> tmp781;
7034 112 : compiler::TNode<JSReceiver> tmp782;
7035 112 : compiler::TNode<String> tmp783;
7036 112 : compiler::TNode<Number> tmp784;
7037 112 : compiler::TNode<Object> tmp785;
7038 112 : compiler::TNode<Object> tmp786;
7039 112 : compiler::TNode<BuiltinPtr> tmp787;
7040 112 : compiler::TNode<Map> tmp788;
7041 112 : compiler::TNode<UintPtrT> tmp789;
7042 112 : compiler::TNode<IntPtrT> tmp790;
7043 112 : compiler::TNode<IntPtrT> tmp791;
7044 112 : compiler::TNode<BuiltinPtr> tmp792;
7045 112 : compiler::TNode<FixedArray> tmp793;
7046 112 : compiler::TNode<IntPtrT> tmp794;
7047 112 : compiler::TNode<IntPtrT> tmp795;
7048 112 : compiler::TNode<BoolT> tmp796;
7049 112 : compiler::TNode<UintPtrT> tmp797;
7050 112 : compiler::TNode<Object> tmp798;
7051 112 : compiler::TNode<String> tmp799;
7052 112 : compiler::TNode<String> tmp800;
7053 112 : compiler::TNode<IntPtrT> tmp801;
7054 112 : compiler::TNode<IntPtrT> tmp802;
7055 112 : compiler::TNode<Context> tmp803;
7056 112 : compiler::TNode<String> tmp804;
7057 112 : compiler::TNode<IntPtrT> tmp805;
7058 112 : compiler::TNode<IntPtrT> tmp806;
7059 112 : compiler::TNode<BoolT> tmp807;
7060 112 : compiler::TNode<IntPtrT> tmp808;
7061 112 : compiler::TNode<IntPtrT> tmp809;
7062 112 : compiler::TNode<BoolT> tmp810;
7063 112 : compiler::TNode<Context> tmp811;
7064 112 : compiler::TNode<IntPtrT> tmp812;
7065 112 : compiler::TNode<IntPtrT> tmp813;
7066 112 : compiler::TNode<BoolT> tmp814;
7067 112 : compiler::TNode<IntPtrT> tmp815;
7068 112 : compiler::TNode<IntPtrT> tmp816;
7069 112 : ca_.Bind(&block39, &tmp781, &tmp782, &tmp783, &tmp784, &tmp785, &tmp786, &tmp787, &tmp788, &tmp789, &tmp790, &tmp791, &tmp792, &tmp793, &tmp794, &tmp795, &tmp796, &tmp797, &tmp798, &tmp799, &tmp800, &tmp801, &tmp802, &tmp803, &tmp804, &tmp805, &tmp806, &tmp807, &tmp808, &tmp809, &tmp810, &tmp811, &tmp812, &tmp813, &tmp814, &tmp815, &tmp816);
7070 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 191);
7071 112 : compiler::TNode<IntPtrT> tmp817;
7072 112 : USE(tmp817);
7073 112 : tmp817 = ca_.UncheckedCast<IntPtrT>(ArrayJoinBuiltinsFromDSLAssembler(state_).AddStringLength(compiler::TNode<Context>{tmp811}, compiler::TNode<IntPtrT>{tmp795}, compiler::TNode<IntPtrT>{tmp816}));
7074 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 192);
7075 112 : ca_.Branch(tmp814, &block40, &block41, tmp781, tmp782, tmp783, tmp784, tmp785, tmp786, tmp787, tmp788, tmp789, tmp790, tmp791, tmp792, tmp793, tmp794, tmp817, tmp796, tmp797, tmp798, tmp799, tmp800, tmp801, tmp802, tmp803, tmp804, tmp805, tmp806, tmp807, tmp808, tmp809, tmp810, tmp811, tmp812, tmp813, tmp814, tmp815, tmp816);
7076 : }
7077 :
7078 112 : if (block40.is_used()) {
7079 112 : compiler::TNode<Context> tmp818;
7080 112 : compiler::TNode<JSReceiver> tmp819;
7081 112 : compiler::TNode<String> tmp820;
7082 112 : compiler::TNode<Number> tmp821;
7083 112 : compiler::TNode<Object> tmp822;
7084 112 : compiler::TNode<Object> tmp823;
7085 112 : compiler::TNode<BuiltinPtr> tmp824;
7086 112 : compiler::TNode<Map> tmp825;
7087 112 : compiler::TNode<UintPtrT> tmp826;
7088 112 : compiler::TNode<IntPtrT> tmp827;
7089 112 : compiler::TNode<IntPtrT> tmp828;
7090 112 : compiler::TNode<BuiltinPtr> tmp829;
7091 112 : compiler::TNode<FixedArray> tmp830;
7092 112 : compiler::TNode<IntPtrT> tmp831;
7093 112 : compiler::TNode<IntPtrT> tmp832;
7094 112 : compiler::TNode<BoolT> tmp833;
7095 112 : compiler::TNode<UintPtrT> tmp834;
7096 112 : compiler::TNode<Object> tmp835;
7097 112 : compiler::TNode<String> tmp836;
7098 112 : compiler::TNode<String> tmp837;
7099 112 : compiler::TNode<IntPtrT> tmp838;
7100 112 : compiler::TNode<IntPtrT> tmp839;
7101 112 : compiler::TNode<Context> tmp840;
7102 112 : compiler::TNode<String> tmp841;
7103 112 : compiler::TNode<IntPtrT> tmp842;
7104 112 : compiler::TNode<IntPtrT> tmp843;
7105 112 : compiler::TNode<BoolT> tmp844;
7106 112 : compiler::TNode<IntPtrT> tmp845;
7107 112 : compiler::TNode<IntPtrT> tmp846;
7108 112 : compiler::TNode<BoolT> tmp847;
7109 112 : compiler::TNode<Context> tmp848;
7110 112 : compiler::TNode<IntPtrT> tmp849;
7111 112 : compiler::TNode<IntPtrT> tmp850;
7112 112 : compiler::TNode<BoolT> tmp851;
7113 112 : compiler::TNode<IntPtrT> tmp852;
7114 112 : compiler::TNode<IntPtrT> tmp853;
7115 112 : ca_.Bind(&block40, &tmp818, &tmp819, &tmp820, &tmp821, &tmp822, &tmp823, &tmp824, &tmp825, &tmp826, &tmp827, &tmp828, &tmp829, &tmp830, &tmp831, &tmp832, &tmp833, &tmp834, &tmp835, &tmp836, &tmp837, &tmp838, &tmp839, &tmp840, &tmp841, &tmp842, &tmp843, &tmp844, &tmp845, &tmp846, &tmp847, &tmp848, &tmp849, &tmp850, &tmp851, &tmp852, &tmp853);
7116 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 194);
7117 112 : compiler::TNode<IntPtrT> tmp854;
7118 112 : USE(tmp854);
7119 112 : tmp854 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATintptr17ATconstexpr_int31(1));
7120 112 : compiler::TNode<IntPtrT> tmp855;
7121 112 : USE(tmp855);
7122 112 : tmp855 = ca_.UncheckedCast<IntPtrT>(CodeStubAssembler(state_).IntPtrAdd(compiler::TNode<IntPtrT>{tmp831}, compiler::TNode<IntPtrT>{tmp854}));
7123 112 : compiler::TNode<Smi> tmp856;
7124 112 : USE(tmp856);
7125 112 : tmp856 = ca_.UncheckedCast<Smi>(BaseBuiltinsFromDSLAssembler(state_).Convert5ATSmi8ATintptr(compiler::TNode<IntPtrT>{tmp852}));
7126 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 193);
7127 112 : compiler::TNode<FixedArray> tmp857;
7128 112 : USE(tmp857);
7129 112 : tmp857 = ca_.UncheckedCast<FixedArray>(ArrayJoinBuiltinsFromDSLAssembler(state_).StoreAndGrowFixedArray5ATSmi(compiler::TNode<FixedArray>{tmp830}, compiler::TNode<IntPtrT>{tmp831}, compiler::TNode<Smi>{tmp856}));
7130 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 192);
7131 112 : ca_.Goto(&block41, tmp818, tmp819, tmp820, tmp821, tmp822, tmp823, tmp824, tmp825, tmp826, tmp827, tmp828, tmp829, tmp857, tmp855, tmp832, tmp833, tmp834, tmp835, tmp836, tmp837, tmp838, tmp839, tmp840, tmp841, tmp842, tmp843, tmp844, tmp845, tmp846, tmp847, tmp848, tmp849, tmp850, tmp851, tmp852, tmp853);
7132 : }
7133 :
7134 112 : if (block41.is_used()) {
7135 112 : compiler::TNode<Context> tmp858;
7136 112 : compiler::TNode<JSReceiver> tmp859;
7137 112 : compiler::TNode<String> tmp860;
7138 112 : compiler::TNode<Number> tmp861;
7139 112 : compiler::TNode<Object> tmp862;
7140 112 : compiler::TNode<Object> tmp863;
7141 112 : compiler::TNode<BuiltinPtr> tmp864;
7142 112 : compiler::TNode<Map> tmp865;
7143 112 : compiler::TNode<UintPtrT> tmp866;
7144 112 : compiler::TNode<IntPtrT> tmp867;
7145 112 : compiler::TNode<IntPtrT> tmp868;
7146 112 : compiler::TNode<BuiltinPtr> tmp869;
7147 112 : compiler::TNode<FixedArray> tmp870;
7148 112 : compiler::TNode<IntPtrT> tmp871;
7149 112 : compiler::TNode<IntPtrT> tmp872;
7150 112 : compiler::TNode<BoolT> tmp873;
7151 112 : compiler::TNode<UintPtrT> tmp874;
7152 112 : compiler::TNode<Object> tmp875;
7153 112 : compiler::TNode<String> tmp876;
7154 112 : compiler::TNode<String> tmp877;
7155 112 : compiler::TNode<IntPtrT> tmp878;
7156 112 : compiler::TNode<IntPtrT> tmp879;
7157 112 : compiler::TNode<Context> tmp880;
7158 112 : compiler::TNode<String> tmp881;
7159 112 : compiler::TNode<IntPtrT> tmp882;
7160 112 : compiler::TNode<IntPtrT> tmp883;
7161 112 : compiler::TNode<BoolT> tmp884;
7162 112 : compiler::TNode<IntPtrT> tmp885;
7163 112 : compiler::TNode<IntPtrT> tmp886;
7164 112 : compiler::TNode<BoolT> tmp887;
7165 112 : compiler::TNode<Context> tmp888;
7166 112 : compiler::TNode<IntPtrT> tmp889;
7167 112 : compiler::TNode<IntPtrT> tmp890;
7168 112 : compiler::TNode<BoolT> tmp891;
7169 112 : compiler::TNode<IntPtrT> tmp892;
7170 112 : compiler::TNode<IntPtrT> tmp893;
7171 112 : ca_.Bind(&block41, &tmp858, &tmp859, &tmp860, &tmp861, &tmp862, &tmp863, &tmp864, &tmp865, &tmp866, &tmp867, &tmp868, &tmp869, &tmp870, &tmp871, &tmp872, &tmp873, &tmp874, &tmp875, &tmp876, &tmp877, &tmp878, &tmp879, &tmp880, &tmp881, &tmp882, &tmp883, &tmp884, &tmp885, &tmp886, &tmp887, &tmp888, &tmp889, &tmp890, &tmp891, &tmp892, &tmp893);
7172 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 180);
7173 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 170);
7174 112 : ca_.Goto(&block34, tmp858, tmp859, tmp860, tmp861, tmp862, tmp863, tmp864, tmp865, tmp866, tmp867, tmp868, tmp869, tmp870, tmp871, tmp872, tmp873, tmp874, tmp875, tmp876, tmp877, tmp878, tmp879, tmp880, tmp881, tmp882, tmp883, tmp884, tmp885, tmp886, tmp887, tmp888, tmp889, tmp890, tmp891);
7175 : }
7176 :
7177 112 : if (block34.is_used()) {
7178 112 : compiler::TNode<Context> tmp894;
7179 112 : compiler::TNode<JSReceiver> tmp895;
7180 112 : compiler::TNode<String> tmp896;
7181 112 : compiler::TNode<Number> tmp897;
7182 112 : compiler::TNode<Object> tmp898;
7183 112 : compiler::TNode<Object> tmp899;
7184 112 : compiler::TNode<BuiltinPtr> tmp900;
7185 112 : compiler::TNode<Map> tmp901;
7186 112 : compiler::TNode<UintPtrT> tmp902;
7187 112 : compiler::TNode<IntPtrT> tmp903;
7188 112 : compiler::TNode<IntPtrT> tmp904;
7189 112 : compiler::TNode<BuiltinPtr> tmp905;
7190 112 : compiler::TNode<FixedArray> tmp906;
7191 112 : compiler::TNode<IntPtrT> tmp907;
7192 112 : compiler::TNode<IntPtrT> tmp908;
7193 112 : compiler::TNode<BoolT> tmp909;
7194 112 : compiler::TNode<UintPtrT> tmp910;
7195 112 : compiler::TNode<Object> tmp911;
7196 112 : compiler::TNode<String> tmp912;
7197 112 : compiler::TNode<String> tmp913;
7198 112 : compiler::TNode<IntPtrT> tmp914;
7199 112 : compiler::TNode<IntPtrT> tmp915;
7200 112 : compiler::TNode<Context> tmp916;
7201 112 : compiler::TNode<String> tmp917;
7202 112 : compiler::TNode<IntPtrT> tmp918;
7203 112 : compiler::TNode<IntPtrT> tmp919;
7204 112 : compiler::TNode<BoolT> tmp920;
7205 112 : compiler::TNode<IntPtrT> tmp921;
7206 112 : compiler::TNode<IntPtrT> tmp922;
7207 112 : compiler::TNode<BoolT> tmp923;
7208 112 : compiler::TNode<Context> tmp924;
7209 112 : compiler::TNode<IntPtrT> tmp925;
7210 112 : compiler::TNode<IntPtrT> tmp926;
7211 112 : compiler::TNode<BoolT> tmp927;
7212 112 : ca_.Bind(&block34, &tmp894, &tmp895, &tmp896, &tmp897, &tmp898, &tmp899, &tmp900, &tmp901, &tmp902, &tmp903, &tmp904, &tmp905, &tmp906, &tmp907, &tmp908, &tmp909, &tmp910, &tmp911, &tmp912, &tmp913, &tmp914, &tmp915, &tmp916, &tmp917, &tmp918, &tmp919, &tmp920, &tmp921, &tmp922, &tmp923, &tmp924, &tmp925, &tmp926, &tmp927);
7213 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 173);
7214 112 : compiler::TNode<IntPtrT> tmp928;
7215 112 : USE(tmp928);
7216 112 : tmp928 = ca_.UncheckedCast<IntPtrT>(CodeStubAssembler(state_).LoadStringLengthAsWord(compiler::TNode<String>{tmp917}));
7217 112 : compiler::TNode<IntPtrT> tmp929;
7218 112 : USE(tmp929);
7219 112 : tmp929 = ca_.UncheckedCast<IntPtrT>(ArrayJoinBuiltinsFromDSLAssembler(state_).AddStringLength(compiler::TNode<Context>{tmp916}, compiler::TNode<IntPtrT>{tmp908}, compiler::TNode<IntPtrT>{tmp928}));
7220 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 172);
7221 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 175);
7222 112 : compiler::TNode<IntPtrT> tmp930;
7223 112 : USE(tmp930);
7224 112 : tmp930 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATintptr17ATconstexpr_int31(1));
7225 112 : compiler::TNode<IntPtrT> tmp931;
7226 112 : USE(tmp931);
7227 112 : tmp931 = ca_.UncheckedCast<IntPtrT>(CodeStubAssembler(state_).IntPtrAdd(compiler::TNode<IntPtrT>{tmp907}, compiler::TNode<IntPtrT>{tmp930}));
7228 112 : compiler::TNode<FixedArray> tmp932;
7229 112 : USE(tmp932);
7230 112 : tmp932 = ca_.UncheckedCast<FixedArray>(ArrayJoinBuiltinsFromDSLAssembler(state_).StoreAndGrowFixedArray8ATString(compiler::TNode<FixedArray>{tmp906}, compiler::TNode<IntPtrT>{tmp907}, compiler::TNode<String>{tmp917}));
7231 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 174);
7232 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 176);
7233 112 : compiler::TNode<Int32T> tmp933;
7234 112 : USE(tmp933);
7235 112 : tmp933 = ca_.UncheckedCast<Int32T>(CodeStubAssembler(state_).LoadInstanceType(compiler::TNode<HeapObject>{tmp917}));
7236 112 : compiler::TNode<BoolT> tmp934;
7237 112 : USE(tmp934);
7238 112 : tmp934 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).HasOnlyOneByteChars(compiler::TNode<Int32T>{tmp933}));
7239 112 : compiler::TNode<BoolT> tmp935;
7240 112 : USE(tmp935);
7241 112 : tmp935 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).Word32And(compiler::TNode<BoolT>{tmp934}, compiler::TNode<BoolT>{tmp909}));
7242 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 167);
7243 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 312);
7244 112 : ca_.Goto(&block33, tmp894, tmp895, tmp896, tmp897, tmp898, tmp899, tmp900, tmp901, tmp902, tmp903, tmp904, tmp905, tmp932, tmp931, tmp929, tmp935, tmp910, tmp911, tmp912, tmp913, tmp914, tmp915, tmp916, tmp917, tmp918, tmp919);
7245 : }
7246 :
7247 112 : if (block33.is_used()) {
7248 112 : compiler::TNode<Context> tmp936;
7249 112 : compiler::TNode<JSReceiver> tmp937;
7250 112 : compiler::TNode<String> tmp938;
7251 112 : compiler::TNode<Number> tmp939;
7252 112 : compiler::TNode<Object> tmp940;
7253 112 : compiler::TNode<Object> tmp941;
7254 112 : compiler::TNode<BuiltinPtr> tmp942;
7255 112 : compiler::TNode<Map> tmp943;
7256 112 : compiler::TNode<UintPtrT> tmp944;
7257 112 : compiler::TNode<IntPtrT> tmp945;
7258 112 : compiler::TNode<IntPtrT> tmp946;
7259 112 : compiler::TNode<BuiltinPtr> tmp947;
7260 112 : compiler::TNode<FixedArray> tmp948;
7261 112 : compiler::TNode<IntPtrT> tmp949;
7262 112 : compiler::TNode<IntPtrT> tmp950;
7263 112 : compiler::TNode<BoolT> tmp951;
7264 112 : compiler::TNode<UintPtrT> tmp952;
7265 112 : compiler::TNode<Object> tmp953;
7266 112 : compiler::TNode<String> tmp954;
7267 112 : compiler::TNode<String> tmp955;
7268 112 : compiler::TNode<IntPtrT> tmp956;
7269 112 : compiler::TNode<IntPtrT> tmp957;
7270 112 : compiler::TNode<Context> tmp958;
7271 112 : compiler::TNode<String> tmp959;
7272 112 : compiler::TNode<IntPtrT> tmp960;
7273 112 : compiler::TNode<IntPtrT> tmp961;
7274 112 : ca_.Bind(&block33, &tmp936, &tmp937, &tmp938, &tmp939, &tmp940, &tmp941, &tmp942, &tmp943, &tmp944, &tmp945, &tmp946, &tmp947, &tmp948, &tmp949, &tmp950, &tmp951, &tmp952, &tmp953, &tmp954, &tmp955, &tmp956, &tmp957, &tmp958, &tmp959, &tmp960, &tmp961);
7275 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 313);
7276 112 : compiler::TNode<IntPtrT> tmp962;
7277 112 : USE(tmp962);
7278 112 : tmp962 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATintptr17ATconstexpr_int31(0));
7279 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 274);
7280 112 : ca_.Goto(&block9, tmp936, tmp937, tmp938, tmp939, tmp940, tmp941, tmp942, tmp943, tmp944, tmp945, tmp962, tmp947, tmp948, tmp949, tmp950, tmp951, tmp952);
7281 : }
7282 :
7283 112 : if (block8.is_used()) {
7284 112 : compiler::TNode<Context> tmp963;
7285 112 : compiler::TNode<JSReceiver> tmp964;
7286 112 : compiler::TNode<String> tmp965;
7287 112 : compiler::TNode<Number> tmp966;
7288 112 : compiler::TNode<Object> tmp967;
7289 112 : compiler::TNode<Object> tmp968;
7290 112 : compiler::TNode<BuiltinPtr> tmp969;
7291 112 : compiler::TNode<Map> tmp970;
7292 112 : compiler::TNode<UintPtrT> tmp971;
7293 112 : compiler::TNode<IntPtrT> tmp972;
7294 112 : compiler::TNode<IntPtrT> tmp973;
7295 112 : compiler::TNode<BuiltinPtr> tmp974;
7296 112 : compiler::TNode<FixedArray> tmp975;
7297 112 : compiler::TNode<IntPtrT> tmp976;
7298 112 : compiler::TNode<IntPtrT> tmp977;
7299 112 : compiler::TNode<BoolT> tmp978;
7300 112 : compiler::TNode<UintPtrT> tmp979;
7301 112 : ca_.Bind(&block8, &tmp963, &tmp964, &tmp965, &tmp966, &tmp967, &tmp968, &tmp969, &tmp970, &tmp971, &tmp972, &tmp973, &tmp974, &tmp975, &tmp976, &tmp977, &tmp978, &tmp979);
7302 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 317);
7303 112 : compiler::TNode<BoolT> tmp980;
7304 112 : USE(tmp980);
7305 112 : tmp980 = ca_.UncheckedCast<BoolT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr6ATbool16ATconstexpr_bool(true));
7306 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 181);
7307 112 : compiler::TNode<IntPtrT> tmp981;
7308 112 : USE(tmp981);
7309 112 : tmp981 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATintptr17ATconstexpr_int31(0));
7310 112 : compiler::TNode<BoolT> tmp982;
7311 112 : USE(tmp982);
7312 112 : tmp982 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).WordEqual(compiler::TNode<IntPtrT>{tmp973}, compiler::TNode<IntPtrT>{tmp981}));
7313 112 : ca_.Branch(tmp982, &block43, &block45, tmp963, tmp964, tmp965, tmp966, tmp967, tmp968, tmp969, tmp970, tmp971, tmp972, tmp973, tmp974, tmp975, tmp976, tmp977, tmp978, tmp979, tmp973, tmp972, tmp963, tmp973, tmp972, tmp980);
7314 : }
7315 :
7316 112 : if (block45.is_used()) {
7317 112 : compiler::TNode<Context> tmp983;
7318 112 : compiler::TNode<JSReceiver> tmp984;
7319 112 : compiler::TNode<String> tmp985;
7320 112 : compiler::TNode<Number> tmp986;
7321 112 : compiler::TNode<Object> tmp987;
7322 112 : compiler::TNode<Object> tmp988;
7323 112 : compiler::TNode<BuiltinPtr> tmp989;
7324 112 : compiler::TNode<Map> tmp990;
7325 112 : compiler::TNode<UintPtrT> tmp991;
7326 112 : compiler::TNode<IntPtrT> tmp992;
7327 112 : compiler::TNode<IntPtrT> tmp993;
7328 112 : compiler::TNode<BuiltinPtr> tmp994;
7329 112 : compiler::TNode<FixedArray> tmp995;
7330 112 : compiler::TNode<IntPtrT> tmp996;
7331 112 : compiler::TNode<IntPtrT> tmp997;
7332 112 : compiler::TNode<BoolT> tmp998;
7333 112 : compiler::TNode<UintPtrT> tmp999;
7334 112 : compiler::TNode<IntPtrT> tmp1000;
7335 112 : compiler::TNode<IntPtrT> tmp1001;
7336 112 : compiler::TNode<Context> tmp1002;
7337 112 : compiler::TNode<IntPtrT> tmp1003;
7338 112 : compiler::TNode<IntPtrT> tmp1004;
7339 112 : compiler::TNode<BoolT> tmp1005;
7340 112 : ca_.Bind(&block45, &tmp983, &tmp984, &tmp985, &tmp986, &tmp987, &tmp988, &tmp989, &tmp990, &tmp991, &tmp992, &tmp993, &tmp994, &tmp995, &tmp996, &tmp997, &tmp998, &tmp999, &tmp1000, &tmp1001, &tmp1002, &tmp1003, &tmp1004, &tmp1005);
7341 112 : compiler::TNode<IntPtrT> tmp1006;
7342 112 : USE(tmp1006);
7343 112 : tmp1006 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATintptr17ATconstexpr_int31(0));
7344 112 : compiler::TNode<BoolT> tmp1007;
7345 112 : USE(tmp1007);
7346 112 : tmp1007 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).WordEqual(compiler::TNode<IntPtrT>{tmp1004}, compiler::TNode<IntPtrT>{tmp1006}));
7347 112 : ca_.Branch(tmp1007, &block43, &block44, tmp983, tmp984, tmp985, tmp986, tmp987, tmp988, tmp989, tmp990, tmp991, tmp992, tmp993, tmp994, tmp995, tmp996, tmp997, tmp998, tmp999, tmp1000, tmp1001, tmp1002, tmp1003, tmp1004, tmp1005);
7348 : }
7349 :
7350 112 : if (block43.is_used()) {
7351 112 : compiler::TNode<Context> tmp1008;
7352 112 : compiler::TNode<JSReceiver> tmp1009;
7353 112 : compiler::TNode<String> tmp1010;
7354 112 : compiler::TNode<Number> tmp1011;
7355 112 : compiler::TNode<Object> tmp1012;
7356 112 : compiler::TNode<Object> tmp1013;
7357 112 : compiler::TNode<BuiltinPtr> tmp1014;
7358 112 : compiler::TNode<Map> tmp1015;
7359 112 : compiler::TNode<UintPtrT> tmp1016;
7360 112 : compiler::TNode<IntPtrT> tmp1017;
7361 112 : compiler::TNode<IntPtrT> tmp1018;
7362 112 : compiler::TNode<BuiltinPtr> tmp1019;
7363 112 : compiler::TNode<FixedArray> tmp1020;
7364 112 : compiler::TNode<IntPtrT> tmp1021;
7365 112 : compiler::TNode<IntPtrT> tmp1022;
7366 112 : compiler::TNode<BoolT> tmp1023;
7367 112 : compiler::TNode<UintPtrT> tmp1024;
7368 112 : compiler::TNode<IntPtrT> tmp1025;
7369 112 : compiler::TNode<IntPtrT> tmp1026;
7370 112 : compiler::TNode<Context> tmp1027;
7371 112 : compiler::TNode<IntPtrT> tmp1028;
7372 112 : compiler::TNode<IntPtrT> tmp1029;
7373 112 : compiler::TNode<BoolT> tmp1030;
7374 112 : ca_.Bind(&block43, &tmp1008, &tmp1009, &tmp1010, &tmp1011, &tmp1012, &tmp1013, &tmp1014, &tmp1015, &tmp1016, &tmp1017, &tmp1018, &tmp1019, &tmp1020, &tmp1021, &tmp1022, &tmp1023, &tmp1024, &tmp1025, &tmp1026, &tmp1027, &tmp1028, &tmp1029, &tmp1030);
7375 112 : ca_.Goto(&block42, tmp1008, tmp1009, tmp1010, tmp1011, tmp1012, tmp1013, tmp1014, tmp1015, tmp1016, tmp1017, tmp1018, tmp1019, tmp1020, tmp1021, tmp1022, tmp1023, tmp1024, tmp1025, tmp1026, tmp1027, tmp1028, tmp1029, tmp1030);
7376 : }
7377 :
7378 112 : if (block44.is_used()) {
7379 112 : compiler::TNode<Context> tmp1031;
7380 112 : compiler::TNode<JSReceiver> tmp1032;
7381 112 : compiler::TNode<String> tmp1033;
7382 112 : compiler::TNode<Number> tmp1034;
7383 112 : compiler::TNode<Object> tmp1035;
7384 112 : compiler::TNode<Object> tmp1036;
7385 112 : compiler::TNode<BuiltinPtr> tmp1037;
7386 112 : compiler::TNode<Map> tmp1038;
7387 112 : compiler::TNode<UintPtrT> tmp1039;
7388 112 : compiler::TNode<IntPtrT> tmp1040;
7389 112 : compiler::TNode<IntPtrT> tmp1041;
7390 112 : compiler::TNode<BuiltinPtr> tmp1042;
7391 112 : compiler::TNode<FixedArray> tmp1043;
7392 112 : compiler::TNode<IntPtrT> tmp1044;
7393 112 : compiler::TNode<IntPtrT> tmp1045;
7394 112 : compiler::TNode<BoolT> tmp1046;
7395 112 : compiler::TNode<UintPtrT> tmp1047;
7396 112 : compiler::TNode<IntPtrT> tmp1048;
7397 112 : compiler::TNode<IntPtrT> tmp1049;
7398 112 : compiler::TNode<Context> tmp1050;
7399 112 : compiler::TNode<IntPtrT> tmp1051;
7400 112 : compiler::TNode<IntPtrT> tmp1052;
7401 112 : compiler::TNode<BoolT> tmp1053;
7402 112 : ca_.Bind(&block44, &tmp1031, &tmp1032, &tmp1033, &tmp1034, &tmp1035, &tmp1036, &tmp1037, &tmp1038, &tmp1039, &tmp1040, &tmp1041, &tmp1042, &tmp1043, &tmp1044, &tmp1045, &tmp1046, &tmp1047, &tmp1048, &tmp1049, &tmp1050, &tmp1051, &tmp1052, &tmp1053);
7403 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 183);
7404 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 184);
7405 112 : compiler::TNode<IntPtrT> tmp1054;
7406 112 : USE(tmp1054);
7407 112 : tmp1054 = ca_.UncheckedCast<IntPtrT>(CodeStubAssembler(state_).IntPtrMul(compiler::TNode<IntPtrT>{tmp1052}, compiler::TNode<IntPtrT>{tmp1051}));
7408 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 187);
7409 112 : compiler::TNode<IntPtrT> tmp1055;
7410 112 : USE(tmp1055);
7411 112 : tmp1055 = ca_.UncheckedCast<IntPtrT>(CodeStubAssembler(state_).IntPtrDiv(compiler::TNode<IntPtrT>{tmp1054}, compiler::TNode<IntPtrT>{tmp1052}));
7412 112 : compiler::TNode<BoolT> tmp1056;
7413 112 : USE(tmp1056);
7414 112 : tmp1056 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).WordNotEqual(compiler::TNode<IntPtrT>{tmp1055}, compiler::TNode<IntPtrT>{tmp1051}));
7415 112 : ca_.Branch(tmp1056, &block46, &block47, tmp1031, tmp1032, tmp1033, tmp1034, tmp1035, tmp1036, tmp1037, tmp1038, tmp1039, tmp1040, tmp1041, tmp1042, tmp1043, tmp1044, tmp1045, tmp1046, tmp1047, tmp1048, tmp1049, tmp1050, tmp1051, tmp1052, tmp1053, tmp1051, tmp1054);
7416 : }
7417 :
7418 112 : if (block46.is_used()) {
7419 112 : compiler::TNode<Context> tmp1057;
7420 112 : compiler::TNode<JSReceiver> tmp1058;
7421 112 : compiler::TNode<String> tmp1059;
7422 112 : compiler::TNode<Number> tmp1060;
7423 112 : compiler::TNode<Object> tmp1061;
7424 112 : compiler::TNode<Object> tmp1062;
7425 112 : compiler::TNode<BuiltinPtr> tmp1063;
7426 112 : compiler::TNode<Map> tmp1064;
7427 112 : compiler::TNode<UintPtrT> tmp1065;
7428 112 : compiler::TNode<IntPtrT> tmp1066;
7429 112 : compiler::TNode<IntPtrT> tmp1067;
7430 112 : compiler::TNode<BuiltinPtr> tmp1068;
7431 112 : compiler::TNode<FixedArray> tmp1069;
7432 112 : compiler::TNode<IntPtrT> tmp1070;
7433 112 : compiler::TNode<IntPtrT> tmp1071;
7434 112 : compiler::TNode<BoolT> tmp1072;
7435 112 : compiler::TNode<UintPtrT> tmp1073;
7436 112 : compiler::TNode<IntPtrT> tmp1074;
7437 112 : compiler::TNode<IntPtrT> tmp1075;
7438 112 : compiler::TNode<Context> tmp1076;
7439 112 : compiler::TNode<IntPtrT> tmp1077;
7440 112 : compiler::TNode<IntPtrT> tmp1078;
7441 112 : compiler::TNode<BoolT> tmp1079;
7442 112 : compiler::TNode<IntPtrT> tmp1080;
7443 112 : compiler::TNode<IntPtrT> tmp1081;
7444 112 : ca_.Bind(&block46, &tmp1057, &tmp1058, &tmp1059, &tmp1060, &tmp1061, &tmp1062, &tmp1063, &tmp1064, &tmp1065, &tmp1066, &tmp1067, &tmp1068, &tmp1069, &tmp1070, &tmp1071, &tmp1072, &tmp1073, &tmp1074, &tmp1075, &tmp1076, &tmp1077, &tmp1078, &tmp1079, &tmp1080, &tmp1081);
7445 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 188);
7446 112 : CodeStubAssembler(state_).CallRuntime(Runtime::kThrowInvalidStringLength, tmp1076);
7447 112 : CodeStubAssembler(state_).Unreachable();
7448 : }
7449 :
7450 112 : if (block47.is_used()) {
7451 112 : compiler::TNode<Context> tmp1083;
7452 112 : compiler::TNode<JSReceiver> tmp1084;
7453 112 : compiler::TNode<String> tmp1085;
7454 112 : compiler::TNode<Number> tmp1086;
7455 112 : compiler::TNode<Object> tmp1087;
7456 112 : compiler::TNode<Object> tmp1088;
7457 112 : compiler::TNode<BuiltinPtr> tmp1089;
7458 112 : compiler::TNode<Map> tmp1090;
7459 112 : compiler::TNode<UintPtrT> tmp1091;
7460 112 : compiler::TNode<IntPtrT> tmp1092;
7461 112 : compiler::TNode<IntPtrT> tmp1093;
7462 112 : compiler::TNode<BuiltinPtr> tmp1094;
7463 112 : compiler::TNode<FixedArray> tmp1095;
7464 112 : compiler::TNode<IntPtrT> tmp1096;
7465 112 : compiler::TNode<IntPtrT> tmp1097;
7466 112 : compiler::TNode<BoolT> tmp1098;
7467 112 : compiler::TNode<UintPtrT> tmp1099;
7468 112 : compiler::TNode<IntPtrT> tmp1100;
7469 112 : compiler::TNode<IntPtrT> tmp1101;
7470 112 : compiler::TNode<Context> tmp1102;
7471 112 : compiler::TNode<IntPtrT> tmp1103;
7472 112 : compiler::TNode<IntPtrT> tmp1104;
7473 112 : compiler::TNode<BoolT> tmp1105;
7474 112 : compiler::TNode<IntPtrT> tmp1106;
7475 112 : compiler::TNode<IntPtrT> tmp1107;
7476 112 : ca_.Bind(&block47, &tmp1083, &tmp1084, &tmp1085, &tmp1086, &tmp1087, &tmp1088, &tmp1089, &tmp1090, &tmp1091, &tmp1092, &tmp1093, &tmp1094, &tmp1095, &tmp1096, &tmp1097, &tmp1098, &tmp1099, &tmp1100, &tmp1101, &tmp1102, &tmp1103, &tmp1104, &tmp1105, &tmp1106, &tmp1107);
7477 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 191);
7478 112 : compiler::TNode<IntPtrT> tmp1108;
7479 112 : USE(tmp1108);
7480 112 : tmp1108 = ca_.UncheckedCast<IntPtrT>(ArrayJoinBuiltinsFromDSLAssembler(state_).AddStringLength(compiler::TNode<Context>{tmp1102}, compiler::TNode<IntPtrT>{tmp1097}, compiler::TNode<IntPtrT>{tmp1107}));
7481 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 192);
7482 112 : ca_.Branch(tmp1105, &block48, &block49, tmp1083, tmp1084, tmp1085, tmp1086, tmp1087, tmp1088, tmp1089, tmp1090, tmp1091, tmp1092, tmp1093, tmp1094, tmp1095, tmp1096, tmp1108, tmp1098, tmp1099, tmp1100, tmp1101, tmp1102, tmp1103, tmp1104, tmp1105, tmp1106, tmp1107);
7483 : }
7484 :
7485 112 : if (block48.is_used()) {
7486 112 : compiler::TNode<Context> tmp1109;
7487 112 : compiler::TNode<JSReceiver> tmp1110;
7488 112 : compiler::TNode<String> tmp1111;
7489 112 : compiler::TNode<Number> tmp1112;
7490 112 : compiler::TNode<Object> tmp1113;
7491 112 : compiler::TNode<Object> tmp1114;
7492 112 : compiler::TNode<BuiltinPtr> tmp1115;
7493 112 : compiler::TNode<Map> tmp1116;
7494 112 : compiler::TNode<UintPtrT> tmp1117;
7495 112 : compiler::TNode<IntPtrT> tmp1118;
7496 112 : compiler::TNode<IntPtrT> tmp1119;
7497 112 : compiler::TNode<BuiltinPtr> tmp1120;
7498 112 : compiler::TNode<FixedArray> tmp1121;
7499 112 : compiler::TNode<IntPtrT> tmp1122;
7500 112 : compiler::TNode<IntPtrT> tmp1123;
7501 112 : compiler::TNode<BoolT> tmp1124;
7502 112 : compiler::TNode<UintPtrT> tmp1125;
7503 112 : compiler::TNode<IntPtrT> tmp1126;
7504 112 : compiler::TNode<IntPtrT> tmp1127;
7505 112 : compiler::TNode<Context> tmp1128;
7506 112 : compiler::TNode<IntPtrT> tmp1129;
7507 112 : compiler::TNode<IntPtrT> tmp1130;
7508 112 : compiler::TNode<BoolT> tmp1131;
7509 112 : compiler::TNode<IntPtrT> tmp1132;
7510 112 : compiler::TNode<IntPtrT> tmp1133;
7511 112 : ca_.Bind(&block48, &tmp1109, &tmp1110, &tmp1111, &tmp1112, &tmp1113, &tmp1114, &tmp1115, &tmp1116, &tmp1117, &tmp1118, &tmp1119, &tmp1120, &tmp1121, &tmp1122, &tmp1123, &tmp1124, &tmp1125, &tmp1126, &tmp1127, &tmp1128, &tmp1129, &tmp1130, &tmp1131, &tmp1132, &tmp1133);
7512 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 194);
7513 112 : compiler::TNode<IntPtrT> tmp1134;
7514 112 : USE(tmp1134);
7515 112 : tmp1134 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATintptr17ATconstexpr_int31(1));
7516 112 : compiler::TNode<IntPtrT> tmp1135;
7517 112 : USE(tmp1135);
7518 112 : tmp1135 = ca_.UncheckedCast<IntPtrT>(CodeStubAssembler(state_).IntPtrAdd(compiler::TNode<IntPtrT>{tmp1122}, compiler::TNode<IntPtrT>{tmp1134}));
7519 112 : compiler::TNode<Smi> tmp1136;
7520 112 : USE(tmp1136);
7521 112 : tmp1136 = ca_.UncheckedCast<Smi>(BaseBuiltinsFromDSLAssembler(state_).Convert5ATSmi8ATintptr(compiler::TNode<IntPtrT>{tmp1132}));
7522 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 193);
7523 112 : compiler::TNode<FixedArray> tmp1137;
7524 112 : USE(tmp1137);
7525 112 : tmp1137 = ca_.UncheckedCast<FixedArray>(ArrayJoinBuiltinsFromDSLAssembler(state_).StoreAndGrowFixedArray5ATSmi(compiler::TNode<FixedArray>{tmp1121}, compiler::TNode<IntPtrT>{tmp1122}, compiler::TNode<Smi>{tmp1136}));
7526 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 192);
7527 112 : ca_.Goto(&block49, tmp1109, tmp1110, tmp1111, tmp1112, tmp1113, tmp1114, tmp1115, tmp1116, tmp1117, tmp1118, tmp1119, tmp1120, tmp1137, tmp1135, tmp1123, tmp1124, tmp1125, tmp1126, tmp1127, tmp1128, tmp1129, tmp1130, tmp1131, tmp1132, tmp1133);
7528 : }
7529 :
7530 112 : if (block49.is_used()) {
7531 112 : compiler::TNode<Context> tmp1138;
7532 112 : compiler::TNode<JSReceiver> tmp1139;
7533 112 : compiler::TNode<String> tmp1140;
7534 112 : compiler::TNode<Number> tmp1141;
7535 112 : compiler::TNode<Object> tmp1142;
7536 112 : compiler::TNode<Object> tmp1143;
7537 112 : compiler::TNode<BuiltinPtr> tmp1144;
7538 112 : compiler::TNode<Map> tmp1145;
7539 112 : compiler::TNode<UintPtrT> tmp1146;
7540 112 : compiler::TNode<IntPtrT> tmp1147;
7541 112 : compiler::TNode<IntPtrT> tmp1148;
7542 112 : compiler::TNode<BuiltinPtr> tmp1149;
7543 112 : compiler::TNode<FixedArray> tmp1150;
7544 112 : compiler::TNode<IntPtrT> tmp1151;
7545 112 : compiler::TNode<IntPtrT> tmp1152;
7546 112 : compiler::TNode<BoolT> tmp1153;
7547 112 : compiler::TNode<UintPtrT> tmp1154;
7548 112 : compiler::TNode<IntPtrT> tmp1155;
7549 112 : compiler::TNode<IntPtrT> tmp1156;
7550 112 : compiler::TNode<Context> tmp1157;
7551 112 : compiler::TNode<IntPtrT> tmp1158;
7552 112 : compiler::TNode<IntPtrT> tmp1159;
7553 112 : compiler::TNode<BoolT> tmp1160;
7554 112 : compiler::TNode<IntPtrT> tmp1161;
7555 112 : compiler::TNode<IntPtrT> tmp1162;
7556 112 : ca_.Bind(&block49, &tmp1138, &tmp1139, &tmp1140, &tmp1141, &tmp1142, &tmp1143, &tmp1144, &tmp1145, &tmp1146, &tmp1147, &tmp1148, &tmp1149, &tmp1150, &tmp1151, &tmp1152, &tmp1153, &tmp1154, &tmp1155, &tmp1156, &tmp1157, &tmp1158, &tmp1159, &tmp1160, &tmp1161, &tmp1162);
7557 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 180);
7558 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 317);
7559 112 : ca_.Goto(&block42, tmp1138, tmp1139, tmp1140, tmp1141, tmp1142, tmp1143, tmp1144, tmp1145, tmp1146, tmp1147, tmp1148, tmp1149, tmp1150, tmp1151, tmp1152, tmp1153, tmp1154, tmp1155, tmp1156, tmp1157, tmp1158, tmp1159, tmp1160);
7560 : }
7561 :
7562 112 : if (block42.is_used()) {
7563 112 : compiler::TNode<Context> tmp1163;
7564 112 : compiler::TNode<JSReceiver> tmp1164;
7565 112 : compiler::TNode<String> tmp1165;
7566 112 : compiler::TNode<Number> tmp1166;
7567 112 : compiler::TNode<Object> tmp1167;
7568 112 : compiler::TNode<Object> tmp1168;
7569 112 : compiler::TNode<BuiltinPtr> tmp1169;
7570 112 : compiler::TNode<Map> tmp1170;
7571 112 : compiler::TNode<UintPtrT> tmp1171;
7572 112 : compiler::TNode<IntPtrT> tmp1172;
7573 112 : compiler::TNode<IntPtrT> tmp1173;
7574 112 : compiler::TNode<BuiltinPtr> tmp1174;
7575 112 : compiler::TNode<FixedArray> tmp1175;
7576 112 : compiler::TNode<IntPtrT> tmp1176;
7577 112 : compiler::TNode<IntPtrT> tmp1177;
7578 112 : compiler::TNode<BoolT> tmp1178;
7579 112 : compiler::TNode<UintPtrT> tmp1179;
7580 112 : compiler::TNode<IntPtrT> tmp1180;
7581 112 : compiler::TNode<IntPtrT> tmp1181;
7582 112 : compiler::TNode<Context> tmp1182;
7583 112 : compiler::TNode<IntPtrT> tmp1183;
7584 112 : compiler::TNode<IntPtrT> tmp1184;
7585 112 : compiler::TNode<BoolT> tmp1185;
7586 112 : ca_.Bind(&block42, &tmp1163, &tmp1164, &tmp1165, &tmp1166, &tmp1167, &tmp1168, &tmp1169, &tmp1170, &tmp1171, &tmp1172, &tmp1173, &tmp1174, &tmp1175, &tmp1176, &tmp1177, &tmp1178, &tmp1179, &tmp1180, &tmp1181, &tmp1182, &tmp1183, &tmp1184, &tmp1185);
7587 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 320);
7588 112 : compiler::TNode<String> tmp1186;
7589 112 : USE(tmp1186);
7590 112 : tmp1186 = ca_.UncheckedCast<String>(ArrayJoinBuiltinsFromDSLAssembler(state_).BufferJoin(compiler::TNode<Context>{tmp1163}, ArrayJoinBuiltinsFromDSLAssembler::Buffer{compiler::TNode<FixedArray>{tmp1175}, compiler::TNode<IntPtrT>{tmp1176}, compiler::TNode<IntPtrT>{tmp1177}, compiler::TNode<BoolT>{tmp1178}}, compiler::TNode<String>{tmp1165}));
7591 112 : ca_.Goto(&block1, tmp1163, tmp1164, tmp1165, tmp1166, tmp1167, tmp1168, tmp1169, tmp1186);
7592 : }
7593 :
7594 112 : if (block1.is_used()) {
7595 112 : compiler::TNode<Context> tmp1187;
7596 112 : compiler::TNode<JSReceiver> tmp1188;
7597 112 : compiler::TNode<String> tmp1189;
7598 112 : compiler::TNode<Number> tmp1190;
7599 112 : compiler::TNode<Object> tmp1191;
7600 112 : compiler::TNode<Object> tmp1192;
7601 112 : compiler::TNode<BuiltinPtr> tmp1193;
7602 112 : compiler::TNode<String> tmp1194;
7603 112 : ca_.Bind(&block1, &tmp1187, &tmp1188, &tmp1189, &tmp1190, &tmp1191, &tmp1192, &tmp1193, &tmp1194);
7604 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 259);
7605 112 : ca_.Goto(&block50, tmp1187, tmp1188, tmp1189, tmp1190, tmp1191, tmp1192, tmp1193, tmp1194);
7606 : }
7607 :
7608 112 : compiler::TNode<Context> tmp1195;
7609 112 : compiler::TNode<JSReceiver> tmp1196;
7610 112 : compiler::TNode<String> tmp1197;
7611 112 : compiler::TNode<Number> tmp1198;
7612 112 : compiler::TNode<Object> tmp1199;
7613 112 : compiler::TNode<Object> tmp1200;
7614 112 : compiler::TNode<BuiltinPtr> tmp1201;
7615 112 : compiler::TNode<String> tmp1202;
7616 112 : ca_.Bind(&block50, &tmp1195, &tmp1196, &tmp1197, &tmp1198, &tmp1199, &tmp1200, &tmp1201, &tmp1202);
7617 224 : return compiler::TNode<String>{tmp1202};
7618 : }
7619 :
7620 56 : compiler::TNode<FixedArray> ArrayJoinBuiltinsFromDSLAssembler::StoreAndGrowFixedArray10JSReceiver(compiler::TNode<FixedArray> p_fixedArray, compiler::TNode<IntPtrT> p_index, compiler::TNode<JSReceiver> p_element) {
7621 56 : compiler::CodeAssemblerParameterizedLabel<FixedArray, IntPtrT, JSReceiver> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
7622 112 : compiler::CodeAssemblerParameterizedLabel<FixedArray, IntPtrT, JSReceiver, IntPtrT> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
7623 112 : compiler::CodeAssemblerParameterizedLabel<FixedArray, IntPtrT, JSReceiver, IntPtrT> block3(&ca_, compiler::CodeAssemblerLabel::kDeferred);
7624 112 : compiler::CodeAssemblerParameterizedLabel<FixedArray, IntPtrT, JSReceiver, FixedArray> block1(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
7625 112 : compiler::CodeAssemblerParameterizedLabel<FixedArray, IntPtrT, JSReceiver, FixedArray> block5(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
7626 56 : ca_.Goto(&block0, p_fixedArray, p_index, p_element);
7627 :
7628 56 : if (block0.is_used()) {
7629 56 : compiler::TNode<FixedArray> tmp0;
7630 56 : compiler::TNode<IntPtrT> tmp1;
7631 56 : compiler::TNode<JSReceiver> tmp2;
7632 56 : ca_.Bind(&block0, &tmp0, &tmp1, &tmp2);
7633 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 134);
7634 56 : compiler::TNode<IntPtrT> tmp3;
7635 56 : USE(tmp3);
7636 56 : tmp3 = ca_.UncheckedCast<IntPtrT>(CodeStubAssembler(state_).LoadAndUntagFixedArrayBaseLength(compiler::TNode<FixedArrayBase>{tmp0}));
7637 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 136);
7638 56 : compiler::TNode<BoolT> tmp4;
7639 56 : USE(tmp4);
7640 56 : tmp4 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).IntPtrLessThan(compiler::TNode<IntPtrT>{tmp1}, compiler::TNode<IntPtrT>{tmp3}));
7641 56 : ca_.Branch(tmp4, &block2, &block3, tmp0, tmp1, tmp2, tmp3);
7642 : }
7643 :
7644 56 : if (block2.is_used()) {
7645 56 : compiler::TNode<FixedArray> tmp5;
7646 56 : compiler::TNode<IntPtrT> tmp6;
7647 56 : compiler::TNode<JSReceiver> tmp7;
7648 56 : compiler::TNode<IntPtrT> tmp8;
7649 56 : ca_.Bind(&block2, &tmp5, &tmp6, &tmp7, &tmp8);
7650 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 137);
7651 56 : CodeStubAssembler(state_).StoreFixedArrayElement(compiler::TNode<FixedArray>{tmp5}, compiler::TNode<IntPtrT>{tmp6}, compiler::TNode<HeapObject>{tmp7});
7652 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 138);
7653 56 : ca_.Goto(&block1, tmp5, tmp6, tmp7, tmp5);
7654 : }
7655 :
7656 56 : if (block3.is_used()) {
7657 56 : compiler::TNode<FixedArray> tmp9;
7658 56 : compiler::TNode<IntPtrT> tmp10;
7659 56 : compiler::TNode<JSReceiver> tmp11;
7660 56 : compiler::TNode<IntPtrT> tmp12;
7661 56 : ca_.Bind(&block3, &tmp9, &tmp10, &tmp11, &tmp12);
7662 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 141);
7663 56 : compiler::TNode<IntPtrT> tmp13;
7664 56 : USE(tmp13);
7665 56 : tmp13 = ca_.UncheckedCast<IntPtrT>(CodeStubAssembler(state_).CalculateNewElementsCapacity(compiler::TNode<IntPtrT>{tmp12}));
7666 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 144);
7667 56 : compiler::TNode<IntPtrT> tmp14;
7668 56 : USE(tmp14);
7669 56 : tmp14 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATintptr17ATconstexpr_int31(0));
7670 56 : compiler::TNode<FixedArray> tmp15;
7671 56 : USE(tmp15);
7672 56 : tmp15 = ca_.UncheckedCast<FixedArray>(CodeStubAssembler(state_).ExtractFixedArray(compiler::TNode<FixedArray>{tmp9}, compiler::TNode<IntPtrT>{tmp14}, compiler::TNode<IntPtrT>{tmp12}, compiler::TNode<IntPtrT>{tmp13}, CodeStubAssembler::ExtractFixedArrayFlag::kFixedArrays));
7673 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 143);
7674 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 145);
7675 56 : CodeStubAssembler(state_).StoreFixedArrayElement(compiler::TNode<FixedArray>{tmp15}, compiler::TNode<IntPtrT>{tmp10}, compiler::TNode<HeapObject>{tmp11});
7676 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 146);
7677 56 : ca_.Goto(&block1, tmp9, tmp10, tmp11, tmp15);
7678 : }
7679 :
7680 56 : if (block1.is_used()) {
7681 56 : compiler::TNode<FixedArray> tmp16;
7682 56 : compiler::TNode<IntPtrT> tmp17;
7683 56 : compiler::TNode<JSReceiver> tmp18;
7684 56 : compiler::TNode<FixedArray> tmp19;
7685 56 : ca_.Bind(&block1, &tmp16, &tmp17, &tmp18, &tmp19);
7686 56 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 132);
7687 56 : ca_.Goto(&block5, tmp16, tmp17, tmp18, tmp19);
7688 : }
7689 :
7690 56 : compiler::TNode<FixedArray> tmp20;
7691 56 : compiler::TNode<IntPtrT> tmp21;
7692 56 : compiler::TNode<JSReceiver> tmp22;
7693 56 : compiler::TNode<FixedArray> tmp23;
7694 56 : ca_.Bind(&block5, &tmp20, &tmp21, &tmp22, &tmp23);
7695 112 : return compiler::TNode<FixedArray>{tmp23};
7696 : }
7697 :
7698 112 : compiler::TNode<Object> ArrayJoinBuiltinsFromDSLAssembler::CycleProtectedArrayJoin7JSArray(compiler::TNode<Context> p_context, bool p_useToLocaleString, compiler::TNode<JSReceiver> p_o, compiler::TNode<Number> p_len, compiler::TNode<Object> p_sepObj, compiler::TNode<Object> p_locales, compiler::TNode<Object> p_options) {
7699 112 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Object, Object, Object> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
7700 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Object, Object, Object> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
7701 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Object, Object, Object> block3(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
7702 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Object, Object, Object> block5(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
7703 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Object, Object, Object, String> block4(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
7704 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Object, Object, Object, String, Number> block9(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
7705 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Object, Object, Object, String, Number> block10(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
7706 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Object, Object, Object, String> block8(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
7707 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Object, Object, Object, String, JSReceiver> block11(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
7708 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Object, Object, Object, String, JSReceiver> block12(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
7709 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Object, Object, Object, String> block6(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
7710 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Object, Object, Object, String, JSReceiver, String, Number, Object, Object, Object> block16(&ca_, compiler::CodeAssemblerLabel::kDeferred);
7711 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Object, Object, Object, String, Object, JSReceiver, Object> block17(&ca_, compiler::CodeAssemblerLabel::kDeferred);
7712 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Object, Object, Object, String, Object> block15(&ca_, compiler::CodeAssemblerLabel::kDeferred);
7713 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Object, Object, Object, String> block7(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
7714 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Object, Object, Object, Object> block1(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
7715 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Object, Object, Object, Object> block18(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
7716 112 : ca_.Goto(&block0, p_context, p_o, p_len, p_sepObj, p_locales, p_options);
7717 :
7718 112 : if (block0.is_used()) {
7719 112 : compiler::TNode<Context> tmp0;
7720 112 : compiler::TNode<JSReceiver> tmp1;
7721 112 : compiler::TNode<Number> tmp2;
7722 112 : compiler::TNode<Object> tmp3;
7723 112 : compiler::TNode<Object> tmp4;
7724 112 : compiler::TNode<Object> tmp5;
7725 112 : ca_.Bind(&block0, &tmp0, &tmp1, &tmp2, &tmp3, &tmp4, &tmp5);
7726 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 536);
7727 112 : compiler::TNode<Oddball> tmp6;
7728 112 : USE(tmp6);
7729 112 : tmp6 = BaseBuiltinsFromDSLAssembler(state_).Undefined();
7730 112 : compiler::TNode<BoolT> tmp7;
7731 112 : USE(tmp7);
7732 112 : tmp7 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).WordEqual(compiler::TNode<Object>{tmp3}, compiler::TNode<HeapObject>{tmp6}));
7733 112 : ca_.Branch(tmp7, &block2, &block3, tmp0, tmp1, tmp2, tmp3, tmp4, tmp5);
7734 : }
7735 :
7736 112 : if (block2.is_used()) {
7737 112 : compiler::TNode<Context> tmp8;
7738 112 : compiler::TNode<JSReceiver> tmp9;
7739 112 : compiler::TNode<Number> tmp10;
7740 112 : compiler::TNode<Object> tmp11;
7741 112 : compiler::TNode<Object> tmp12;
7742 112 : compiler::TNode<Object> tmp13;
7743 112 : ca_.Bind(&block2, &tmp8, &tmp9, &tmp10, &tmp11, &tmp12, &tmp13);
7744 112 : ca_.Goto(&block5, tmp8, tmp9, tmp10, tmp11, tmp12, tmp13);
7745 : }
7746 :
7747 112 : if (block3.is_used()) {
7748 112 : compiler::TNode<Context> tmp14;
7749 112 : compiler::TNode<JSReceiver> tmp15;
7750 112 : compiler::TNode<Number> tmp16;
7751 112 : compiler::TNode<Object> tmp17;
7752 112 : compiler::TNode<Object> tmp18;
7753 112 : compiler::TNode<Object> tmp19;
7754 112 : ca_.Bind(&block3, &tmp14, &tmp15, &tmp16, &tmp17, &tmp18, &tmp19);
7755 112 : compiler::TNode<String> tmp20;
7756 112 : USE(tmp20);
7757 112 : tmp20 = ca_.UncheckedCast<String>(CodeStubAssembler(state_).ToString_Inline(compiler::TNode<Context>{tmp14}, compiler::TNode<Object>{tmp17}));
7758 112 : ca_.Goto(&block4, tmp14, tmp15, tmp16, tmp17, tmp18, tmp19, tmp20);
7759 : }
7760 :
7761 112 : if (block5.is_used()) {
7762 112 : compiler::TNode<Context> tmp21;
7763 112 : compiler::TNode<JSReceiver> tmp22;
7764 112 : compiler::TNode<Number> tmp23;
7765 112 : compiler::TNode<Object> tmp24;
7766 112 : compiler::TNode<Object> tmp25;
7767 112 : compiler::TNode<Object> tmp26;
7768 112 : ca_.Bind(&block5, &tmp21, &tmp22, &tmp23, &tmp24, &tmp25, &tmp26);
7769 112 : compiler::TNode<String> tmp27;
7770 112 : USE(tmp27);
7771 112 : tmp27 = ca_.UncheckedCast<String>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATString18ATconstexpr_string(","));
7772 112 : ca_.Goto(&block4, tmp21, tmp22, tmp23, tmp24, tmp25, tmp26, tmp27);
7773 : }
7774 :
7775 112 : if (block4.is_used()) {
7776 112 : compiler::TNode<Context> tmp28;
7777 112 : compiler::TNode<JSReceiver> tmp29;
7778 112 : compiler::TNode<Number> tmp30;
7779 112 : compiler::TNode<Object> tmp31;
7780 112 : compiler::TNode<Object> tmp32;
7781 112 : compiler::TNode<Object> tmp33;
7782 112 : compiler::TNode<String> tmp34;
7783 112 : ca_.Bind(&block4, &tmp28, &tmp29, &tmp30, &tmp31, &tmp32, &tmp33, &tmp34);
7784 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 535);
7785 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 540);
7786 112 : compiler::TNode<Number> tmp35;
7787 112 : USE(tmp35);
7788 112 : tmp35 = ca_.UncheckedCast<Number>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr22UT12ATHeapNumber5ATSmi17ATconstexpr_int31(0));
7789 112 : compiler::CodeAssemblerLabel label0(&ca_);
7790 224 : compiler::CodeAssemblerLabel label1(&ca_);
7791 112 : CodeStubAssembler(state_).BranchIfNumberGreaterThan(compiler::TNode<Number>{tmp30}, compiler::TNode<Number>{tmp35}, &label0, &label1);
7792 112 : if (label0.is_used()) {
7793 112 : ca_.Bind(&label0);
7794 112 : ca_.Goto(&block9, tmp28, tmp29, tmp30, tmp31, tmp32, tmp33, tmp34, tmp30);
7795 : }
7796 112 : if (label1.is_used()) {
7797 112 : ca_.Bind(&label1);
7798 112 : ca_.Goto(&block10, tmp28, tmp29, tmp30, tmp31, tmp32, tmp33, tmp34, tmp30);
7799 112 : }
7800 : }
7801 :
7802 112 : if (block9.is_used()) {
7803 112 : compiler::TNode<Context> tmp36;
7804 112 : compiler::TNode<JSReceiver> tmp37;
7805 112 : compiler::TNode<Number> tmp38;
7806 112 : compiler::TNode<Object> tmp39;
7807 112 : compiler::TNode<Object> tmp40;
7808 112 : compiler::TNode<Object> tmp41;
7809 112 : compiler::TNode<String> tmp42;
7810 112 : compiler::TNode<Number> tmp43;
7811 112 : ca_.Bind(&block9, &tmp36, &tmp37, &tmp38, &tmp39, &tmp40, &tmp41, &tmp42, &tmp43);
7812 112 : ca_.Goto(&block8, tmp36, tmp37, tmp38, tmp39, tmp40, tmp41, tmp42);
7813 : }
7814 :
7815 112 : if (block10.is_used()) {
7816 112 : compiler::TNode<Context> tmp44;
7817 112 : compiler::TNode<JSReceiver> tmp45;
7818 112 : compiler::TNode<Number> tmp46;
7819 112 : compiler::TNode<Object> tmp47;
7820 112 : compiler::TNode<Object> tmp48;
7821 112 : compiler::TNode<Object> tmp49;
7822 112 : compiler::TNode<String> tmp50;
7823 112 : compiler::TNode<Number> tmp51;
7824 112 : ca_.Bind(&block10, &tmp44, &tmp45, &tmp46, &tmp47, &tmp48, &tmp49, &tmp50, &tmp51);
7825 112 : ca_.Goto(&block7, tmp44, tmp45, tmp46, tmp47, tmp48, tmp49, tmp50);
7826 : }
7827 :
7828 112 : if (block8.is_used()) {
7829 112 : compiler::TNode<Context> tmp52;
7830 112 : compiler::TNode<JSReceiver> tmp53;
7831 112 : compiler::TNode<Number> tmp54;
7832 112 : compiler::TNode<Object> tmp55;
7833 112 : compiler::TNode<Object> tmp56;
7834 112 : compiler::TNode<Object> tmp57;
7835 112 : compiler::TNode<String> tmp58;
7836 112 : ca_.Bind(&block8, &tmp52, &tmp53, &tmp54, &tmp55, &tmp56, &tmp57, &tmp58);
7837 112 : compiler::CodeAssemblerLabel label0(&ca_);
7838 224 : compiler::CodeAssemblerLabel label1(&ca_);
7839 112 : ArrayJoinBuiltinsFromDSLAssembler(state_).JoinStackPushInline(compiler::TNode<Context>{tmp52}, compiler::TNode<JSReceiver>{tmp53}, &label0, &label1);
7840 112 : if (label0.is_used()) {
7841 112 : ca_.Bind(&label0);
7842 112 : ca_.Goto(&block11, tmp52, tmp53, tmp54, tmp55, tmp56, tmp57, tmp58, tmp53);
7843 : }
7844 112 : if (label1.is_used()) {
7845 112 : ca_.Bind(&label1);
7846 112 : ca_.Goto(&block12, tmp52, tmp53, tmp54, tmp55, tmp56, tmp57, tmp58, tmp53);
7847 112 : }
7848 : }
7849 :
7850 112 : if (block11.is_used()) {
7851 112 : compiler::TNode<Context> tmp59;
7852 112 : compiler::TNode<JSReceiver> tmp60;
7853 112 : compiler::TNode<Number> tmp61;
7854 112 : compiler::TNode<Object> tmp62;
7855 112 : compiler::TNode<Object> tmp63;
7856 112 : compiler::TNode<Object> tmp64;
7857 112 : compiler::TNode<String> tmp65;
7858 112 : compiler::TNode<JSReceiver> tmp66;
7859 112 : ca_.Bind(&block11, &tmp59, &tmp60, &tmp61, &tmp62, &tmp63, &tmp64, &tmp65, &tmp66);
7860 112 : ca_.Goto(&block6, tmp59, tmp60, tmp61, tmp62, tmp63, tmp64, tmp65);
7861 : }
7862 :
7863 112 : if (block12.is_used()) {
7864 112 : compiler::TNode<Context> tmp67;
7865 112 : compiler::TNode<JSReceiver> tmp68;
7866 112 : compiler::TNode<Number> tmp69;
7867 112 : compiler::TNode<Object> tmp70;
7868 112 : compiler::TNode<Object> tmp71;
7869 112 : compiler::TNode<Object> tmp72;
7870 112 : compiler::TNode<String> tmp73;
7871 112 : compiler::TNode<JSReceiver> tmp74;
7872 112 : ca_.Bind(&block12, &tmp67, &tmp68, &tmp69, &tmp70, &tmp71, &tmp72, &tmp73, &tmp74);
7873 112 : ca_.Goto(&block7, tmp67, tmp68, tmp69, tmp70, tmp71, tmp72, tmp73);
7874 : }
7875 :
7876 112 : if (block6.is_used()) {
7877 112 : compiler::TNode<Context> tmp75;
7878 112 : compiler::TNode<JSReceiver> tmp76;
7879 112 : compiler::TNode<Number> tmp77;
7880 112 : compiler::TNode<Object> tmp78;
7881 112 : compiler::TNode<Object> tmp79;
7882 112 : compiler::TNode<Object> tmp80;
7883 112 : compiler::TNode<String> tmp81;
7884 112 : ca_.Bind(&block6, &tmp75, &tmp76, &tmp77, &tmp78, &tmp79, &tmp80, &tmp81);
7885 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 543);
7886 112 : compiler::TNode<Object> tmp82;
7887 112 : USE(tmp82);
7888 112 : compiler::CodeAssemblerExceptionHandlerLabel catch83_label(&ca_, compiler::CodeAssemblerLabel::kDeferred);
7889 112 : { compiler::CodeAssemblerScopedExceptionHandler s(&ca_, &catch83_label);
7890 112 : tmp82 = ca_.UncheckedCast<Object>(ArrayJoinBuiltinsFromDSLAssembler(state_).ArrayJoin7JSArray(compiler::TNode<Context>{tmp75}, p_useToLocaleString, compiler::TNode<JSReceiver>{tmp76}, compiler::TNode<String>{tmp81}, compiler::TNode<Number>{tmp77}, compiler::TNode<Object>{tmp79}, compiler::TNode<Object>{tmp80}));
7891 : }
7892 112 : if (catch83_label.is_used()) {
7893 112 : compiler::CodeAssemblerLabel catch83_skip(&ca_);
7894 112 : ca_.Goto(&catch83_skip);
7895 112 : compiler::TNode<Object> catch83_exception_object;
7896 112 : ca_.Bind(&catch83_label, &catch83_exception_object);
7897 112 : ca_.Goto(&block16, tmp75, tmp76, tmp77, tmp78, tmp79, tmp80, tmp81, tmp76, tmp81, tmp77, tmp79, tmp80, catch83_exception_object);
7898 112 : ca_.Bind(&catch83_skip);
7899 : }
7900 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 542);
7901 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 544);
7902 224 : compiler::CodeAssemblerExceptionHandlerLabel catch84_label(&ca_, compiler::CodeAssemblerLabel::kDeferred);
7903 112 : { compiler::CodeAssemblerScopedExceptionHandler s(&ca_, &catch84_label);
7904 112 : ArrayJoinBuiltinsFromDSLAssembler(state_).JoinStackPopInline(compiler::TNode<Context>{tmp75}, compiler::TNode<JSReceiver>{tmp76});
7905 : }
7906 112 : if (catch84_label.is_used()) {
7907 112 : compiler::CodeAssemblerLabel catch84_skip(&ca_);
7908 112 : ca_.Goto(&catch84_skip);
7909 112 : compiler::TNode<Object> catch84_exception_object;
7910 112 : ca_.Bind(&catch84_label, &catch84_exception_object);
7911 112 : ca_.Goto(&block17, tmp75, tmp76, tmp77, tmp78, tmp79, tmp80, tmp81, tmp82, tmp76, catch84_exception_object);
7912 112 : ca_.Bind(&catch84_skip);
7913 : }
7914 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 545);
7915 224 : ca_.Goto(&block1, tmp75, tmp76, tmp77, tmp78, tmp79, tmp80, tmp82);
7916 : }
7917 :
7918 112 : if (block16.is_used()) {
7919 112 : compiler::TNode<Context> tmp85;
7920 112 : compiler::TNode<JSReceiver> tmp86;
7921 112 : compiler::TNode<Number> tmp87;
7922 112 : compiler::TNode<Object> tmp88;
7923 112 : compiler::TNode<Object> tmp89;
7924 112 : compiler::TNode<Object> tmp90;
7925 112 : compiler::TNode<String> tmp91;
7926 112 : compiler::TNode<JSReceiver> tmp92;
7927 112 : compiler::TNode<String> tmp93;
7928 112 : compiler::TNode<Number> tmp94;
7929 112 : compiler::TNode<Object> tmp95;
7930 112 : compiler::TNode<Object> tmp96;
7931 112 : compiler::TNode<Object> tmp97;
7932 112 : ca_.Bind(&block16, &tmp85, &tmp86, &tmp87, &tmp88, &tmp89, &tmp90, &tmp91, &tmp92, &tmp93, &tmp94, &tmp95, &tmp96, &tmp97);
7933 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 543);
7934 112 : ca_.Goto(&block15, tmp85, tmp86, tmp87, tmp88, tmp89, tmp90, tmp91, tmp97);
7935 : }
7936 :
7937 112 : if (block17.is_used()) {
7938 112 : compiler::TNode<Context> tmp98;
7939 112 : compiler::TNode<JSReceiver> tmp99;
7940 112 : compiler::TNode<Number> tmp100;
7941 112 : compiler::TNode<Object> tmp101;
7942 112 : compiler::TNode<Object> tmp102;
7943 112 : compiler::TNode<Object> tmp103;
7944 112 : compiler::TNode<String> tmp104;
7945 112 : compiler::TNode<Object> tmp105;
7946 112 : compiler::TNode<JSReceiver> tmp106;
7947 112 : compiler::TNode<Object> tmp107;
7948 112 : ca_.Bind(&block17, &tmp98, &tmp99, &tmp100, &tmp101, &tmp102, &tmp103, &tmp104, &tmp105, &tmp106, &tmp107);
7949 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 544);
7950 112 : ca_.Goto(&block15, tmp98, tmp99, tmp100, tmp101, tmp102, tmp103, tmp104, tmp107);
7951 : }
7952 :
7953 112 : if (block15.is_used()) {
7954 112 : compiler::TNode<Context> tmp108;
7955 112 : compiler::TNode<JSReceiver> tmp109;
7956 112 : compiler::TNode<Number> tmp110;
7957 112 : compiler::TNode<Object> tmp111;
7958 112 : compiler::TNode<Object> tmp112;
7959 112 : compiler::TNode<Object> tmp113;
7960 112 : compiler::TNode<String> tmp114;
7961 112 : compiler::TNode<Object> tmp115;
7962 112 : ca_.Bind(&block15, &tmp108, &tmp109, &tmp110, &tmp111, &tmp112, &tmp113, &tmp114, &tmp115);
7963 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 547);
7964 112 : ArrayJoinBuiltinsFromDSLAssembler(state_).JoinStackPopInline(compiler::TNode<Context>{tmp108}, compiler::TNode<JSReceiver>{tmp109});
7965 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 548);
7966 112 : CodeStubAssembler(state_).CallRuntime(Runtime::kReThrow, tmp108, tmp115);
7967 112 : CodeStubAssembler(state_).Unreachable();
7968 : }
7969 :
7970 112 : if (block7.is_used()) {
7971 112 : compiler::TNode<Context> tmp117;
7972 112 : compiler::TNode<JSReceiver> tmp118;
7973 112 : compiler::TNode<Number> tmp119;
7974 112 : compiler::TNode<Object> tmp120;
7975 112 : compiler::TNode<Object> tmp121;
7976 112 : compiler::TNode<Object> tmp122;
7977 112 : compiler::TNode<String> tmp123;
7978 112 : ca_.Bind(&block7, &tmp117, &tmp118, &tmp119, &tmp120, &tmp121, &tmp122, &tmp123);
7979 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 551);
7980 112 : compiler::TNode<String> tmp124;
7981 112 : USE(tmp124);
7982 112 : tmp124 = BaseBuiltinsFromDSLAssembler(state_).kEmptyString();
7983 112 : ca_.Goto(&block1, tmp117, tmp118, tmp119, tmp120, tmp121, tmp122, tmp124);
7984 : }
7985 :
7986 112 : if (block1.is_used()) {
7987 112 : compiler::TNode<Context> tmp125;
7988 112 : compiler::TNode<JSReceiver> tmp126;
7989 112 : compiler::TNode<Number> tmp127;
7990 112 : compiler::TNode<Object> tmp128;
7991 112 : compiler::TNode<Object> tmp129;
7992 112 : compiler::TNode<Object> tmp130;
7993 112 : compiler::TNode<Object> tmp131;
7994 112 : ca_.Bind(&block1, &tmp125, &tmp126, &tmp127, &tmp128, &tmp129, &tmp130, &tmp131);
7995 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 529);
7996 112 : ca_.Goto(&block18, tmp125, tmp126, tmp127, tmp128, tmp129, tmp130, tmp131);
7997 : }
7998 :
7999 112 : compiler::TNode<Context> tmp132;
8000 112 : compiler::TNode<JSReceiver> tmp133;
8001 112 : compiler::TNode<Number> tmp134;
8002 112 : compiler::TNode<Object> tmp135;
8003 112 : compiler::TNode<Object> tmp136;
8004 112 : compiler::TNode<Object> tmp137;
8005 112 : compiler::TNode<Object> tmp138;
8006 112 : ca_.Bind(&block18, &tmp132, &tmp133, &tmp134, &tmp135, &tmp136, &tmp137, &tmp138);
8007 224 : return compiler::TNode<Object>{tmp138};
8008 : }
8009 :
8010 112 : compiler::TNode<Object> ArrayJoinBuiltinsFromDSLAssembler::CycleProtectedArrayJoin12JSTypedArray(compiler::TNode<Context> p_context, bool p_useToLocaleString, compiler::TNode<JSReceiver> p_o, compiler::TNode<Number> p_len, compiler::TNode<Object> p_sepObj, compiler::TNode<Object> p_locales, compiler::TNode<Object> p_options) {
8011 112 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Object, Object, Object> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
8012 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Object, Object, Object> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
8013 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Object, Object, Object> block3(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
8014 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Object, Object, Object> block5(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
8015 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Object, Object, Object, String> block4(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
8016 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Object, Object, Object, String, Number> block9(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
8017 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Object, Object, Object, String, Number> block10(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
8018 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Object, Object, Object, String> block8(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
8019 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Object, Object, Object, String, JSReceiver> block11(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
8020 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Object, Object, Object, String, JSReceiver> block12(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
8021 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Object, Object, Object, String> block6(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
8022 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Object, Object, Object, String, JSReceiver, String, Number, Object, Object, Object> block16(&ca_, compiler::CodeAssemblerLabel::kDeferred);
8023 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Object, Object, Object, String, Object, JSReceiver, Object> block17(&ca_, compiler::CodeAssemblerLabel::kDeferred);
8024 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Object, Object, Object, String, Object> block15(&ca_, compiler::CodeAssemblerLabel::kDeferred);
8025 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Object, Object, Object, String> block7(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
8026 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Object, Object, Object, Object> block1(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
8027 224 : compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Object, Object, Object, Object> block18(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
8028 112 : ca_.Goto(&block0, p_context, p_o, p_len, p_sepObj, p_locales, p_options);
8029 :
8030 112 : if (block0.is_used()) {
8031 112 : compiler::TNode<Context> tmp0;
8032 112 : compiler::TNode<JSReceiver> tmp1;
8033 112 : compiler::TNode<Number> tmp2;
8034 112 : compiler::TNode<Object> tmp3;
8035 112 : compiler::TNode<Object> tmp4;
8036 112 : compiler::TNode<Object> tmp5;
8037 112 : ca_.Bind(&block0, &tmp0, &tmp1, &tmp2, &tmp3, &tmp4, &tmp5);
8038 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 536);
8039 112 : compiler::TNode<Oddball> tmp6;
8040 112 : USE(tmp6);
8041 112 : tmp6 = BaseBuiltinsFromDSLAssembler(state_).Undefined();
8042 112 : compiler::TNode<BoolT> tmp7;
8043 112 : USE(tmp7);
8044 112 : tmp7 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).WordEqual(compiler::TNode<Object>{tmp3}, compiler::TNode<HeapObject>{tmp6}));
8045 112 : ca_.Branch(tmp7, &block2, &block3, tmp0, tmp1, tmp2, tmp3, tmp4, tmp5);
8046 : }
8047 :
8048 112 : if (block2.is_used()) {
8049 112 : compiler::TNode<Context> tmp8;
8050 112 : compiler::TNode<JSReceiver> tmp9;
8051 112 : compiler::TNode<Number> tmp10;
8052 112 : compiler::TNode<Object> tmp11;
8053 112 : compiler::TNode<Object> tmp12;
8054 112 : compiler::TNode<Object> tmp13;
8055 112 : ca_.Bind(&block2, &tmp8, &tmp9, &tmp10, &tmp11, &tmp12, &tmp13);
8056 112 : ca_.Goto(&block5, tmp8, tmp9, tmp10, tmp11, tmp12, tmp13);
8057 : }
8058 :
8059 112 : if (block3.is_used()) {
8060 112 : compiler::TNode<Context> tmp14;
8061 112 : compiler::TNode<JSReceiver> tmp15;
8062 112 : compiler::TNode<Number> tmp16;
8063 112 : compiler::TNode<Object> tmp17;
8064 112 : compiler::TNode<Object> tmp18;
8065 112 : compiler::TNode<Object> tmp19;
8066 112 : ca_.Bind(&block3, &tmp14, &tmp15, &tmp16, &tmp17, &tmp18, &tmp19);
8067 112 : compiler::TNode<String> tmp20;
8068 112 : USE(tmp20);
8069 112 : tmp20 = ca_.UncheckedCast<String>(CodeStubAssembler(state_).ToString_Inline(compiler::TNode<Context>{tmp14}, compiler::TNode<Object>{tmp17}));
8070 112 : ca_.Goto(&block4, tmp14, tmp15, tmp16, tmp17, tmp18, tmp19, tmp20);
8071 : }
8072 :
8073 112 : if (block5.is_used()) {
8074 112 : compiler::TNode<Context> tmp21;
8075 112 : compiler::TNode<JSReceiver> tmp22;
8076 112 : compiler::TNode<Number> tmp23;
8077 112 : compiler::TNode<Object> tmp24;
8078 112 : compiler::TNode<Object> tmp25;
8079 112 : compiler::TNode<Object> tmp26;
8080 112 : ca_.Bind(&block5, &tmp21, &tmp22, &tmp23, &tmp24, &tmp25, &tmp26);
8081 112 : compiler::TNode<String> tmp27;
8082 112 : USE(tmp27);
8083 112 : tmp27 = ca_.UncheckedCast<String>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATString18ATconstexpr_string(","));
8084 112 : ca_.Goto(&block4, tmp21, tmp22, tmp23, tmp24, tmp25, tmp26, tmp27);
8085 : }
8086 :
8087 112 : if (block4.is_used()) {
8088 112 : compiler::TNode<Context> tmp28;
8089 112 : compiler::TNode<JSReceiver> tmp29;
8090 112 : compiler::TNode<Number> tmp30;
8091 112 : compiler::TNode<Object> tmp31;
8092 112 : compiler::TNode<Object> tmp32;
8093 112 : compiler::TNode<Object> tmp33;
8094 112 : compiler::TNode<String> tmp34;
8095 112 : ca_.Bind(&block4, &tmp28, &tmp29, &tmp30, &tmp31, &tmp32, &tmp33, &tmp34);
8096 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 535);
8097 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 540);
8098 112 : compiler::TNode<Number> tmp35;
8099 112 : USE(tmp35);
8100 112 : tmp35 = ca_.UncheckedCast<Number>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr22UT12ATHeapNumber5ATSmi17ATconstexpr_int31(0));
8101 112 : compiler::CodeAssemblerLabel label0(&ca_);
8102 224 : compiler::CodeAssemblerLabel label1(&ca_);
8103 112 : CodeStubAssembler(state_).BranchIfNumberGreaterThan(compiler::TNode<Number>{tmp30}, compiler::TNode<Number>{tmp35}, &label0, &label1);
8104 112 : if (label0.is_used()) {
8105 112 : ca_.Bind(&label0);
8106 112 : ca_.Goto(&block9, tmp28, tmp29, tmp30, tmp31, tmp32, tmp33, tmp34, tmp30);
8107 : }
8108 112 : if (label1.is_used()) {
8109 112 : ca_.Bind(&label1);
8110 112 : ca_.Goto(&block10, tmp28, tmp29, tmp30, tmp31, tmp32, tmp33, tmp34, tmp30);
8111 112 : }
8112 : }
8113 :
8114 112 : if (block9.is_used()) {
8115 112 : compiler::TNode<Context> tmp36;
8116 112 : compiler::TNode<JSReceiver> tmp37;
8117 112 : compiler::TNode<Number> tmp38;
8118 112 : compiler::TNode<Object> tmp39;
8119 112 : compiler::TNode<Object> tmp40;
8120 112 : compiler::TNode<Object> tmp41;
8121 112 : compiler::TNode<String> tmp42;
8122 112 : compiler::TNode<Number> tmp43;
8123 112 : ca_.Bind(&block9, &tmp36, &tmp37, &tmp38, &tmp39, &tmp40, &tmp41, &tmp42, &tmp43);
8124 112 : ca_.Goto(&block8, tmp36, tmp37, tmp38, tmp39, tmp40, tmp41, tmp42);
8125 : }
8126 :
8127 112 : if (block10.is_used()) {
8128 112 : compiler::TNode<Context> tmp44;
8129 112 : compiler::TNode<JSReceiver> tmp45;
8130 112 : compiler::TNode<Number> tmp46;
8131 112 : compiler::TNode<Object> tmp47;
8132 112 : compiler::TNode<Object> tmp48;
8133 112 : compiler::TNode<Object> tmp49;
8134 112 : compiler::TNode<String> tmp50;
8135 112 : compiler::TNode<Number> tmp51;
8136 112 : ca_.Bind(&block10, &tmp44, &tmp45, &tmp46, &tmp47, &tmp48, &tmp49, &tmp50, &tmp51);
8137 112 : ca_.Goto(&block7, tmp44, tmp45, tmp46, tmp47, tmp48, tmp49, tmp50);
8138 : }
8139 :
8140 112 : if (block8.is_used()) {
8141 112 : compiler::TNode<Context> tmp52;
8142 112 : compiler::TNode<JSReceiver> tmp53;
8143 112 : compiler::TNode<Number> tmp54;
8144 112 : compiler::TNode<Object> tmp55;
8145 112 : compiler::TNode<Object> tmp56;
8146 112 : compiler::TNode<Object> tmp57;
8147 112 : compiler::TNode<String> tmp58;
8148 112 : ca_.Bind(&block8, &tmp52, &tmp53, &tmp54, &tmp55, &tmp56, &tmp57, &tmp58);
8149 112 : compiler::CodeAssemblerLabel label0(&ca_);
8150 224 : compiler::CodeAssemblerLabel label1(&ca_);
8151 112 : ArrayJoinBuiltinsFromDSLAssembler(state_).JoinStackPushInline(compiler::TNode<Context>{tmp52}, compiler::TNode<JSReceiver>{tmp53}, &label0, &label1);
8152 112 : if (label0.is_used()) {
8153 112 : ca_.Bind(&label0);
8154 112 : ca_.Goto(&block11, tmp52, tmp53, tmp54, tmp55, tmp56, tmp57, tmp58, tmp53);
8155 : }
8156 112 : if (label1.is_used()) {
8157 112 : ca_.Bind(&label1);
8158 112 : ca_.Goto(&block12, tmp52, tmp53, tmp54, tmp55, tmp56, tmp57, tmp58, tmp53);
8159 112 : }
8160 : }
8161 :
8162 112 : if (block11.is_used()) {
8163 112 : compiler::TNode<Context> tmp59;
8164 112 : compiler::TNode<JSReceiver> tmp60;
8165 112 : compiler::TNode<Number> tmp61;
8166 112 : compiler::TNode<Object> tmp62;
8167 112 : compiler::TNode<Object> tmp63;
8168 112 : compiler::TNode<Object> tmp64;
8169 112 : compiler::TNode<String> tmp65;
8170 112 : compiler::TNode<JSReceiver> tmp66;
8171 112 : ca_.Bind(&block11, &tmp59, &tmp60, &tmp61, &tmp62, &tmp63, &tmp64, &tmp65, &tmp66);
8172 112 : ca_.Goto(&block6, tmp59, tmp60, tmp61, tmp62, tmp63, tmp64, tmp65);
8173 : }
8174 :
8175 112 : if (block12.is_used()) {
8176 112 : compiler::TNode<Context> tmp67;
8177 112 : compiler::TNode<JSReceiver> tmp68;
8178 112 : compiler::TNode<Number> tmp69;
8179 112 : compiler::TNode<Object> tmp70;
8180 112 : compiler::TNode<Object> tmp71;
8181 112 : compiler::TNode<Object> tmp72;
8182 112 : compiler::TNode<String> tmp73;
8183 112 : compiler::TNode<JSReceiver> tmp74;
8184 112 : ca_.Bind(&block12, &tmp67, &tmp68, &tmp69, &tmp70, &tmp71, &tmp72, &tmp73, &tmp74);
8185 112 : ca_.Goto(&block7, tmp67, tmp68, tmp69, tmp70, tmp71, tmp72, tmp73);
8186 : }
8187 :
8188 112 : if (block6.is_used()) {
8189 112 : compiler::TNode<Context> tmp75;
8190 112 : compiler::TNode<JSReceiver> tmp76;
8191 112 : compiler::TNode<Number> tmp77;
8192 112 : compiler::TNode<Object> tmp78;
8193 112 : compiler::TNode<Object> tmp79;
8194 112 : compiler::TNode<Object> tmp80;
8195 112 : compiler::TNode<String> tmp81;
8196 112 : ca_.Bind(&block6, &tmp75, &tmp76, &tmp77, &tmp78, &tmp79, &tmp80, &tmp81);
8197 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 543);
8198 112 : compiler::TNode<Object> tmp82;
8199 112 : USE(tmp82);
8200 112 : compiler::CodeAssemblerExceptionHandlerLabel catch83_label(&ca_, compiler::CodeAssemblerLabel::kDeferred);
8201 112 : { compiler::CodeAssemblerScopedExceptionHandler s(&ca_, &catch83_label);
8202 112 : tmp82 = ca_.UncheckedCast<Object>(ArrayJoinBuiltinsFromDSLAssembler(state_).ArrayJoin12JSTypedArray(compiler::TNode<Context>{tmp75}, p_useToLocaleString, compiler::TNode<JSReceiver>{tmp76}, compiler::TNode<String>{tmp81}, compiler::TNode<Number>{tmp77}, compiler::TNode<Object>{tmp79}, compiler::TNode<Object>{tmp80}));
8203 : }
8204 112 : if (catch83_label.is_used()) {
8205 112 : compiler::CodeAssemblerLabel catch83_skip(&ca_);
8206 112 : ca_.Goto(&catch83_skip);
8207 112 : compiler::TNode<Object> catch83_exception_object;
8208 112 : ca_.Bind(&catch83_label, &catch83_exception_object);
8209 112 : ca_.Goto(&block16, tmp75, tmp76, tmp77, tmp78, tmp79, tmp80, tmp81, tmp76, tmp81, tmp77, tmp79, tmp80, catch83_exception_object);
8210 112 : ca_.Bind(&catch83_skip);
8211 : }
8212 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 542);
8213 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 544);
8214 224 : compiler::CodeAssemblerExceptionHandlerLabel catch84_label(&ca_, compiler::CodeAssemblerLabel::kDeferred);
8215 112 : { compiler::CodeAssemblerScopedExceptionHandler s(&ca_, &catch84_label);
8216 112 : ArrayJoinBuiltinsFromDSLAssembler(state_).JoinStackPopInline(compiler::TNode<Context>{tmp75}, compiler::TNode<JSReceiver>{tmp76});
8217 : }
8218 112 : if (catch84_label.is_used()) {
8219 112 : compiler::CodeAssemblerLabel catch84_skip(&ca_);
8220 112 : ca_.Goto(&catch84_skip);
8221 112 : compiler::TNode<Object> catch84_exception_object;
8222 112 : ca_.Bind(&catch84_label, &catch84_exception_object);
8223 112 : ca_.Goto(&block17, tmp75, tmp76, tmp77, tmp78, tmp79, tmp80, tmp81, tmp82, tmp76, catch84_exception_object);
8224 112 : ca_.Bind(&catch84_skip);
8225 : }
8226 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 545);
8227 224 : ca_.Goto(&block1, tmp75, tmp76, tmp77, tmp78, tmp79, tmp80, tmp82);
8228 : }
8229 :
8230 112 : if (block16.is_used()) {
8231 112 : compiler::TNode<Context> tmp85;
8232 112 : compiler::TNode<JSReceiver> tmp86;
8233 112 : compiler::TNode<Number> tmp87;
8234 112 : compiler::TNode<Object> tmp88;
8235 112 : compiler::TNode<Object> tmp89;
8236 112 : compiler::TNode<Object> tmp90;
8237 112 : compiler::TNode<String> tmp91;
8238 112 : compiler::TNode<JSReceiver> tmp92;
8239 112 : compiler::TNode<String> tmp93;
8240 112 : compiler::TNode<Number> tmp94;
8241 112 : compiler::TNode<Object> tmp95;
8242 112 : compiler::TNode<Object> tmp96;
8243 112 : compiler::TNode<Object> tmp97;
8244 112 : ca_.Bind(&block16, &tmp85, &tmp86, &tmp87, &tmp88, &tmp89, &tmp90, &tmp91, &tmp92, &tmp93, &tmp94, &tmp95, &tmp96, &tmp97);
8245 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 543);
8246 112 : ca_.Goto(&block15, tmp85, tmp86, tmp87, tmp88, tmp89, tmp90, tmp91, tmp97);
8247 : }
8248 :
8249 112 : if (block17.is_used()) {
8250 112 : compiler::TNode<Context> tmp98;
8251 112 : compiler::TNode<JSReceiver> tmp99;
8252 112 : compiler::TNode<Number> tmp100;
8253 112 : compiler::TNode<Object> tmp101;
8254 112 : compiler::TNode<Object> tmp102;
8255 112 : compiler::TNode<Object> tmp103;
8256 112 : compiler::TNode<String> tmp104;
8257 112 : compiler::TNode<Object> tmp105;
8258 112 : compiler::TNode<JSReceiver> tmp106;
8259 112 : compiler::TNode<Object> tmp107;
8260 112 : ca_.Bind(&block17, &tmp98, &tmp99, &tmp100, &tmp101, &tmp102, &tmp103, &tmp104, &tmp105, &tmp106, &tmp107);
8261 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 544);
8262 112 : ca_.Goto(&block15, tmp98, tmp99, tmp100, tmp101, tmp102, tmp103, tmp104, tmp107);
8263 : }
8264 :
8265 112 : if (block15.is_used()) {
8266 112 : compiler::TNode<Context> tmp108;
8267 112 : compiler::TNode<JSReceiver> tmp109;
8268 112 : compiler::TNode<Number> tmp110;
8269 112 : compiler::TNode<Object> tmp111;
8270 112 : compiler::TNode<Object> tmp112;
8271 112 : compiler::TNode<Object> tmp113;
8272 112 : compiler::TNode<String> tmp114;
8273 112 : compiler::TNode<Object> tmp115;
8274 112 : ca_.Bind(&block15, &tmp108, &tmp109, &tmp110, &tmp111, &tmp112, &tmp113, &tmp114, &tmp115);
8275 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 547);
8276 112 : ArrayJoinBuiltinsFromDSLAssembler(state_).JoinStackPopInline(compiler::TNode<Context>{tmp108}, compiler::TNode<JSReceiver>{tmp109});
8277 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 548);
8278 112 : CodeStubAssembler(state_).CallRuntime(Runtime::kReThrow, tmp108, tmp115);
8279 112 : CodeStubAssembler(state_).Unreachable();
8280 : }
8281 :
8282 112 : if (block7.is_used()) {
8283 112 : compiler::TNode<Context> tmp117;
8284 112 : compiler::TNode<JSReceiver> tmp118;
8285 112 : compiler::TNode<Number> tmp119;
8286 112 : compiler::TNode<Object> tmp120;
8287 112 : compiler::TNode<Object> tmp121;
8288 112 : compiler::TNode<Object> tmp122;
8289 112 : compiler::TNode<String> tmp123;
8290 112 : ca_.Bind(&block7, &tmp117, &tmp118, &tmp119, &tmp120, &tmp121, &tmp122, &tmp123);
8291 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 551);
8292 112 : compiler::TNode<String> tmp124;
8293 112 : USE(tmp124);
8294 112 : tmp124 = BaseBuiltinsFromDSLAssembler(state_).kEmptyString();
8295 112 : ca_.Goto(&block1, tmp117, tmp118, tmp119, tmp120, tmp121, tmp122, tmp124);
8296 : }
8297 :
8298 112 : if (block1.is_used()) {
8299 112 : compiler::TNode<Context> tmp125;
8300 112 : compiler::TNode<JSReceiver> tmp126;
8301 112 : compiler::TNode<Number> tmp127;
8302 112 : compiler::TNode<Object> tmp128;
8303 112 : compiler::TNode<Object> tmp129;
8304 112 : compiler::TNode<Object> tmp130;
8305 112 : compiler::TNode<Object> tmp131;
8306 112 : ca_.Bind(&block1, &tmp125, &tmp126, &tmp127, &tmp128, &tmp129, &tmp130, &tmp131);
8307 112 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 529);
8308 112 : ca_.Goto(&block18, tmp125, tmp126, tmp127, tmp128, tmp129, tmp130, tmp131);
8309 : }
8310 :
8311 112 : compiler::TNode<Context> tmp132;
8312 112 : compiler::TNode<JSReceiver> tmp133;
8313 112 : compiler::TNode<Number> tmp134;
8314 112 : compiler::TNode<Object> tmp135;
8315 112 : compiler::TNode<Object> tmp136;
8316 112 : compiler::TNode<Object> tmp137;
8317 112 : compiler::TNode<Object> tmp138;
8318 112 : ca_.Bind(&block18, &tmp132, &tmp133, &tmp134, &tmp135, &tmp136, &tmp137, &tmp138);
8319 224 : return compiler::TNode<Object>{tmp138};
8320 : }
8321 :
8322 448 : compiler::TNode<FixedArray> ArrayJoinBuiltinsFromDSLAssembler::StoreAndGrowFixedArray5ATSmi(compiler::TNode<FixedArray> p_fixedArray, compiler::TNode<IntPtrT> p_index, compiler::TNode<Smi> p_element) {
8323 448 : compiler::CodeAssemblerParameterizedLabel<FixedArray, IntPtrT, Smi> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
8324 896 : compiler::CodeAssemblerParameterizedLabel<FixedArray, IntPtrT, Smi, IntPtrT> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
8325 896 : compiler::CodeAssemblerParameterizedLabel<FixedArray, IntPtrT, Smi, IntPtrT> block3(&ca_, compiler::CodeAssemblerLabel::kDeferred);
8326 896 : compiler::CodeAssemblerParameterizedLabel<FixedArray, IntPtrT, Smi, FixedArray> block1(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
8327 896 : compiler::CodeAssemblerParameterizedLabel<FixedArray, IntPtrT, Smi, FixedArray> block5(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
8328 448 : ca_.Goto(&block0, p_fixedArray, p_index, p_element);
8329 :
8330 448 : if (block0.is_used()) {
8331 448 : compiler::TNode<FixedArray> tmp0;
8332 448 : compiler::TNode<IntPtrT> tmp1;
8333 448 : compiler::TNode<Smi> tmp2;
8334 448 : ca_.Bind(&block0, &tmp0, &tmp1, &tmp2);
8335 448 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 134);
8336 448 : compiler::TNode<IntPtrT> tmp3;
8337 448 : USE(tmp3);
8338 448 : tmp3 = ca_.UncheckedCast<IntPtrT>(CodeStubAssembler(state_).LoadAndUntagFixedArrayBaseLength(compiler::TNode<FixedArrayBase>{tmp0}));
8339 448 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 136);
8340 448 : compiler::TNode<BoolT> tmp4;
8341 448 : USE(tmp4);
8342 448 : tmp4 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).IntPtrLessThan(compiler::TNode<IntPtrT>{tmp1}, compiler::TNode<IntPtrT>{tmp3}));
8343 448 : ca_.Branch(tmp4, &block2, &block3, tmp0, tmp1, tmp2, tmp3);
8344 : }
8345 :
8346 448 : if (block2.is_used()) {
8347 448 : compiler::TNode<FixedArray> tmp5;
8348 448 : compiler::TNode<IntPtrT> tmp6;
8349 448 : compiler::TNode<Smi> tmp7;
8350 448 : compiler::TNode<IntPtrT> tmp8;
8351 448 : ca_.Bind(&block2, &tmp5, &tmp6, &tmp7, &tmp8);
8352 448 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 137);
8353 448 : CodeStubAssembler(state_).StoreFixedArrayElement(compiler::TNode<FixedArray>{tmp5}, compiler::TNode<IntPtrT>{tmp6}, compiler::TNode<Smi>{tmp7});
8354 448 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 138);
8355 448 : ca_.Goto(&block1, tmp5, tmp6, tmp7, tmp5);
8356 : }
8357 :
8358 448 : if (block3.is_used()) {
8359 448 : compiler::TNode<FixedArray> tmp9;
8360 448 : compiler::TNode<IntPtrT> tmp10;
8361 448 : compiler::TNode<Smi> tmp11;
8362 448 : compiler::TNode<IntPtrT> tmp12;
8363 448 : ca_.Bind(&block3, &tmp9, &tmp10, &tmp11, &tmp12);
8364 448 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 141);
8365 448 : compiler::TNode<IntPtrT> tmp13;
8366 448 : USE(tmp13);
8367 448 : tmp13 = ca_.UncheckedCast<IntPtrT>(CodeStubAssembler(state_).CalculateNewElementsCapacity(compiler::TNode<IntPtrT>{tmp12}));
8368 448 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 144);
8369 448 : compiler::TNode<IntPtrT> tmp14;
8370 448 : USE(tmp14);
8371 448 : tmp14 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATintptr17ATconstexpr_int31(0));
8372 448 : compiler::TNode<FixedArray> tmp15;
8373 448 : USE(tmp15);
8374 448 : tmp15 = ca_.UncheckedCast<FixedArray>(CodeStubAssembler(state_).ExtractFixedArray(compiler::TNode<FixedArray>{tmp9}, compiler::TNode<IntPtrT>{tmp14}, compiler::TNode<IntPtrT>{tmp12}, compiler::TNode<IntPtrT>{tmp13}, CodeStubAssembler::ExtractFixedArrayFlag::kFixedArrays));
8375 448 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 143);
8376 448 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 145);
8377 448 : CodeStubAssembler(state_).StoreFixedArrayElement(compiler::TNode<FixedArray>{tmp15}, compiler::TNode<IntPtrT>{tmp10}, compiler::TNode<Smi>{tmp11});
8378 448 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 146);
8379 448 : ca_.Goto(&block1, tmp9, tmp10, tmp11, tmp15);
8380 : }
8381 :
8382 448 : if (block1.is_used()) {
8383 448 : compiler::TNode<FixedArray> tmp16;
8384 448 : compiler::TNode<IntPtrT> tmp17;
8385 448 : compiler::TNode<Smi> tmp18;
8386 448 : compiler::TNode<FixedArray> tmp19;
8387 448 : ca_.Bind(&block1, &tmp16, &tmp17, &tmp18, &tmp19);
8388 448 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 132);
8389 448 : ca_.Goto(&block5, tmp16, tmp17, tmp18, tmp19);
8390 : }
8391 :
8392 448 : compiler::TNode<FixedArray> tmp20;
8393 448 : compiler::TNode<IntPtrT> tmp21;
8394 448 : compiler::TNode<Smi> tmp22;
8395 448 : compiler::TNode<FixedArray> tmp23;
8396 448 : ca_.Bind(&block5, &tmp20, &tmp21, &tmp22, &tmp23);
8397 896 : return compiler::TNode<FixedArray>{tmp23};
8398 : }
8399 :
8400 224 : compiler::TNode<FixedArray> ArrayJoinBuiltinsFromDSLAssembler::StoreAndGrowFixedArray8ATString(compiler::TNode<FixedArray> p_fixedArray, compiler::TNode<IntPtrT> p_index, compiler::TNode<String> p_element) {
8401 224 : compiler::CodeAssemblerParameterizedLabel<FixedArray, IntPtrT, String> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
8402 448 : compiler::CodeAssemblerParameterizedLabel<FixedArray, IntPtrT, String, IntPtrT> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
8403 448 : compiler::CodeAssemblerParameterizedLabel<FixedArray, IntPtrT, String, IntPtrT> block3(&ca_, compiler::CodeAssemblerLabel::kDeferred);
8404 448 : compiler::CodeAssemblerParameterizedLabel<FixedArray, IntPtrT, String, FixedArray> block1(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
8405 448 : compiler::CodeAssemblerParameterizedLabel<FixedArray, IntPtrT, String, FixedArray> block5(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
8406 224 : ca_.Goto(&block0, p_fixedArray, p_index, p_element);
8407 :
8408 224 : if (block0.is_used()) {
8409 224 : compiler::TNode<FixedArray> tmp0;
8410 224 : compiler::TNode<IntPtrT> tmp1;
8411 224 : compiler::TNode<String> tmp2;
8412 224 : ca_.Bind(&block0, &tmp0, &tmp1, &tmp2);
8413 224 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 134);
8414 224 : compiler::TNode<IntPtrT> tmp3;
8415 224 : USE(tmp3);
8416 224 : tmp3 = ca_.UncheckedCast<IntPtrT>(CodeStubAssembler(state_).LoadAndUntagFixedArrayBaseLength(compiler::TNode<FixedArrayBase>{tmp0}));
8417 224 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 136);
8418 224 : compiler::TNode<BoolT> tmp4;
8419 224 : USE(tmp4);
8420 224 : tmp4 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).IntPtrLessThan(compiler::TNode<IntPtrT>{tmp1}, compiler::TNode<IntPtrT>{tmp3}));
8421 224 : ca_.Branch(tmp4, &block2, &block3, tmp0, tmp1, tmp2, tmp3);
8422 : }
8423 :
8424 224 : if (block2.is_used()) {
8425 224 : compiler::TNode<FixedArray> tmp5;
8426 224 : compiler::TNode<IntPtrT> tmp6;
8427 224 : compiler::TNode<String> tmp7;
8428 224 : compiler::TNode<IntPtrT> tmp8;
8429 224 : ca_.Bind(&block2, &tmp5, &tmp6, &tmp7, &tmp8);
8430 224 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 137);
8431 224 : CodeStubAssembler(state_).StoreFixedArrayElement(compiler::TNode<FixedArray>{tmp5}, compiler::TNode<IntPtrT>{tmp6}, compiler::TNode<HeapObject>{tmp7});
8432 224 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 138);
8433 224 : ca_.Goto(&block1, tmp5, tmp6, tmp7, tmp5);
8434 : }
8435 :
8436 224 : if (block3.is_used()) {
8437 224 : compiler::TNode<FixedArray> tmp9;
8438 224 : compiler::TNode<IntPtrT> tmp10;
8439 224 : compiler::TNode<String> tmp11;
8440 224 : compiler::TNode<IntPtrT> tmp12;
8441 224 : ca_.Bind(&block3, &tmp9, &tmp10, &tmp11, &tmp12);
8442 224 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 141);
8443 224 : compiler::TNode<IntPtrT> tmp13;
8444 224 : USE(tmp13);
8445 224 : tmp13 = ca_.UncheckedCast<IntPtrT>(CodeStubAssembler(state_).CalculateNewElementsCapacity(compiler::TNode<IntPtrT>{tmp12}));
8446 224 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 144);
8447 224 : compiler::TNode<IntPtrT> tmp14;
8448 224 : USE(tmp14);
8449 224 : tmp14 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATintptr17ATconstexpr_int31(0));
8450 224 : compiler::TNode<FixedArray> tmp15;
8451 224 : USE(tmp15);
8452 224 : tmp15 = ca_.UncheckedCast<FixedArray>(CodeStubAssembler(state_).ExtractFixedArray(compiler::TNode<FixedArray>{tmp9}, compiler::TNode<IntPtrT>{tmp14}, compiler::TNode<IntPtrT>{tmp12}, compiler::TNode<IntPtrT>{tmp13}, CodeStubAssembler::ExtractFixedArrayFlag::kFixedArrays));
8453 224 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 143);
8454 224 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 145);
8455 224 : CodeStubAssembler(state_).StoreFixedArrayElement(compiler::TNode<FixedArray>{tmp15}, compiler::TNode<IntPtrT>{tmp10}, compiler::TNode<HeapObject>{tmp11});
8456 224 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 146);
8457 224 : ca_.Goto(&block1, tmp9, tmp10, tmp11, tmp15);
8458 : }
8459 :
8460 224 : if (block1.is_used()) {
8461 224 : compiler::TNode<FixedArray> tmp16;
8462 224 : compiler::TNode<IntPtrT> tmp17;
8463 224 : compiler::TNode<String> tmp18;
8464 224 : compiler::TNode<FixedArray> tmp19;
8465 224 : ca_.Bind(&block1, &tmp16, &tmp17, &tmp18, &tmp19);
8466 224 : ca_.SetSourcePosition("../../src/builtins/array-join.tq", 132);
8467 224 : ca_.Goto(&block5, tmp16, tmp17, tmp18, tmp19);
8468 : }
8469 :
8470 224 : compiler::TNode<FixedArray> tmp20;
8471 224 : compiler::TNode<IntPtrT> tmp21;
8472 224 : compiler::TNode<String> tmp22;
8473 224 : compiler::TNode<FixedArray> tmp23;
8474 224 : ca_.Bind(&block5, &tmp20, &tmp21, &tmp22, &tmp23);
8475 448 : return compiler::TNode<FixedArray>{tmp23};
8476 : }
8477 :
8478 : } // namespace internal
8479 86739 : } // namespace v8
8480 :
|