LCOV - code coverage report
Current view: top level - out/Release/gen/torque-generated - builtins-array-splice-from-dsl-gen.cc (source / functions) Hit Total Coverage
Test: app.info Lines: 926 930 99.6 %
Date: 2019-04-17 Functions: 18 18 100.0 %

          Line data    Source code
       1             : #include "src/builtins/builtins-utils-gen.h"
       2             : #include "src/builtins/builtins.h"
       3             : #include "src/code-factory.h"
       4             : #include "src/elements-kind.h"
       5             : #include "src/heap/factory-inl.h"
       6             : #include "src/objects.h"
       7             : #include "src/objects/arguments.h"
       8             : #include "src/objects/bigint.h"
       9             : #include "src/objects/free-space.h"
      10             : #include "src/objects/js-generator.h"
      11             : #include "src/objects/js-promise.h"
      12             : #include "src/objects/js-regexp-string-iterator.h"
      13             : #include "src/objects/module.h"
      14             : #include "src/objects/stack-frame-info.h"
      15             : #include "src/builtins/builtins-regexp-gen.h"
      16             : #include "src/builtins/builtins-array-gen.h"
      17             : #include "src/builtins/builtins-collections-gen.h"
      18             : #include "src/builtins/builtins-data-view-gen.h"
      19             : #include "src/builtins/builtins-iterator-gen.h"
      20             : #include "src/builtins/builtins-proxy-gen.h"
      21             : #include "src/builtins/builtins-proxy-gen.h"
      22             : #include "src/builtins/builtins-regexp-gen.h"
      23             : #include "src/builtins/builtins-regexp-gen.h"
      24             : #include "src/builtins/builtins-regexp-gen.h"
      25             : #include "src/builtins/builtins-typed-array-gen.h"
      26             : #include "src/builtins/builtins-constructor-gen.h"
      27             : #include "src/builtins/builtins-typed-array-gen.h"
      28             : #include "src/builtins/builtins-typed-array-gen.h"
      29             : #include "src/builtins/builtins-typed-array-gen.h"
      30             : #include "src/builtins/builtins-typed-array-gen.h"
      31             : #include "src/builtins/builtins-typed-array-gen.h"
      32             : #include "src/builtins/builtins-typed-array-gen.h"
      33             : #include "src/builtins/builtins-typed-array-gen.h"
      34             : #include "src/builtins/builtins-typed-array-gen.h"
      35             : #include "torque-generated/builtins-base-from-dsl-gen.h"
      36             : #include "torque-generated/builtins-growable-fixed-array-from-dsl-gen.h"
      37             : #include "torque-generated/builtins-arguments-from-dsl-gen.h"
      38             : #include "torque-generated/builtins-array-from-dsl-gen.h"
      39             : #include "torque-generated/builtins-array-copywithin-from-dsl-gen.h"
      40             : #include "torque-generated/builtins-array-filter-from-dsl-gen.h"
      41             : #include "torque-generated/builtins-array-find-from-dsl-gen.h"
      42             : #include "torque-generated/builtins-array-findindex-from-dsl-gen.h"
      43             : #include "torque-generated/builtins-array-foreach-from-dsl-gen.h"
      44             : #include "torque-generated/builtins-array-join-from-dsl-gen.h"
      45             : #include "torque-generated/builtins-array-lastindexof-from-dsl-gen.h"
      46             : #include "torque-generated/builtins-array-of-from-dsl-gen.h"
      47             : #include "torque-generated/builtins-array-map-from-dsl-gen.h"
      48             : #include "torque-generated/builtins-array-reverse-from-dsl-gen.h"
      49             : #include "torque-generated/builtins-array-shift-from-dsl-gen.h"
      50             : #include "torque-generated/builtins-array-slice-from-dsl-gen.h"
      51             : #include "torque-generated/builtins-array-splice-from-dsl-gen.h"
      52             : #include "torque-generated/builtins-array-unshift-from-dsl-gen.h"
      53             : #include "torque-generated/builtins-collections-from-dsl-gen.h"
      54             : #include "torque-generated/builtins-data-view-from-dsl-gen.h"
      55             : #include "torque-generated/builtins-extras-utils-from-dsl-gen.h"
      56             : #include "torque-generated/builtins-iterator-from-dsl-gen.h"
      57             : #include "torque-generated/builtins-object-from-dsl-gen.h"
      58             : #include "torque-generated/builtins-proxy-from-dsl-gen.h"
      59             : #include "torque-generated/builtins-regexp-from-dsl-gen.h"
      60             : #include "torque-generated/builtins-regexp-replace-from-dsl-gen.h"
      61             : #include "torque-generated/builtins-string-from-dsl-gen.h"
      62             : #include "torque-generated/builtins-string-html-from-dsl-gen.h"
      63             : #include "torque-generated/builtins-string-repeat-from-dsl-gen.h"
      64             : #include "torque-generated/builtins-typed-array-from-dsl-gen.h"
      65             : #include "torque-generated/builtins-typed-array-createtypedarray-from-dsl-gen.h"
      66             : #include "torque-generated/builtins-typed-array-every-from-dsl-gen.h"
      67             : #include "torque-generated/builtins-typed-array-filter-from-dsl-gen.h"
      68             : #include "torque-generated/builtins-typed-array-find-from-dsl-gen.h"
      69             : #include "torque-generated/builtins-typed-array-findindex-from-dsl-gen.h"
      70             : #include "torque-generated/builtins-typed-array-foreach-from-dsl-gen.h"
      71             : #include "torque-generated/builtins-typed-array-reduce-from-dsl-gen.h"
      72             : #include "torque-generated/builtins-typed-array-reduceright-from-dsl-gen.h"
      73             : #include "torque-generated/builtins-typed-array-slice-from-dsl-gen.h"
      74             : #include "torque-generated/builtins-typed-array-some-from-dsl-gen.h"
      75             : #include "torque-generated/builtins-typed-array-subarray-from-dsl-gen.h"
      76             : #include "torque-generated/builtins-test-from-dsl-gen.h"
      77             : 
      78             : namespace v8 {
      79             : namespace internal {
      80             : 
      81          56 : compiler::TNode<FixedArray> ArraySpliceBuiltinsFromDSLAssembler::Extract10FixedArray(compiler::TNode<Context> p_context, compiler::TNode<FixedArrayBase> p_elements, compiler::TNode<Smi> p_first, compiler::TNode<Smi> p_count, compiler::TNode<Smi> p_capacity) {
      82          56 :   compiler::CodeAssemblerParameterizedLabel<Context, FixedArrayBase, Smi, Smi, Smi> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
      83             :   compiler::CodeAssemblerParameterizedLabel<Context, FixedArrayBase, Smi, Smi, Smi, FixedArray> block1(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
      84             :   compiler::CodeAssemblerParameterizedLabel<Context, FixedArrayBase, Smi, Smi, Smi, FixedArray> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
      85             :     ca_.Goto(&block0, p_context, p_elements, p_first, p_count, p_capacity);
      86             : 
      87          56 :   if (block0.is_used()) {
      88             :     compiler::TNode<Context> tmp0;
      89             :     compiler::TNode<FixedArrayBase> tmp1;
      90             :     compiler::TNode<Smi> tmp2;
      91             :     compiler::TNode<Smi> tmp3;
      92             :     compiler::TNode<Smi> tmp4;
      93             :     ca_.Bind(&block0, &tmp0, &tmp1, &tmp2, &tmp3, &tmp4);
      94          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 18);
      95             :     compiler::TNode<FixedArrayBase> tmp5;
      96             :     USE(tmp5);
      97         112 :     tmp5 = ca_.UncheckedCast<FixedArrayBase>(CodeStubAssembler(state_).ExtractFixedArray(compiler::TNode<FixedArrayBase>{tmp1}, compiler::TNode<Smi>{tmp2}, compiler::TNode<Smi>{tmp3}, compiler::TNode<Smi>{tmp4}));
      98          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 17);
      99             :     compiler::TNode<FixedArray> tmp6;
     100             :     USE(tmp6);
     101         168 :     tmp6 = ca_.UncheckedCast<FixedArray>(BaseBuiltinsFromDSLAssembler(state_).UnsafeCast10FixedArray(compiler::TNode<Context>{tmp0}, compiler::TNode<Object>{tmp5}));
     102             :     ca_.Goto(&block1, tmp0, tmp1, tmp2, tmp3, tmp4, tmp6);
     103             :   }
     104             : 
     105          56 :   if (block1.is_used()) {
     106             :     compiler::TNode<Context> tmp7;
     107             :     compiler::TNode<FixedArrayBase> tmp8;
     108             :     compiler::TNode<Smi> tmp9;
     109             :     compiler::TNode<Smi> tmp10;
     110             :     compiler::TNode<Smi> tmp11;
     111             :     compiler::TNode<FixedArray> tmp12;
     112             :     ca_.Bind(&block1, &tmp7, &tmp8, &tmp9, &tmp10, &tmp11, &tmp12);
     113          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 10);
     114             :     ca_.Goto(&block2, tmp7, tmp8, tmp9, tmp10, tmp11, tmp12);
     115             :   }
     116             : 
     117             :     compiler::TNode<Context> tmp13;
     118             :     compiler::TNode<FixedArrayBase> tmp14;
     119             :     compiler::TNode<Smi> tmp15;
     120             :     compiler::TNode<Smi> tmp16;
     121             :     compiler::TNode<Smi> tmp17;
     122             :     compiler::TNode<FixedArray> tmp18;
     123             :     ca_.Bind(&block2, &tmp13, &tmp14, &tmp15, &tmp16, &tmp17, &tmp18);
     124         112 :   return compiler::TNode<FixedArray>{tmp18};
     125             : }
     126             : 
     127          56 : compiler::TNode<FixedDoubleArray> ArraySpliceBuiltinsFromDSLAssembler::Extract16FixedDoubleArray(compiler::TNode<Context> p_context, compiler::TNode<FixedArrayBase> p_elements, compiler::TNode<Smi> p_first, compiler::TNode<Smi> p_count, compiler::TNode<Smi> p_capacity) {
     128          56 :   compiler::CodeAssemblerParameterizedLabel<Context, FixedArrayBase, Smi, Smi, Smi> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
     129             :   compiler::CodeAssemblerParameterizedLabel<Context, FixedArrayBase, Smi, Smi, Smi> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
     130             :   compiler::CodeAssemblerParameterizedLabel<Context, FixedArrayBase, Smi, Smi, Smi> block3(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
     131             :   compiler::CodeAssemblerParameterizedLabel<Context, FixedArrayBase, Smi, Smi, Smi, FixedDoubleArray> block1(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
     132             :   compiler::CodeAssemblerParameterizedLabel<Context, FixedArrayBase, Smi, Smi, Smi, FixedDoubleArray> block4(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
     133             :     ca_.Goto(&block0, p_context, p_elements, p_first, p_count, p_capacity);
     134             : 
     135          56 :   if (block0.is_used()) {
     136             :     compiler::TNode<Context> tmp0;
     137             :     compiler::TNode<FixedArrayBase> tmp1;
     138             :     compiler::TNode<Smi> tmp2;
     139             :     compiler::TNode<Smi> tmp3;
     140             :     compiler::TNode<Smi> tmp4;
     141             :     ca_.Bind(&block0, &tmp0, &tmp1, &tmp2, &tmp3, &tmp4);
     142          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 24);
     143             :     compiler::TNode<FixedArray> tmp5;
     144             :     USE(tmp5);
     145         168 :     tmp5 = BaseBuiltinsFromDSLAssembler(state_).kEmptyFixedArray();
     146             :     compiler::TNode<BoolT> tmp6;
     147             :     USE(tmp6);
     148         112 :     tmp6 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).WordEqual(compiler::TNode<HeapObject>{tmp1}, compiler::TNode<HeapObject>{tmp5}));
     149          56 :     ca_.Branch(tmp6, &block2, &block3, tmp0, tmp1, tmp2, tmp3, tmp4);
     150             :   }
     151             : 
     152          56 :   if (block2.is_used()) {
     153             :     compiler::TNode<Context> tmp7;
     154             :     compiler::TNode<FixedArrayBase> tmp8;
     155             :     compiler::TNode<Smi> tmp9;
     156             :     compiler::TNode<Smi> tmp10;
     157             :     compiler::TNode<Smi> tmp11;
     158             :     ca_.Bind(&block2, &tmp7, &tmp8, &tmp9, &tmp10, &tmp11);
     159          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 25);
     160             :     compiler::TNode<IntPtrT> tmp12;
     161             :     USE(tmp12);
     162         168 :     tmp12 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).Convert8ATintptr5ATSmi(compiler::TNode<Smi>{tmp11}));
     163             :     compiler::TNode<FixedDoubleArray> tmp13;
     164             :     USE(tmp13);
     165         112 :     tmp13 = ca_.UncheckedCast<FixedDoubleArray>(CodeStubAssembler(state_).AllocateZeroedFixedDoubleArray(compiler::TNode<IntPtrT>{tmp12}));
     166             :     ca_.Goto(&block1, tmp7, tmp8, tmp9, tmp10, tmp11, tmp13);
     167             :   }
     168             : 
     169          56 :   if (block3.is_used()) {
     170             :     compiler::TNode<Context> tmp14;
     171             :     compiler::TNode<FixedArrayBase> tmp15;
     172             :     compiler::TNode<Smi> tmp16;
     173             :     compiler::TNode<Smi> tmp17;
     174             :     compiler::TNode<Smi> tmp18;
     175             :     ca_.Bind(&block3, &tmp14, &tmp15, &tmp16, &tmp17, &tmp18);
     176          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 28);
     177             :     compiler::TNode<FixedArrayBase> tmp19;
     178             :     USE(tmp19);
     179         112 :     tmp19 = ca_.UncheckedCast<FixedArrayBase>(CodeStubAssembler(state_).ExtractFixedArray(compiler::TNode<FixedArrayBase>{tmp15}, compiler::TNode<Smi>{tmp16}, compiler::TNode<Smi>{tmp17}, compiler::TNode<Smi>{tmp18}));
     180          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 27);
     181             :     compiler::TNode<FixedDoubleArray> tmp20;
     182             :     USE(tmp20);
     183         168 :     tmp20 = ca_.UncheckedCast<FixedDoubleArray>(BaseBuiltinsFromDSLAssembler(state_).UnsafeCast16FixedDoubleArray(compiler::TNode<Context>{tmp14}, compiler::TNode<Object>{tmp19}));
     184             :     ca_.Goto(&block1, tmp14, tmp15, tmp16, tmp17, tmp18, tmp20);
     185             :   }
     186             : 
     187          56 :   if (block1.is_used()) {
     188             :     compiler::TNode<Context> tmp21;
     189             :     compiler::TNode<FixedArrayBase> tmp22;
     190             :     compiler::TNode<Smi> tmp23;
     191             :     compiler::TNode<Smi> tmp24;
     192             :     compiler::TNode<Smi> tmp25;
     193             :     compiler::TNode<FixedDoubleArray> tmp26;
     194             :     ca_.Bind(&block1, &tmp21, &tmp22, &tmp23, &tmp24, &tmp25, &tmp26);
     195          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 10);
     196             :     ca_.Goto(&block4, tmp21, tmp22, tmp23, tmp24, tmp25, tmp26);
     197             :   }
     198             : 
     199             :     compiler::TNode<Context> tmp27;
     200             :     compiler::TNode<FixedArrayBase> tmp28;
     201             :     compiler::TNode<Smi> tmp29;
     202             :     compiler::TNode<Smi> tmp30;
     203             :     compiler::TNode<Smi> tmp31;
     204             :     compiler::TNode<FixedDoubleArray> tmp32;
     205             :     ca_.Bind(&block4, &tmp27, &tmp28, &tmp29, &tmp30, &tmp31, &tmp32);
     206         112 :   return compiler::TNode<FixedDoubleArray>{tmp32};
     207             : }
     208             : 
     209          56 : compiler::TNode<Object> ArraySpliceBuiltinsFromDSLAssembler::FastArraySplice(compiler::TNode<Context> p_context, BaseBuiltinsFromDSLAssembler::Arguments p_args, compiler::TNode<JSReceiver> p_o, compiler::TNode<Number> p_originalLengthNumber, compiler::TNode<Number> p_actualStartNumber, compiler::TNode<Smi> p_insertCount, compiler::TNode<Number> p_actualDeleteCountNumber, compiler::CodeAssemblerLabel* label_Bailout) {
     210          56 :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
     211             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number, Number> block4(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
     212             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number, Number, Smi> block3(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
     213             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number, Smi, Number> block6(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
     214             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number, Smi, Number, Smi> block5(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
     215             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number, Smi, Smi, Number> block8(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
     216             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number, Smi, Smi, Number, Smi> block7(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
     217             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number, Smi, Smi, Smi, Smi, Smi, JSReceiver> block10(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
     218             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number, Smi, Smi, Smi, Smi, Smi, JSReceiver, JSArray> block9(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
     219             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number, Smi, Smi, Smi, Smi, Smi, JSArray, Map> block11(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
     220             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number, Smi, Smi, Smi, Smi, Smi, JSArray, Map> block12(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
     221             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number, Smi, Smi, Smi, Smi, Smi, JSArray, Map> block13(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
     222             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number, Smi, Smi, Smi, Smi, Smi, JSArray, Map> block14(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
     223             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number, Smi, Smi, Smi, Smi, Smi, JSArray, Map> block15(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
     224             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number, Smi, Smi, Smi, Smi, Smi, JSArray, Map> block16(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
     225             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number, Smi, Smi, Smi, Smi, Smi, JSArray, Map, Map> block18(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
     226             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number, Smi, Smi, Smi, Smi, Smi, JSArray, Map, Map, Int32T> block17(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
     227             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number, Smi, Smi, Smi, Smi, Smi, JSArray, Map, Int32T> block19(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
     228             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number, Smi, Smi, Smi, Smi, Smi, JSArray, Map, Int32T> block20(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
     229             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number, Smi, Smi, Smi, Smi, Smi, JSArray, Map, Int32T, Int32T, IntPtrT> block23(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
     230             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number, Smi, Smi, Smi, Smi, Smi, JSArray, Map, Int32T, Int32T, IntPtrT> block21(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
     231             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number, Smi, Smi, Smi, Smi, Smi, JSArray, Map, Int32T, Int32T, IntPtrT, Object> block25(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
     232             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number, Smi, Smi, Smi, Smi, Smi, JSArray, Map, Int32T, Int32T, IntPtrT, Object> block28(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
     233             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number, Smi, Smi, Smi, Smi, Smi, JSArray, Map, Int32T, Int32T, IntPtrT, Object, HeapObject> block30(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
     234             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number, Smi, Smi, Smi, Smi, Smi, JSArray, Map, Int32T, Int32T, IntPtrT, Object, HeapObject> block31(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
     235             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number, Smi, Smi, Smi, Smi, Smi, JSArray, Map, Int32T, Int32T, IntPtrT, Object, HeapObject, Int32T> block33(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
     236             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number, Smi, Smi, Smi, Smi, Smi, JSArray, Map, Int32T, Int32T, IntPtrT, Object, HeapObject, Int32T> block32(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
     237             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number, Smi, Smi, Smi, Smi, Smi, JSArray, Map, Int32T, Int32T, IntPtrT, Object> block29(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
     238             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number, Smi, Smi, Smi, Smi, Smi, JSArray, Map, Int32T, Int32T, IntPtrT, Object> block26(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
     239             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number, Smi, Smi, Smi, Smi, Smi, JSArray, Map, Int32T, Int32T, IntPtrT, Object> block34(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
     240             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number, Smi, Smi, Smi, Smi, Smi, JSArray, Map, Int32T, Int32T, IntPtrT, Object> block36(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
     241             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number, Smi, Smi, Smi, Smi, Smi, JSArray, Map, Int32T, Int32T, IntPtrT, Object> block37(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
     242             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number, Smi, Smi, Smi, Smi, Smi, JSArray, Map, Int32T, Int32T, IntPtrT, Object> block35(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
     243             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number, Smi, Smi, Smi, Smi, Smi, JSArray, Map, Int32T, Int32T, IntPtrT, Object> block27(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
     244             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number, Smi, Smi, Smi, Smi, Smi, JSArray, Map, Int32T, Int32T, IntPtrT> block24(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
     245             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number, Smi, Smi, Smi, Smi, Smi, JSArray, Map, Int32T, Int32T, IntPtrT> block22(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
     246             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number, Smi, Smi, Smi, Smi, Smi, JSArray, Map, Int32T, Int32T> block38(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
     247             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number, Smi, Smi, Smi, Smi, Smi, JSArray, Map, Int32T, Int32T> block39(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
     248             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number, Smi, Smi, Smi, Smi, Smi, JSArray, Map, Int32T, Int32T, Number> block41(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
     249             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number, Smi, Smi, Smi, Smi, Smi, JSArray, Map, Int32T, Int32T, Number, Smi> block40(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
     250             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number, Smi, Smi, Smi, Smi, Smi, JSArray, Map, Int32T, Int32T, Smi> block42(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
     251             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number, Smi, Smi, Smi, Smi, Smi, JSArray, Map, Int32T, Int32T, Smi> block43(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
     252             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number, Smi, Smi, Smi, Smi, Smi, JSArray, Map, Int32T, Int32T, Smi, JSArray> block44(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
     253             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number, Smi, Smi, Smi, Smi, Smi, JSArray, Map, Int32T, Int32T, Smi, JSArray> block45(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
     254             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number, Smi, Smi, Smi, Smi, Smi, JSArray, Map, Int32T, Int32T, Smi, JSArray> block46(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
     255             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number, Smi, Smi, Smi, Smi, Smi, JSArray, Map, Int32T, Int32T, Smi, JSArray, RawPtrT, RawPtrT, IntPtrT, JSArray, Smi, Smi, Smi, Smi, Smi, Smi> block50(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
     256             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number, Smi, Smi, Smi, Smi, Smi, JSArray, Map, Int32T, Int32T, Smi, JSArray, RawPtrT, RawPtrT, IntPtrT, JSArray, Smi, Smi, Smi, Smi, Smi, Smi> block49(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
     257             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number, Smi, Smi, Smi, Smi, Smi, JSArray, Map, Int32T, Int32T, Smi, JSArray> block47(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
     258             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number, Smi, Smi, Smi, Smi, Smi, JSArray, Map, Int32T, Int32T, Smi, JSArray, RawPtrT, RawPtrT, IntPtrT, JSArray, Smi, Smi, Smi, Smi, Smi, Smi> block52(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
     259             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number, Smi, Smi, Smi, Smi, Smi, JSArray, Map, Int32T, Int32T, Smi, JSArray, RawPtrT, RawPtrT, IntPtrT, JSArray, Smi, Smi, Smi, Smi, Smi, Smi> block51(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
     260             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number, Smi, Smi, Smi, Smi, Smi, JSArray, Map, Int32T, Int32T, Smi, JSArray> block48(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
     261             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number, Object> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
     262             :   compiler::CodeAssemblerParameterizedLabel<> block1(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
     263             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number, Object> block53(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
     264             :     ca_.Goto(&block0, p_context, p_args.frame, p_args.base, p_args.length, p_o, p_originalLengthNumber, p_actualStartNumber, p_insertCount, p_actualDeleteCountNumber);
     265             : 
     266          56 :   if (block0.is_used()) {
     267             :     compiler::TNode<Context> tmp0;
     268             :     compiler::TNode<RawPtrT> tmp1;
     269             :     compiler::TNode<RawPtrT> tmp2;
     270             :     compiler::TNode<IntPtrT> tmp3;
     271             :     compiler::TNode<JSReceiver> tmp4;
     272             :     compiler::TNode<Number> tmp5;
     273             :     compiler::TNode<Number> tmp6;
     274             :     compiler::TNode<Smi> tmp7;
     275             :     compiler::TNode<Number> tmp8;
     276             :     ca_.Bind(&block0, &tmp0, &tmp1, &tmp2, &tmp3, &tmp4, &tmp5, &tmp6, &tmp7, &tmp8);
     277          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 116);
     278             :     compiler::TNode<Smi> tmp9;
     279             :     USE(tmp9);
     280          56 :     compiler::CodeAssemblerLabel label0(&ca_);
     281         168 :     tmp9 = BaseBuiltinsFromDSLAssembler(state_).Cast5ATSmi(compiler::TNode<Object>{tmp5}, &label0);
     282             :     ca_.Goto(&block3, tmp0, tmp1, tmp2, tmp3, tmp4, tmp5, tmp6, tmp7, tmp8, tmp5, tmp9);
     283          56 :     if (label0.is_used()) {
     284          56 :       ca_.Bind(&label0);
     285             :       ca_.Goto(&block4, tmp0, tmp1, tmp2, tmp3, tmp4, tmp5, tmp6, tmp7, tmp8, tmp5);
     286             :     }
     287             :   }
     288             : 
     289          56 :   if (block4.is_used()) {
     290             :     compiler::TNode<Context> tmp10;
     291             :     compiler::TNode<RawPtrT> tmp11;
     292             :     compiler::TNode<RawPtrT> tmp12;
     293             :     compiler::TNode<IntPtrT> tmp13;
     294             :     compiler::TNode<JSReceiver> tmp14;
     295             :     compiler::TNode<Number> tmp15;
     296             :     compiler::TNode<Number> tmp16;
     297             :     compiler::TNode<Smi> tmp17;
     298             :     compiler::TNode<Number> tmp18;
     299             :     compiler::TNode<Number> tmp19;
     300             :     ca_.Bind(&block4, &tmp10, &tmp11, &tmp12, &tmp13, &tmp14, &tmp15, &tmp16, &tmp17, &tmp18, &tmp19);
     301             :     ca_.Goto(&block1);
     302             :   }
     303             : 
     304          56 :   if (block3.is_used()) {
     305             :     compiler::TNode<Context> tmp20;
     306             :     compiler::TNode<RawPtrT> tmp21;
     307             :     compiler::TNode<RawPtrT> tmp22;
     308             :     compiler::TNode<IntPtrT> tmp23;
     309             :     compiler::TNode<JSReceiver> tmp24;
     310             :     compiler::TNode<Number> tmp25;
     311             :     compiler::TNode<Number> tmp26;
     312             :     compiler::TNode<Smi> tmp27;
     313             :     compiler::TNode<Number> tmp28;
     314             :     compiler::TNode<Number> tmp29;
     315             :     compiler::TNode<Smi> tmp30;
     316             :     ca_.Bind(&block3, &tmp20, &tmp21, &tmp22, &tmp23, &tmp24, &tmp25, &tmp26, &tmp27, &tmp28, &tmp29, &tmp30);
     317          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 115);
     318          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 117);
     319             :     compiler::TNode<Smi> tmp31;
     320             :     USE(tmp31);
     321          56 :     compiler::CodeAssemblerLabel label0(&ca_);
     322         168 :     tmp31 = BaseBuiltinsFromDSLAssembler(state_).Cast5ATSmi(compiler::TNode<Object>{tmp26}, &label0);
     323             :     ca_.Goto(&block5, tmp20, tmp21, tmp22, tmp23, tmp24, tmp25, tmp26, tmp27, tmp28, tmp30, tmp26, tmp31);
     324          56 :     if (label0.is_used()) {
     325          56 :       ca_.Bind(&label0);
     326             :       ca_.Goto(&block6, tmp20, tmp21, tmp22, tmp23, tmp24, tmp25, tmp26, tmp27, tmp28, tmp30, tmp26);
     327             :     }
     328             :   }
     329             : 
     330          56 :   if (block6.is_used()) {
     331             :     compiler::TNode<Context> tmp32;
     332             :     compiler::TNode<RawPtrT> tmp33;
     333             :     compiler::TNode<RawPtrT> tmp34;
     334             :     compiler::TNode<IntPtrT> tmp35;
     335             :     compiler::TNode<JSReceiver> tmp36;
     336             :     compiler::TNode<Number> tmp37;
     337             :     compiler::TNode<Number> tmp38;
     338             :     compiler::TNode<Smi> tmp39;
     339             :     compiler::TNode<Number> tmp40;
     340             :     compiler::TNode<Smi> tmp41;
     341             :     compiler::TNode<Number> tmp42;
     342             :     ca_.Bind(&block6, &tmp32, &tmp33, &tmp34, &tmp35, &tmp36, &tmp37, &tmp38, &tmp39, &tmp40, &tmp41, &tmp42);
     343             :     ca_.Goto(&block1);
     344             :   }
     345             : 
     346          56 :   if (block5.is_used()) {
     347             :     compiler::TNode<Context> tmp43;
     348             :     compiler::TNode<RawPtrT> tmp44;
     349             :     compiler::TNode<RawPtrT> tmp45;
     350             :     compiler::TNode<IntPtrT> tmp46;
     351             :     compiler::TNode<JSReceiver> tmp47;
     352             :     compiler::TNode<Number> tmp48;
     353             :     compiler::TNode<Number> tmp49;
     354             :     compiler::TNode<Smi> tmp50;
     355             :     compiler::TNode<Number> tmp51;
     356             :     compiler::TNode<Smi> tmp52;
     357             :     compiler::TNode<Number> tmp53;
     358             :     compiler::TNode<Smi> tmp54;
     359             :     ca_.Bind(&block5, &tmp43, &tmp44, &tmp45, &tmp46, &tmp47, &tmp48, &tmp49, &tmp50, &tmp51, &tmp52, &tmp53, &tmp54);
     360          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 119);
     361             :     compiler::TNode<Smi> tmp55;
     362             :     USE(tmp55);
     363          56 :     compiler::CodeAssemblerLabel label0(&ca_);
     364         168 :     tmp55 = BaseBuiltinsFromDSLAssembler(state_).Cast5ATSmi(compiler::TNode<Object>{tmp51}, &label0);
     365             :     ca_.Goto(&block7, tmp43, tmp44, tmp45, tmp46, tmp47, tmp48, tmp49, tmp50, tmp51, tmp52, tmp54, tmp51, tmp55);
     366          56 :     if (label0.is_used()) {
     367          56 :       ca_.Bind(&label0);
     368             :       ca_.Goto(&block8, tmp43, tmp44, tmp45, tmp46, tmp47, tmp48, tmp49, tmp50, tmp51, tmp52, tmp54, tmp51);
     369             :     }
     370             :   }
     371             : 
     372          56 :   if (block8.is_used()) {
     373             :     compiler::TNode<Context> tmp56;
     374             :     compiler::TNode<RawPtrT> tmp57;
     375             :     compiler::TNode<RawPtrT> tmp58;
     376             :     compiler::TNode<IntPtrT> tmp59;
     377             :     compiler::TNode<JSReceiver> tmp60;
     378             :     compiler::TNode<Number> tmp61;
     379             :     compiler::TNode<Number> tmp62;
     380             :     compiler::TNode<Smi> tmp63;
     381             :     compiler::TNode<Number> tmp64;
     382             :     compiler::TNode<Smi> tmp65;
     383             :     compiler::TNode<Smi> tmp66;
     384             :     compiler::TNode<Number> tmp67;
     385             :     ca_.Bind(&block8, &tmp56, &tmp57, &tmp58, &tmp59, &tmp60, &tmp61, &tmp62, &tmp63, &tmp64, &tmp65, &tmp66, &tmp67);
     386             :     ca_.Goto(&block1);
     387             :   }
     388             : 
     389          56 :   if (block7.is_used()) {
     390             :     compiler::TNode<Context> tmp68;
     391             :     compiler::TNode<RawPtrT> tmp69;
     392             :     compiler::TNode<RawPtrT> tmp70;
     393             :     compiler::TNode<IntPtrT> tmp71;
     394             :     compiler::TNode<JSReceiver> tmp72;
     395             :     compiler::TNode<Number> tmp73;
     396             :     compiler::TNode<Number> tmp74;
     397             :     compiler::TNode<Smi> tmp75;
     398             :     compiler::TNode<Number> tmp76;
     399             :     compiler::TNode<Smi> tmp77;
     400             :     compiler::TNode<Smi> tmp78;
     401             :     compiler::TNode<Number> tmp79;
     402             :     compiler::TNode<Smi> tmp80;
     403             :     ca_.Bind(&block7, &tmp68, &tmp69, &tmp70, &tmp71, &tmp72, &tmp73, &tmp74, &tmp75, &tmp76, &tmp77, &tmp78, &tmp79, &tmp80);
     404          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 118);
     405          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 120);
     406             :     compiler::TNode<Smi> tmp81;
     407             :     USE(tmp81);
     408         112 :     tmp81 = ca_.UncheckedCast<Smi>(CodeStubAssembler(state_).SmiSub(compiler::TNode<Smi>{tmp75}, compiler::TNode<Smi>{tmp80}));
     409          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 121);
     410             :     compiler::TNode<Smi> tmp82;
     411             :     USE(tmp82);
     412         112 :     tmp82 = ca_.UncheckedCast<Smi>(CodeStubAssembler(state_).SmiAdd(compiler::TNode<Smi>{tmp77}, compiler::TNode<Smi>{tmp81}));
     413          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 123);
     414             :     compiler::TNode<JSArray> tmp83;
     415             :     USE(tmp83);
     416          56 :     compiler::CodeAssemblerLabel label0(&ca_);
     417         168 :     tmp83 = BaseBuiltinsFromDSLAssembler(state_).Cast7JSArray(compiler::TNode<HeapObject>{tmp72}, &label0);
     418             :     ca_.Goto(&block9, tmp68, tmp69, tmp70, tmp71, tmp72, tmp73, tmp74, tmp75, tmp76, tmp77, tmp78, tmp80, tmp81, tmp82, tmp72, tmp83);
     419          56 :     if (label0.is_used()) {
     420          56 :       ca_.Bind(&label0);
     421             :       ca_.Goto(&block10, tmp68, tmp69, tmp70, tmp71, tmp72, tmp73, tmp74, tmp75, tmp76, tmp77, tmp78, tmp80, tmp81, tmp82, tmp72);
     422             :     }
     423             :   }
     424             : 
     425          56 :   if (block10.is_used()) {
     426             :     compiler::TNode<Context> tmp84;
     427             :     compiler::TNode<RawPtrT> tmp85;
     428             :     compiler::TNode<RawPtrT> tmp86;
     429             :     compiler::TNode<IntPtrT> tmp87;
     430             :     compiler::TNode<JSReceiver> tmp88;
     431             :     compiler::TNode<Number> tmp89;
     432             :     compiler::TNode<Number> tmp90;
     433             :     compiler::TNode<Smi> tmp91;
     434             :     compiler::TNode<Number> tmp92;
     435             :     compiler::TNode<Smi> tmp93;
     436             :     compiler::TNode<Smi> tmp94;
     437             :     compiler::TNode<Smi> tmp95;
     438             :     compiler::TNode<Smi> tmp96;
     439             :     compiler::TNode<Smi> tmp97;
     440             :     compiler::TNode<JSReceiver> tmp98;
     441             :     ca_.Bind(&block10, &tmp84, &tmp85, &tmp86, &tmp87, &tmp88, &tmp89, &tmp90, &tmp91, &tmp92, &tmp93, &tmp94, &tmp95, &tmp96, &tmp97, &tmp98);
     442             :     ca_.Goto(&block1);
     443             :   }
     444             : 
     445          56 :   if (block9.is_used()) {
     446             :     compiler::TNode<Context> tmp99;
     447             :     compiler::TNode<RawPtrT> tmp100;
     448             :     compiler::TNode<RawPtrT> tmp101;
     449             :     compiler::TNode<IntPtrT> tmp102;
     450             :     compiler::TNode<JSReceiver> tmp103;
     451             :     compiler::TNode<Number> tmp104;
     452             :     compiler::TNode<Number> tmp105;
     453             :     compiler::TNode<Smi> tmp106;
     454             :     compiler::TNode<Number> tmp107;
     455             :     compiler::TNode<Smi> tmp108;
     456             :     compiler::TNode<Smi> tmp109;
     457             :     compiler::TNode<Smi> tmp110;
     458             :     compiler::TNode<Smi> tmp111;
     459             :     compiler::TNode<Smi> tmp112;
     460             :     compiler::TNode<JSReceiver> tmp113;
     461             :     compiler::TNode<JSArray> tmp114;
     462             :     ca_.Bind(&block9, &tmp99, &tmp100, &tmp101, &tmp102, &tmp103, &tmp104, &tmp105, &tmp106, &tmp107, &tmp108, &tmp109, &tmp110, &tmp111, &tmp112, &tmp113, &tmp114);
     463          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 125);
     464          56 :     compiler::TNode<IntPtrT> tmp115 = ca_.IntPtrConstant(HeapObject::kMapOffset);
     465             :     USE(tmp115);
     466         112 :     compiler::TNode<Map>tmp116 = CodeStubAssembler(state_).LoadReference<Map>(CodeStubAssembler::Reference{tmp114, tmp115});
     467          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 126);
     468             :     compiler::TNode<BoolT> tmp117;
     469             :     USE(tmp117);
     470         168 :     tmp117 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).IsPrototypeInitialArrayPrototype(compiler::TNode<Context>{tmp99}, compiler::TNode<Map>{tmp116}));
     471             :     compiler::TNode<BoolT> tmp118;
     472             :     USE(tmp118);
     473         112 :     tmp118 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).Word32BinaryNot(compiler::TNode<BoolT>{tmp117}));
     474          56 :     ca_.Branch(tmp118, &block11, &block12, tmp99, tmp100, tmp101, tmp102, tmp103, tmp104, tmp105, tmp106, tmp107, tmp108, tmp109, tmp110, tmp111, tmp112, tmp114, tmp116);
     475             :   }
     476             : 
     477          56 :   if (block11.is_used()) {
     478             :     compiler::TNode<Context> tmp119;
     479             :     compiler::TNode<RawPtrT> tmp120;
     480             :     compiler::TNode<RawPtrT> tmp121;
     481             :     compiler::TNode<IntPtrT> tmp122;
     482             :     compiler::TNode<JSReceiver> tmp123;
     483             :     compiler::TNode<Number> tmp124;
     484             :     compiler::TNode<Number> tmp125;
     485             :     compiler::TNode<Smi> tmp126;
     486             :     compiler::TNode<Number> tmp127;
     487             :     compiler::TNode<Smi> tmp128;
     488             :     compiler::TNode<Smi> tmp129;
     489             :     compiler::TNode<Smi> tmp130;
     490             :     compiler::TNode<Smi> tmp131;
     491             :     compiler::TNode<Smi> tmp132;
     492             :     compiler::TNode<JSArray> tmp133;
     493             :     compiler::TNode<Map> tmp134;
     494             :     ca_.Bind(&block11, &tmp119, &tmp120, &tmp121, &tmp122, &tmp123, &tmp124, &tmp125, &tmp126, &tmp127, &tmp128, &tmp129, &tmp130, &tmp131, &tmp132, &tmp133, &tmp134);
     495             :     ca_.Goto(&block1);
     496             :   }
     497             : 
     498          56 :   if (block12.is_used()) {
     499             :     compiler::TNode<Context> tmp135;
     500             :     compiler::TNode<RawPtrT> tmp136;
     501             :     compiler::TNode<RawPtrT> tmp137;
     502             :     compiler::TNode<IntPtrT> tmp138;
     503             :     compiler::TNode<JSReceiver> tmp139;
     504             :     compiler::TNode<Number> tmp140;
     505             :     compiler::TNode<Number> tmp141;
     506             :     compiler::TNode<Smi> tmp142;
     507             :     compiler::TNode<Number> tmp143;
     508             :     compiler::TNode<Smi> tmp144;
     509             :     compiler::TNode<Smi> tmp145;
     510             :     compiler::TNode<Smi> tmp146;
     511             :     compiler::TNode<Smi> tmp147;
     512             :     compiler::TNode<Smi> tmp148;
     513             :     compiler::TNode<JSArray> tmp149;
     514             :     compiler::TNode<Map> tmp150;
     515             :     ca_.Bind(&block12, &tmp135, &tmp136, &tmp137, &tmp138, &tmp139, &tmp140, &tmp141, &tmp142, &tmp143, &tmp144, &tmp145, &tmp146, &tmp147, &tmp148, &tmp149, &tmp150);
     516          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 127);
     517             :     compiler::TNode<BoolT> tmp151;
     518             :     USE(tmp151);
     519         112 :     tmp151 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).IsNoElementsProtectorCellInvalid());
     520          56 :     ca_.Branch(tmp151, &block13, &block14, tmp135, tmp136, tmp137, tmp138, tmp139, tmp140, tmp141, tmp142, tmp143, tmp144, tmp145, tmp146, tmp147, tmp148, tmp149, tmp150);
     521             :   }
     522             : 
     523          56 :   if (block13.is_used()) {
     524             :     compiler::TNode<Context> tmp152;
     525             :     compiler::TNode<RawPtrT> tmp153;
     526             :     compiler::TNode<RawPtrT> tmp154;
     527             :     compiler::TNode<IntPtrT> tmp155;
     528             :     compiler::TNode<JSReceiver> tmp156;
     529             :     compiler::TNode<Number> tmp157;
     530             :     compiler::TNode<Number> tmp158;
     531             :     compiler::TNode<Smi> tmp159;
     532             :     compiler::TNode<Number> tmp160;
     533             :     compiler::TNode<Smi> tmp161;
     534             :     compiler::TNode<Smi> tmp162;
     535             :     compiler::TNode<Smi> tmp163;
     536             :     compiler::TNode<Smi> tmp164;
     537             :     compiler::TNode<Smi> tmp165;
     538             :     compiler::TNode<JSArray> tmp166;
     539             :     compiler::TNode<Map> tmp167;
     540             :     ca_.Bind(&block13, &tmp152, &tmp153, &tmp154, &tmp155, &tmp156, &tmp157, &tmp158, &tmp159, &tmp160, &tmp161, &tmp162, &tmp163, &tmp164, &tmp165, &tmp166, &tmp167);
     541             :     ca_.Goto(&block1);
     542             :   }
     543             : 
     544          56 :   if (block14.is_used()) {
     545             :     compiler::TNode<Context> tmp168;
     546             :     compiler::TNode<RawPtrT> tmp169;
     547             :     compiler::TNode<RawPtrT> tmp170;
     548             :     compiler::TNode<IntPtrT> tmp171;
     549             :     compiler::TNode<JSReceiver> tmp172;
     550             :     compiler::TNode<Number> tmp173;
     551             :     compiler::TNode<Number> tmp174;
     552             :     compiler::TNode<Smi> tmp175;
     553             :     compiler::TNode<Number> tmp176;
     554             :     compiler::TNode<Smi> tmp177;
     555             :     compiler::TNode<Smi> tmp178;
     556             :     compiler::TNode<Smi> tmp179;
     557             :     compiler::TNode<Smi> tmp180;
     558             :     compiler::TNode<Smi> tmp181;
     559             :     compiler::TNode<JSArray> tmp182;
     560             :     compiler::TNode<Map> tmp183;
     561             :     ca_.Bind(&block14, &tmp168, &tmp169, &tmp170, &tmp171, &tmp172, &tmp173, &tmp174, &tmp175, &tmp176, &tmp177, &tmp178, &tmp179, &tmp180, &tmp181, &tmp182, &tmp183);
     562          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 128);
     563             :     compiler::TNode<BoolT> tmp184;
     564             :     USE(tmp184);
     565         112 :     tmp184 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).IsArraySpeciesProtectorCellInvalid());
     566          56 :     ca_.Branch(tmp184, &block15, &block16, tmp168, tmp169, tmp170, tmp171, tmp172, tmp173, tmp174, tmp175, tmp176, tmp177, tmp178, tmp179, tmp180, tmp181, tmp182, tmp183);
     567             :   }
     568             : 
     569          56 :   if (block15.is_used()) {
     570             :     compiler::TNode<Context> tmp185;
     571             :     compiler::TNode<RawPtrT> tmp186;
     572             :     compiler::TNode<RawPtrT> tmp187;
     573             :     compiler::TNode<IntPtrT> tmp188;
     574             :     compiler::TNode<JSReceiver> tmp189;
     575             :     compiler::TNode<Number> tmp190;
     576             :     compiler::TNode<Number> tmp191;
     577             :     compiler::TNode<Smi> tmp192;
     578             :     compiler::TNode<Number> tmp193;
     579             :     compiler::TNode<Smi> tmp194;
     580             :     compiler::TNode<Smi> tmp195;
     581             :     compiler::TNode<Smi> tmp196;
     582             :     compiler::TNode<Smi> tmp197;
     583             :     compiler::TNode<Smi> tmp198;
     584             :     compiler::TNode<JSArray> tmp199;
     585             :     compiler::TNode<Map> tmp200;
     586             :     ca_.Bind(&block15, &tmp185, &tmp186, &tmp187, &tmp188, &tmp189, &tmp190, &tmp191, &tmp192, &tmp193, &tmp194, &tmp195, &tmp196, &tmp197, &tmp198, &tmp199, &tmp200);
     587             :     ca_.Goto(&block1);
     588             :   }
     589             : 
     590          56 :   if (block16.is_used()) {
     591             :     compiler::TNode<Context> tmp201;
     592             :     compiler::TNode<RawPtrT> tmp202;
     593             :     compiler::TNode<RawPtrT> tmp203;
     594             :     compiler::TNode<IntPtrT> tmp204;
     595             :     compiler::TNode<JSReceiver> tmp205;
     596             :     compiler::TNode<Number> tmp206;
     597             :     compiler::TNode<Number> tmp207;
     598             :     compiler::TNode<Smi> tmp208;
     599             :     compiler::TNode<Number> tmp209;
     600             :     compiler::TNode<Smi> tmp210;
     601             :     compiler::TNode<Smi> tmp211;
     602             :     compiler::TNode<Smi> tmp212;
     603             :     compiler::TNode<Smi> tmp213;
     604             :     compiler::TNode<Smi> tmp214;
     605             :     compiler::TNode<JSArray> tmp215;
     606             :     compiler::TNode<Map> tmp216;
     607             :     ca_.Bind(&block16, &tmp201, &tmp202, &tmp203, &tmp204, &tmp205, &tmp206, &tmp207, &tmp208, &tmp209, &tmp210, &tmp211, &tmp212, &tmp213, &tmp214, &tmp215, &tmp216);
     608          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 131);
     609             :     compiler::TNode<Int32T> tmp217;
     610             :     USE(tmp217);
     611          56 :     compiler::CodeAssemblerLabel label0(&ca_);
     612         112 :     tmp217 = CodeStubAssembler(state_).EnsureArrayPushable(compiler::TNode<Map>{tmp216}, &label0);
     613             :     ca_.Goto(&block17, tmp201, tmp202, tmp203, tmp204, tmp205, tmp206, tmp207, tmp208, tmp209, tmp210, tmp211, tmp212, tmp213, tmp214, tmp215, tmp216, tmp216, tmp217);
     614          56 :     if (label0.is_used()) {
     615          56 :       ca_.Bind(&label0);
     616             :       ca_.Goto(&block18, tmp201, tmp202, tmp203, tmp204, tmp205, tmp206, tmp207, tmp208, tmp209, tmp210, tmp211, tmp212, tmp213, tmp214, tmp215, tmp216, tmp216);
     617             :     }
     618             :   }
     619             : 
     620          56 :   if (block18.is_used()) {
     621             :     compiler::TNode<Context> tmp218;
     622             :     compiler::TNode<RawPtrT> tmp219;
     623             :     compiler::TNode<RawPtrT> tmp220;
     624             :     compiler::TNode<IntPtrT> tmp221;
     625             :     compiler::TNode<JSReceiver> tmp222;
     626             :     compiler::TNode<Number> tmp223;
     627             :     compiler::TNode<Number> tmp224;
     628             :     compiler::TNode<Smi> tmp225;
     629             :     compiler::TNode<Number> tmp226;
     630             :     compiler::TNode<Smi> tmp227;
     631             :     compiler::TNode<Smi> tmp228;
     632             :     compiler::TNode<Smi> tmp229;
     633             :     compiler::TNode<Smi> tmp230;
     634             :     compiler::TNode<Smi> tmp231;
     635             :     compiler::TNode<JSArray> tmp232;
     636             :     compiler::TNode<Map> tmp233;
     637             :     compiler::TNode<Map> tmp234;
     638             :     ca_.Bind(&block18, &tmp218, &tmp219, &tmp220, &tmp221, &tmp222, &tmp223, &tmp224, &tmp225, &tmp226, &tmp227, &tmp228, &tmp229, &tmp230, &tmp231, &tmp232, &tmp233, &tmp234);
     639             :     ca_.Goto(&block1);
     640             :   }
     641             : 
     642          56 :   if (block17.is_used()) {
     643             :     compiler::TNode<Context> tmp235;
     644             :     compiler::TNode<RawPtrT> tmp236;
     645             :     compiler::TNode<RawPtrT> tmp237;
     646             :     compiler::TNode<IntPtrT> tmp238;
     647             :     compiler::TNode<JSReceiver> tmp239;
     648             :     compiler::TNode<Number> tmp240;
     649             :     compiler::TNode<Number> tmp241;
     650             :     compiler::TNode<Smi> tmp242;
     651             :     compiler::TNode<Number> tmp243;
     652             :     compiler::TNode<Smi> tmp244;
     653             :     compiler::TNode<Smi> tmp245;
     654             :     compiler::TNode<Smi> tmp246;
     655             :     compiler::TNode<Smi> tmp247;
     656             :     compiler::TNode<Smi> tmp248;
     657             :     compiler::TNode<JSArray> tmp249;
     658             :     compiler::TNode<Map> tmp250;
     659             :     compiler::TNode<Map> tmp251;
     660             :     compiler::TNode<Int32T> tmp252;
     661             :     ca_.Bind(&block17, &tmp235, &tmp236, &tmp237, &tmp238, &tmp239, &tmp240, &tmp241, &tmp242, &tmp243, &tmp244, &tmp245, &tmp246, &tmp247, &tmp248, &tmp249, &tmp250, &tmp251, &tmp252);
     662          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 132);
     663             :     compiler::TNode<BoolT> tmp253;
     664             :     USE(tmp253);
     665         112 :     tmp253 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).IsFastElementsKind(compiler::TNode<Int32T>{tmp252}));
     666             :     compiler::TNode<BoolT> tmp254;
     667             :     USE(tmp254);
     668         112 :     tmp254 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).Word32BinaryNot(compiler::TNode<BoolT>{tmp253}));
     669          56 :     ca_.Branch(tmp254, &block19, &block20, tmp235, tmp236, tmp237, tmp238, tmp239, tmp240, tmp241, tmp242, tmp243, tmp244, tmp245, tmp246, tmp247, tmp248, tmp249, tmp250, tmp252);
     670             :   }
     671             : 
     672          56 :   if (block19.is_used()) {
     673             :     compiler::TNode<Context> tmp255;
     674             :     compiler::TNode<RawPtrT> tmp256;
     675             :     compiler::TNode<RawPtrT> tmp257;
     676             :     compiler::TNode<IntPtrT> tmp258;
     677             :     compiler::TNode<JSReceiver> tmp259;
     678             :     compiler::TNode<Number> tmp260;
     679             :     compiler::TNode<Number> tmp261;
     680             :     compiler::TNode<Smi> tmp262;
     681             :     compiler::TNode<Number> tmp263;
     682             :     compiler::TNode<Smi> tmp264;
     683             :     compiler::TNode<Smi> tmp265;
     684             :     compiler::TNode<Smi> tmp266;
     685             :     compiler::TNode<Smi> tmp267;
     686             :     compiler::TNode<Smi> tmp268;
     687             :     compiler::TNode<JSArray> tmp269;
     688             :     compiler::TNode<Map> tmp270;
     689             :     compiler::TNode<Int32T> tmp271;
     690             :     ca_.Bind(&block19, &tmp255, &tmp256, &tmp257, &tmp258, &tmp259, &tmp260, &tmp261, &tmp262, &tmp263, &tmp264, &tmp265, &tmp266, &tmp267, &tmp268, &tmp269, &tmp270, &tmp271);
     691             :     ca_.Goto(&block1);
     692             :   }
     693             : 
     694          56 :   if (block20.is_used()) {
     695             :     compiler::TNode<Context> tmp272;
     696             :     compiler::TNode<RawPtrT> tmp273;
     697             :     compiler::TNode<RawPtrT> tmp274;
     698             :     compiler::TNode<IntPtrT> tmp275;
     699             :     compiler::TNode<JSReceiver> tmp276;
     700             :     compiler::TNode<Number> tmp277;
     701             :     compiler::TNode<Number> tmp278;
     702             :     compiler::TNode<Smi> tmp279;
     703             :     compiler::TNode<Number> tmp280;
     704             :     compiler::TNode<Smi> tmp281;
     705             :     compiler::TNode<Smi> tmp282;
     706             :     compiler::TNode<Smi> tmp283;
     707             :     compiler::TNode<Smi> tmp284;
     708             :     compiler::TNode<Smi> tmp285;
     709             :     compiler::TNode<JSArray> tmp286;
     710             :     compiler::TNode<Map> tmp287;
     711             :     compiler::TNode<Int32T> tmp288;
     712             :     ca_.Bind(&block20, &tmp272, &tmp273, &tmp274, &tmp275, &tmp276, &tmp277, &tmp278, &tmp279, &tmp280, &tmp281, &tmp282, &tmp283, &tmp284, &tmp285, &tmp286, &tmp287, &tmp288);
     713          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 134);
     714          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 135);
     715             :     compiler::TNode<IntPtrT> tmp289;
     716             :     USE(tmp289);
     717         168 :     tmp289 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATintptr17ATconstexpr_int31(2));
     718             :     ca_.Goto(&block23, tmp272, tmp273, tmp274, tmp275, tmp276, tmp277, tmp278, tmp279, tmp280, tmp281, tmp282, tmp283, tmp284, tmp285, tmp286, tmp287, tmp288, tmp288, tmp289);
     719             :   }
     720             : 
     721          56 :   if (block23.is_used()) {
     722             :     compiler::TNode<Context> tmp290;
     723             :     compiler::TNode<RawPtrT> tmp291;
     724             :     compiler::TNode<RawPtrT> tmp292;
     725             :     compiler::TNode<IntPtrT> tmp293;
     726             :     compiler::TNode<JSReceiver> tmp294;
     727             :     compiler::TNode<Number> tmp295;
     728             :     compiler::TNode<Number> tmp296;
     729             :     compiler::TNode<Smi> tmp297;
     730             :     compiler::TNode<Number> tmp298;
     731             :     compiler::TNode<Smi> tmp299;
     732             :     compiler::TNode<Smi> tmp300;
     733             :     compiler::TNode<Smi> tmp301;
     734             :     compiler::TNode<Smi> tmp302;
     735             :     compiler::TNode<Smi> tmp303;
     736             :     compiler::TNode<JSArray> tmp304;
     737             :     compiler::TNode<Map> tmp305;
     738             :     compiler::TNode<Int32T> tmp306;
     739             :     compiler::TNode<Int32T> tmp307;
     740             :     compiler::TNode<IntPtrT> tmp308;
     741             :     ca_.Bind(&block23, &tmp290, &tmp291, &tmp292, &tmp293, &tmp294, &tmp295, &tmp296, &tmp297, &tmp298, &tmp299, &tmp300, &tmp301, &tmp302, &tmp303, &tmp304, &tmp305, &tmp306, &tmp307, &tmp308);
     742             :     compiler::TNode<BoolT> tmp309;
     743             :     USE(tmp309);
     744         224 :     tmp309 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).IntPtrLessThan(compiler::TNode<IntPtrT>{tmp308}, compiler::TNode<IntPtrT>{tmp293}));
     745          56 :     ca_.Branch(tmp309, &block21, &block22, tmp290, tmp291, tmp292, tmp293, tmp294, tmp295, tmp296, tmp297, tmp298, tmp299, tmp300, tmp301, tmp302, tmp303, tmp304, tmp305, tmp306, tmp307, tmp308);
     746             :   }
     747             : 
     748          56 :   if (block21.is_used()) {
     749             :     compiler::TNode<Context> tmp310;
     750             :     compiler::TNode<RawPtrT> tmp311;
     751             :     compiler::TNode<RawPtrT> tmp312;
     752             :     compiler::TNode<IntPtrT> tmp313;
     753             :     compiler::TNode<JSReceiver> tmp314;
     754             :     compiler::TNode<Number> tmp315;
     755             :     compiler::TNode<Number> tmp316;
     756             :     compiler::TNode<Smi> tmp317;
     757             :     compiler::TNode<Number> tmp318;
     758             :     compiler::TNode<Smi> tmp319;
     759             :     compiler::TNode<Smi> tmp320;
     760             :     compiler::TNode<Smi> tmp321;
     761             :     compiler::TNode<Smi> tmp322;
     762             :     compiler::TNode<Smi> tmp323;
     763             :     compiler::TNode<JSArray> tmp324;
     764             :     compiler::TNode<Map> tmp325;
     765             :     compiler::TNode<Int32T> tmp326;
     766             :     compiler::TNode<Int32T> tmp327;
     767             :     compiler::TNode<IntPtrT> tmp328;
     768             :     ca_.Bind(&block21, &tmp310, &tmp311, &tmp312, &tmp313, &tmp314, &tmp315, &tmp316, &tmp317, &tmp318, &tmp319, &tmp320, &tmp321, &tmp322, &tmp323, &tmp324, &tmp325, &tmp326, &tmp327, &tmp328);
     769          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 136);
     770             :     compiler::TNode<Object> tmp329;
     771             :     USE(tmp329);
     772         112 :     tmp329 = ca_.UncheckedCast<Object>(CodeStubAssembler(state_).GetArgumentValue(BaseBuiltinsFromDSLAssembler::Arguments{compiler::TNode<RawPtrT>{tmp311}, compiler::TNode<RawPtrT>{tmp312}, compiler::TNode<IntPtrT>{tmp313}}, compiler::TNode<IntPtrT>{tmp328}));
     773          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 137);
     774             :     compiler::TNode<BoolT> tmp330;
     775             :     USE(tmp330);
     776         112 :     tmp330 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).IsFastSmiElementsKind(compiler::TNode<Int32T>{tmp326}));
     777          56 :     ca_.Branch(tmp330, &block25, &block26, tmp310, tmp311, tmp312, tmp313, tmp314, tmp315, tmp316, tmp317, tmp318, tmp319, tmp320, tmp321, tmp322, tmp323, tmp324, tmp325, tmp326, tmp327, tmp328, tmp329);
     778             :   }
     779             : 
     780          56 :   if (block25.is_used()) {
     781             :     compiler::TNode<Context> tmp331;
     782             :     compiler::TNode<RawPtrT> tmp332;
     783             :     compiler::TNode<RawPtrT> tmp333;
     784             :     compiler::TNode<IntPtrT> tmp334;
     785             :     compiler::TNode<JSReceiver> tmp335;
     786             :     compiler::TNode<Number> tmp336;
     787             :     compiler::TNode<Number> tmp337;
     788             :     compiler::TNode<Smi> tmp338;
     789             :     compiler::TNode<Number> tmp339;
     790             :     compiler::TNode<Smi> tmp340;
     791             :     compiler::TNode<Smi> tmp341;
     792             :     compiler::TNode<Smi> tmp342;
     793             :     compiler::TNode<Smi> tmp343;
     794             :     compiler::TNode<Smi> tmp344;
     795             :     compiler::TNode<JSArray> tmp345;
     796             :     compiler::TNode<Map> tmp346;
     797             :     compiler::TNode<Int32T> tmp347;
     798             :     compiler::TNode<Int32T> tmp348;
     799             :     compiler::TNode<IntPtrT> tmp349;
     800             :     compiler::TNode<Object> tmp350;
     801             :     ca_.Bind(&block25, &tmp331, &tmp332, &tmp333, &tmp334, &tmp335, &tmp336, &tmp337, &tmp338, &tmp339, &tmp340, &tmp341, &tmp342, &tmp343, &tmp344, &tmp345, &tmp346, &tmp347, &tmp348, &tmp349, &tmp350);
     802          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 138);
     803             :     compiler::TNode<BoolT> tmp351;
     804             :     USE(tmp351);
     805         168 :     tmp351 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).TaggedIsNotSmi(compiler::TNode<Object>{tmp350}));
     806          56 :     ca_.Branch(tmp351, &block28, &block29, tmp331, tmp332, tmp333, tmp334, tmp335, tmp336, tmp337, tmp338, tmp339, tmp340, tmp341, tmp342, tmp343, tmp344, tmp345, tmp346, tmp347, tmp348, tmp349, tmp350);
     807             :   }
     808             : 
     809          56 :   if (block28.is_used()) {
     810             :     compiler::TNode<Context> tmp352;
     811             :     compiler::TNode<RawPtrT> tmp353;
     812             :     compiler::TNode<RawPtrT> tmp354;
     813             :     compiler::TNode<IntPtrT> tmp355;
     814             :     compiler::TNode<JSReceiver> tmp356;
     815             :     compiler::TNode<Number> tmp357;
     816             :     compiler::TNode<Number> tmp358;
     817             :     compiler::TNode<Smi> tmp359;
     818             :     compiler::TNode<Number> tmp360;
     819             :     compiler::TNode<Smi> tmp361;
     820             :     compiler::TNode<Smi> tmp362;
     821             :     compiler::TNode<Smi> tmp363;
     822             :     compiler::TNode<Smi> tmp364;
     823             :     compiler::TNode<Smi> tmp365;
     824             :     compiler::TNode<JSArray> tmp366;
     825             :     compiler::TNode<Map> tmp367;
     826             :     compiler::TNode<Int32T> tmp368;
     827             :     compiler::TNode<Int32T> tmp369;
     828             :     compiler::TNode<IntPtrT> tmp370;
     829             :     compiler::TNode<Object> tmp371;
     830             :     ca_.Bind(&block28, &tmp352, &tmp353, &tmp354, &tmp355, &tmp356, &tmp357, &tmp358, &tmp359, &tmp360, &tmp361, &tmp362, &tmp363, &tmp364, &tmp365, &tmp366, &tmp367, &tmp368, &tmp369, &tmp370, &tmp371);
     831          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 139);
     832             :     compiler::TNode<HeapObject> tmp372;
     833             :     USE(tmp372);
     834         168 :     tmp372 = ca_.UncheckedCast<HeapObject>(BaseBuiltinsFromDSLAssembler(state_).UnsafeCast10HeapObject(compiler::TNode<Context>{tmp352}, compiler::TNode<Object>{tmp371}));
     835          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 140);
     836             :     compiler::TNode<BoolT> tmp373;
     837             :     USE(tmp373);
     838         112 :     tmp373 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).IsHeapNumber(compiler::TNode<HeapObject>{tmp372}));
     839          56 :     ca_.Branch(tmp373, &block30, &block31, tmp352, tmp353, tmp354, tmp355, tmp356, tmp357, tmp358, tmp359, tmp360, tmp361, tmp362, tmp363, tmp364, tmp365, tmp366, tmp367, tmp368, tmp369, tmp370, tmp371, tmp372);
     840             :   }
     841             : 
     842          56 :   if (block30.is_used()) {
     843             :     compiler::TNode<Context> tmp374;
     844             :     compiler::TNode<RawPtrT> tmp375;
     845             :     compiler::TNode<RawPtrT> tmp376;
     846             :     compiler::TNode<IntPtrT> tmp377;
     847             :     compiler::TNode<JSReceiver> tmp378;
     848             :     compiler::TNode<Number> tmp379;
     849             :     compiler::TNode<Number> tmp380;
     850             :     compiler::TNode<Smi> tmp381;
     851             :     compiler::TNode<Number> tmp382;
     852             :     compiler::TNode<Smi> tmp383;
     853             :     compiler::TNode<Smi> tmp384;
     854             :     compiler::TNode<Smi> tmp385;
     855             :     compiler::TNode<Smi> tmp386;
     856             :     compiler::TNode<Smi> tmp387;
     857             :     compiler::TNode<JSArray> tmp388;
     858             :     compiler::TNode<Map> tmp389;
     859             :     compiler::TNode<Int32T> tmp390;
     860             :     compiler::TNode<Int32T> tmp391;
     861             :     compiler::TNode<IntPtrT> tmp392;
     862             :     compiler::TNode<Object> tmp393;
     863             :     compiler::TNode<HeapObject> tmp394;
     864             :     ca_.Bind(&block30, &tmp374, &tmp375, &tmp376, &tmp377, &tmp378, &tmp379, &tmp380, &tmp381, &tmp382, &tmp383, &tmp384, &tmp385, &tmp386, &tmp387, &tmp388, &tmp389, &tmp390, &tmp391, &tmp392, &tmp393, &tmp394);
     865          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 141);
     866             :     compiler::TNode<Int32T> tmp395;
     867             :     USE(tmp395);
     868         168 :     tmp395 = ca_.UncheckedCast<Int32T>(BaseBuiltinsFromDSLAssembler(state_).AllowDoubleElements(compiler::TNode<Int32T>{tmp390}));
     869          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 140);
     870             :     ca_.Goto(&block33, tmp374, tmp375, tmp376, tmp377, tmp378, tmp379, tmp380, tmp381, tmp382, tmp383, tmp384, tmp385, tmp386, tmp387, tmp388, tmp389, tmp390, tmp391, tmp392, tmp393, tmp394, tmp395);
     871             :   }
     872             : 
     873          56 :   if (block31.is_used()) {
     874             :     compiler::TNode<Context> tmp396;
     875             :     compiler::TNode<RawPtrT> tmp397;
     876             :     compiler::TNode<RawPtrT> tmp398;
     877             :     compiler::TNode<IntPtrT> tmp399;
     878             :     compiler::TNode<JSReceiver> tmp400;
     879             :     compiler::TNode<Number> tmp401;
     880             :     compiler::TNode<Number> tmp402;
     881             :     compiler::TNode<Smi> tmp403;
     882             :     compiler::TNode<Number> tmp404;
     883             :     compiler::TNode<Smi> tmp405;
     884             :     compiler::TNode<Smi> tmp406;
     885             :     compiler::TNode<Smi> tmp407;
     886             :     compiler::TNode<Smi> tmp408;
     887             :     compiler::TNode<Smi> tmp409;
     888             :     compiler::TNode<JSArray> tmp410;
     889             :     compiler::TNode<Map> tmp411;
     890             :     compiler::TNode<Int32T> tmp412;
     891             :     compiler::TNode<Int32T> tmp413;
     892             :     compiler::TNode<IntPtrT> tmp414;
     893             :     compiler::TNode<Object> tmp415;
     894             :     compiler::TNode<HeapObject> tmp416;
     895             :     ca_.Bind(&block31, &tmp396, &tmp397, &tmp398, &tmp399, &tmp400, &tmp401, &tmp402, &tmp403, &tmp404, &tmp405, &tmp406, &tmp407, &tmp408, &tmp409, &tmp410, &tmp411, &tmp412, &tmp413, &tmp414, &tmp415, &tmp416);
     896          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 142);
     897             :     compiler::TNode<Int32T> tmp417;
     898             :     USE(tmp417);
     899         168 :     tmp417 = ca_.UncheckedCast<Int32T>(BaseBuiltinsFromDSLAssembler(state_).AllowNonNumberElements(compiler::TNode<Int32T>{tmp412}));
     900          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 140);
     901             :     ca_.Goto(&block32, tmp396, tmp397, tmp398, tmp399, tmp400, tmp401, tmp402, tmp403, tmp404, tmp405, tmp406, tmp407, tmp408, tmp409, tmp410, tmp411, tmp412, tmp413, tmp414, tmp415, tmp416, tmp417);
     902             :   }
     903             : 
     904          56 :   if (block33.is_used()) {
     905             :     compiler::TNode<Context> tmp418;
     906             :     compiler::TNode<RawPtrT> tmp419;
     907             :     compiler::TNode<RawPtrT> tmp420;
     908             :     compiler::TNode<IntPtrT> tmp421;
     909             :     compiler::TNode<JSReceiver> tmp422;
     910             :     compiler::TNode<Number> tmp423;
     911             :     compiler::TNode<Number> tmp424;
     912             :     compiler::TNode<Smi> tmp425;
     913             :     compiler::TNode<Number> tmp426;
     914             :     compiler::TNode<Smi> tmp427;
     915             :     compiler::TNode<Smi> tmp428;
     916             :     compiler::TNode<Smi> tmp429;
     917             :     compiler::TNode<Smi> tmp430;
     918             :     compiler::TNode<Smi> tmp431;
     919             :     compiler::TNode<JSArray> tmp432;
     920             :     compiler::TNode<Map> tmp433;
     921             :     compiler::TNode<Int32T> tmp434;
     922             :     compiler::TNode<Int32T> tmp435;
     923             :     compiler::TNode<IntPtrT> tmp436;
     924             :     compiler::TNode<Object> tmp437;
     925             :     compiler::TNode<HeapObject> tmp438;
     926             :     compiler::TNode<Int32T> tmp439;
     927             :     ca_.Bind(&block33, &tmp418, &tmp419, &tmp420, &tmp421, &tmp422, &tmp423, &tmp424, &tmp425, &tmp426, &tmp427, &tmp428, &tmp429, &tmp430, &tmp431, &tmp432, &tmp433, &tmp434, &tmp435, &tmp436, &tmp437, &tmp438, &tmp439);
     928             :     ca_.Goto(&block32, tmp418, tmp419, tmp420, tmp421, tmp422, tmp423, tmp424, tmp425, tmp426, tmp427, tmp428, tmp429, tmp430, tmp431, tmp432, tmp433, tmp434, tmp435, tmp436, tmp437, tmp438, tmp439);
     929             :   }
     930             : 
     931          56 :   if (block32.is_used()) {
     932             :     compiler::TNode<Context> tmp440;
     933             :     compiler::TNode<RawPtrT> tmp441;
     934             :     compiler::TNode<RawPtrT> tmp442;
     935             :     compiler::TNode<IntPtrT> tmp443;
     936             :     compiler::TNode<JSReceiver> tmp444;
     937             :     compiler::TNode<Number> tmp445;
     938             :     compiler::TNode<Number> tmp446;
     939             :     compiler::TNode<Smi> tmp447;
     940             :     compiler::TNode<Number> tmp448;
     941             :     compiler::TNode<Smi> tmp449;
     942             :     compiler::TNode<Smi> tmp450;
     943             :     compiler::TNode<Smi> tmp451;
     944             :     compiler::TNode<Smi> tmp452;
     945             :     compiler::TNode<Smi> tmp453;
     946             :     compiler::TNode<JSArray> tmp454;
     947             :     compiler::TNode<Map> tmp455;
     948             :     compiler::TNode<Int32T> tmp456;
     949             :     compiler::TNode<Int32T> tmp457;
     950             :     compiler::TNode<IntPtrT> tmp458;
     951             :     compiler::TNode<Object> tmp459;
     952             :     compiler::TNode<HeapObject> tmp460;
     953             :     compiler::TNode<Int32T> tmp461;
     954             :     ca_.Bind(&block32, &tmp440, &tmp441, &tmp442, &tmp443, &tmp444, &tmp445, &tmp446, &tmp447, &tmp448, &tmp449, &tmp450, &tmp451, &tmp452, &tmp453, &tmp454, &tmp455, &tmp456, &tmp457, &tmp458, &tmp459, &tmp460, &tmp461);
     955          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 138);
     956             :     ca_.Goto(&block29, tmp440, tmp441, tmp442, tmp443, tmp444, tmp445, tmp446, tmp447, tmp448, tmp449, tmp450, tmp451, tmp452, tmp453, tmp454, tmp455, tmp461, tmp457, tmp458, tmp459);
     957             :   }
     958             : 
     959          56 :   if (block29.is_used()) {
     960             :     compiler::TNode<Context> tmp462;
     961             :     compiler::TNode<RawPtrT> tmp463;
     962             :     compiler::TNode<RawPtrT> tmp464;
     963             :     compiler::TNode<IntPtrT> tmp465;
     964             :     compiler::TNode<JSReceiver> tmp466;
     965             :     compiler::TNode<Number> tmp467;
     966             :     compiler::TNode<Number> tmp468;
     967             :     compiler::TNode<Smi> tmp469;
     968             :     compiler::TNode<Number> tmp470;
     969             :     compiler::TNode<Smi> tmp471;
     970             :     compiler::TNode<Smi> tmp472;
     971             :     compiler::TNode<Smi> tmp473;
     972             :     compiler::TNode<Smi> tmp474;
     973             :     compiler::TNode<Smi> tmp475;
     974             :     compiler::TNode<JSArray> tmp476;
     975             :     compiler::TNode<Map> tmp477;
     976             :     compiler::TNode<Int32T> tmp478;
     977             :     compiler::TNode<Int32T> tmp479;
     978             :     compiler::TNode<IntPtrT> tmp480;
     979             :     compiler::TNode<Object> tmp481;
     980             :     ca_.Bind(&block29, &tmp462, &tmp463, &tmp464, &tmp465, &tmp466, &tmp467, &tmp468, &tmp469, &tmp470, &tmp471, &tmp472, &tmp473, &tmp474, &tmp475, &tmp476, &tmp477, &tmp478, &tmp479, &tmp480, &tmp481);
     981          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 137);
     982             :     ca_.Goto(&block27, tmp462, tmp463, tmp464, tmp465, tmp466, tmp467, tmp468, tmp469, tmp470, tmp471, tmp472, tmp473, tmp474, tmp475, tmp476, tmp477, tmp478, tmp479, tmp480, tmp481);
     983             :   }
     984             : 
     985          56 :   if (block26.is_used()) {
     986             :     compiler::TNode<Context> tmp482;
     987             :     compiler::TNode<RawPtrT> tmp483;
     988             :     compiler::TNode<RawPtrT> tmp484;
     989             :     compiler::TNode<IntPtrT> tmp485;
     990             :     compiler::TNode<JSReceiver> tmp486;
     991             :     compiler::TNode<Number> tmp487;
     992             :     compiler::TNode<Number> tmp488;
     993             :     compiler::TNode<Smi> tmp489;
     994             :     compiler::TNode<Number> tmp490;
     995             :     compiler::TNode<Smi> tmp491;
     996             :     compiler::TNode<Smi> tmp492;
     997             :     compiler::TNode<Smi> tmp493;
     998             :     compiler::TNode<Smi> tmp494;
     999             :     compiler::TNode<Smi> tmp495;
    1000             :     compiler::TNode<JSArray> tmp496;
    1001             :     compiler::TNode<Map> tmp497;
    1002             :     compiler::TNode<Int32T> tmp498;
    1003             :     compiler::TNode<Int32T> tmp499;
    1004             :     compiler::TNode<IntPtrT> tmp500;
    1005             :     compiler::TNode<Object> tmp501;
    1006             :     ca_.Bind(&block26, &tmp482, &tmp483, &tmp484, &tmp485, &tmp486, &tmp487, &tmp488, &tmp489, &tmp490, &tmp491, &tmp492, &tmp493, &tmp494, &tmp495, &tmp496, &tmp497, &tmp498, &tmp499, &tmp500, &tmp501);
    1007          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 144);
    1008             :     compiler::TNode<BoolT> tmp502;
    1009             :     USE(tmp502);
    1010         112 :     tmp502 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).IsDoubleElementsKind(compiler::TNode<Int32T>{tmp498}));
    1011          56 :     ca_.Branch(tmp502, &block34, &block35, tmp482, tmp483, tmp484, tmp485, tmp486, tmp487, tmp488, tmp489, tmp490, tmp491, tmp492, tmp493, tmp494, tmp495, tmp496, tmp497, tmp498, tmp499, tmp500, tmp501);
    1012             :   }
    1013             : 
    1014          56 :   if (block34.is_used()) {
    1015             :     compiler::TNode<Context> tmp503;
    1016             :     compiler::TNode<RawPtrT> tmp504;
    1017             :     compiler::TNode<RawPtrT> tmp505;
    1018             :     compiler::TNode<IntPtrT> tmp506;
    1019             :     compiler::TNode<JSReceiver> tmp507;
    1020             :     compiler::TNode<Number> tmp508;
    1021             :     compiler::TNode<Number> tmp509;
    1022             :     compiler::TNode<Smi> tmp510;
    1023             :     compiler::TNode<Number> tmp511;
    1024             :     compiler::TNode<Smi> tmp512;
    1025             :     compiler::TNode<Smi> tmp513;
    1026             :     compiler::TNode<Smi> tmp514;
    1027             :     compiler::TNode<Smi> tmp515;
    1028             :     compiler::TNode<Smi> tmp516;
    1029             :     compiler::TNode<JSArray> tmp517;
    1030             :     compiler::TNode<Map> tmp518;
    1031             :     compiler::TNode<Int32T> tmp519;
    1032             :     compiler::TNode<Int32T> tmp520;
    1033             :     compiler::TNode<IntPtrT> tmp521;
    1034             :     compiler::TNode<Object> tmp522;
    1035             :     ca_.Bind(&block34, &tmp503, &tmp504, &tmp505, &tmp506, &tmp507, &tmp508, &tmp509, &tmp510, &tmp511, &tmp512, &tmp513, &tmp514, &tmp515, &tmp516, &tmp517, &tmp518, &tmp519, &tmp520, &tmp521, &tmp522);
    1036          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 145);
    1037             :     compiler::TNode<BoolT> tmp523;
    1038             :     USE(tmp523);
    1039         168 :     tmp523 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).IsNumber(compiler::TNode<Object>{tmp522}));
    1040             :     compiler::TNode<BoolT> tmp524;
    1041             :     USE(tmp524);
    1042         112 :     tmp524 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).Word32BinaryNot(compiler::TNode<BoolT>{tmp523}));
    1043          56 :     ca_.Branch(tmp524, &block36, &block37, tmp503, tmp504, tmp505, tmp506, tmp507, tmp508, tmp509, tmp510, tmp511, tmp512, tmp513, tmp514, tmp515, tmp516, tmp517, tmp518, tmp519, tmp520, tmp521, tmp522);
    1044             :   }
    1045             : 
    1046          56 :   if (block36.is_used()) {
    1047             :     compiler::TNode<Context> tmp525;
    1048             :     compiler::TNode<RawPtrT> tmp526;
    1049             :     compiler::TNode<RawPtrT> tmp527;
    1050             :     compiler::TNode<IntPtrT> tmp528;
    1051             :     compiler::TNode<JSReceiver> tmp529;
    1052             :     compiler::TNode<Number> tmp530;
    1053             :     compiler::TNode<Number> tmp531;
    1054             :     compiler::TNode<Smi> tmp532;
    1055             :     compiler::TNode<Number> tmp533;
    1056             :     compiler::TNode<Smi> tmp534;
    1057             :     compiler::TNode<Smi> tmp535;
    1058             :     compiler::TNode<Smi> tmp536;
    1059             :     compiler::TNode<Smi> tmp537;
    1060             :     compiler::TNode<Smi> tmp538;
    1061             :     compiler::TNode<JSArray> tmp539;
    1062             :     compiler::TNode<Map> tmp540;
    1063             :     compiler::TNode<Int32T> tmp541;
    1064             :     compiler::TNode<Int32T> tmp542;
    1065             :     compiler::TNode<IntPtrT> tmp543;
    1066             :     compiler::TNode<Object> tmp544;
    1067             :     ca_.Bind(&block36, &tmp525, &tmp526, &tmp527, &tmp528, &tmp529, &tmp530, &tmp531, &tmp532, &tmp533, &tmp534, &tmp535, &tmp536, &tmp537, &tmp538, &tmp539, &tmp540, &tmp541, &tmp542, &tmp543, &tmp544);
    1068          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 146);
    1069             :     compiler::TNode<Int32T> tmp545;
    1070             :     USE(tmp545);
    1071         168 :     tmp545 = ca_.UncheckedCast<Int32T>(BaseBuiltinsFromDSLAssembler(state_).AllowNonNumberElements(compiler::TNode<Int32T>{tmp541}));
    1072          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 145);
    1073             :     ca_.Goto(&block37, tmp525, tmp526, tmp527, tmp528, tmp529, tmp530, tmp531, tmp532, tmp533, tmp534, tmp535, tmp536, tmp537, tmp538, tmp539, tmp540, tmp545, tmp542, tmp543, tmp544);
    1074             :   }
    1075             : 
    1076          56 :   if (block37.is_used()) {
    1077             :     compiler::TNode<Context> tmp546;
    1078             :     compiler::TNode<RawPtrT> tmp547;
    1079             :     compiler::TNode<RawPtrT> tmp548;
    1080             :     compiler::TNode<IntPtrT> tmp549;
    1081             :     compiler::TNode<JSReceiver> tmp550;
    1082             :     compiler::TNode<Number> tmp551;
    1083             :     compiler::TNode<Number> tmp552;
    1084             :     compiler::TNode<Smi> tmp553;
    1085             :     compiler::TNode<Number> tmp554;
    1086             :     compiler::TNode<Smi> tmp555;
    1087             :     compiler::TNode<Smi> tmp556;
    1088             :     compiler::TNode<Smi> tmp557;
    1089             :     compiler::TNode<Smi> tmp558;
    1090             :     compiler::TNode<Smi> tmp559;
    1091             :     compiler::TNode<JSArray> tmp560;
    1092             :     compiler::TNode<Map> tmp561;
    1093             :     compiler::TNode<Int32T> tmp562;
    1094             :     compiler::TNode<Int32T> tmp563;
    1095             :     compiler::TNode<IntPtrT> tmp564;
    1096             :     compiler::TNode<Object> tmp565;
    1097             :     ca_.Bind(&block37, &tmp546, &tmp547, &tmp548, &tmp549, &tmp550, &tmp551, &tmp552, &tmp553, &tmp554, &tmp555, &tmp556, &tmp557, &tmp558, &tmp559, &tmp560, &tmp561, &tmp562, &tmp563, &tmp564, &tmp565);
    1098          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 144);
    1099             :     ca_.Goto(&block35, tmp546, tmp547, tmp548, tmp549, tmp550, tmp551, tmp552, tmp553, tmp554, tmp555, tmp556, tmp557, tmp558, tmp559, tmp560, tmp561, tmp562, tmp563, tmp564, tmp565);
    1100             :   }
    1101             : 
    1102          56 :   if (block35.is_used()) {
    1103             :     compiler::TNode<Context> tmp566;
    1104             :     compiler::TNode<RawPtrT> tmp567;
    1105             :     compiler::TNode<RawPtrT> tmp568;
    1106             :     compiler::TNode<IntPtrT> tmp569;
    1107             :     compiler::TNode<JSReceiver> tmp570;
    1108             :     compiler::TNode<Number> tmp571;
    1109             :     compiler::TNode<Number> tmp572;
    1110             :     compiler::TNode<Smi> tmp573;
    1111             :     compiler::TNode<Number> tmp574;
    1112             :     compiler::TNode<Smi> tmp575;
    1113             :     compiler::TNode<Smi> tmp576;
    1114             :     compiler::TNode<Smi> tmp577;
    1115             :     compiler::TNode<Smi> tmp578;
    1116             :     compiler::TNode<Smi> tmp579;
    1117             :     compiler::TNode<JSArray> tmp580;
    1118             :     compiler::TNode<Map> tmp581;
    1119             :     compiler::TNode<Int32T> tmp582;
    1120             :     compiler::TNode<Int32T> tmp583;
    1121             :     compiler::TNode<IntPtrT> tmp584;
    1122             :     compiler::TNode<Object> tmp585;
    1123             :     ca_.Bind(&block35, &tmp566, &tmp567, &tmp568, &tmp569, &tmp570, &tmp571, &tmp572, &tmp573, &tmp574, &tmp575, &tmp576, &tmp577, &tmp578, &tmp579, &tmp580, &tmp581, &tmp582, &tmp583, &tmp584, &tmp585);
    1124          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 137);
    1125             :     ca_.Goto(&block27, tmp566, tmp567, tmp568, tmp569, tmp570, tmp571, tmp572, tmp573, tmp574, tmp575, tmp576, tmp577, tmp578, tmp579, tmp580, tmp581, tmp582, tmp583, tmp584, tmp585);
    1126             :   }
    1127             : 
    1128          56 :   if (block27.is_used()) {
    1129             :     compiler::TNode<Context> tmp586;
    1130             :     compiler::TNode<RawPtrT> tmp587;
    1131             :     compiler::TNode<RawPtrT> tmp588;
    1132             :     compiler::TNode<IntPtrT> tmp589;
    1133             :     compiler::TNode<JSReceiver> tmp590;
    1134             :     compiler::TNode<Number> tmp591;
    1135             :     compiler::TNode<Number> tmp592;
    1136             :     compiler::TNode<Smi> tmp593;
    1137             :     compiler::TNode<Number> tmp594;
    1138             :     compiler::TNode<Smi> tmp595;
    1139             :     compiler::TNode<Smi> tmp596;
    1140             :     compiler::TNode<Smi> tmp597;
    1141             :     compiler::TNode<Smi> tmp598;
    1142             :     compiler::TNode<Smi> tmp599;
    1143             :     compiler::TNode<JSArray> tmp600;
    1144             :     compiler::TNode<Map> tmp601;
    1145             :     compiler::TNode<Int32T> tmp602;
    1146             :     compiler::TNode<Int32T> tmp603;
    1147             :     compiler::TNode<IntPtrT> tmp604;
    1148             :     compiler::TNode<Object> tmp605;
    1149             :     ca_.Bind(&block27, &tmp586, &tmp587, &tmp588, &tmp589, &tmp590, &tmp591, &tmp592, &tmp593, &tmp594, &tmp595, &tmp596, &tmp597, &tmp598, &tmp599, &tmp600, &tmp601, &tmp602, &tmp603, &tmp604, &tmp605);
    1150          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 135);
    1151             :     ca_.Goto(&block24, tmp586, tmp587, tmp588, tmp589, tmp590, tmp591, tmp592, tmp593, tmp594, tmp595, tmp596, tmp597, tmp598, tmp599, tmp600, tmp601, tmp602, tmp603, tmp604);
    1152             :   }
    1153             : 
    1154          56 :   if (block24.is_used()) {
    1155             :     compiler::TNode<Context> tmp606;
    1156             :     compiler::TNode<RawPtrT> tmp607;
    1157             :     compiler::TNode<RawPtrT> tmp608;
    1158             :     compiler::TNode<IntPtrT> tmp609;
    1159             :     compiler::TNode<JSReceiver> tmp610;
    1160             :     compiler::TNode<Number> tmp611;
    1161             :     compiler::TNode<Number> tmp612;
    1162             :     compiler::TNode<Smi> tmp613;
    1163             :     compiler::TNode<Number> tmp614;
    1164             :     compiler::TNode<Smi> tmp615;
    1165             :     compiler::TNode<Smi> tmp616;
    1166             :     compiler::TNode<Smi> tmp617;
    1167             :     compiler::TNode<Smi> tmp618;
    1168             :     compiler::TNode<Smi> tmp619;
    1169             :     compiler::TNode<JSArray> tmp620;
    1170             :     compiler::TNode<Map> tmp621;
    1171             :     compiler::TNode<Int32T> tmp622;
    1172             :     compiler::TNode<Int32T> tmp623;
    1173             :     compiler::TNode<IntPtrT> tmp624;
    1174             :     ca_.Bind(&block24, &tmp606, &tmp607, &tmp608, &tmp609, &tmp610, &tmp611, &tmp612, &tmp613, &tmp614, &tmp615, &tmp616, &tmp617, &tmp618, &tmp619, &tmp620, &tmp621, &tmp622, &tmp623, &tmp624);
    1175             :     compiler::TNode<IntPtrT> tmp625;
    1176             :     USE(tmp625);
    1177         168 :     tmp625 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATintptr17ATconstexpr_int31(1));
    1178             :     compiler::TNode<IntPtrT> tmp626;
    1179             :     USE(tmp626);
    1180         112 :     tmp626 = ca_.UncheckedCast<IntPtrT>(CodeStubAssembler(state_).IntPtrAdd(compiler::TNode<IntPtrT>{tmp624}, compiler::TNode<IntPtrT>{tmp625}));
    1181             :     ca_.Goto(&block23, tmp606, tmp607, tmp608, tmp609, tmp610, tmp611, tmp612, tmp613, tmp614, tmp615, tmp616, tmp617, tmp618, tmp619, tmp620, tmp621, tmp622, tmp623, tmp626);
    1182             :   }
    1183             : 
    1184          56 :   if (block22.is_used()) {
    1185             :     compiler::TNode<Context> tmp627;
    1186             :     compiler::TNode<RawPtrT> tmp628;
    1187             :     compiler::TNode<RawPtrT> tmp629;
    1188             :     compiler::TNode<IntPtrT> tmp630;
    1189             :     compiler::TNode<JSReceiver> tmp631;
    1190             :     compiler::TNode<Number> tmp632;
    1191             :     compiler::TNode<Number> tmp633;
    1192             :     compiler::TNode<Smi> tmp634;
    1193             :     compiler::TNode<Number> tmp635;
    1194             :     compiler::TNode<Smi> tmp636;
    1195             :     compiler::TNode<Smi> tmp637;
    1196             :     compiler::TNode<Smi> tmp638;
    1197             :     compiler::TNode<Smi> tmp639;
    1198             :     compiler::TNode<Smi> tmp640;
    1199             :     compiler::TNode<JSArray> tmp641;
    1200             :     compiler::TNode<Map> tmp642;
    1201             :     compiler::TNode<Int32T> tmp643;
    1202             :     compiler::TNode<Int32T> tmp644;
    1203             :     compiler::TNode<IntPtrT> tmp645;
    1204             :     ca_.Bind(&block22, &tmp627, &tmp628, &tmp629, &tmp630, &tmp631, &tmp632, &tmp633, &tmp634, &tmp635, &tmp636, &tmp637, &tmp638, &tmp639, &tmp640, &tmp641, &tmp642, &tmp643, &tmp644, &tmp645);
    1205          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 151);
    1206             :     compiler::TNode<BoolT> tmp646;
    1207             :     USE(tmp646);
    1208         168 :     tmp646 = ca_.UncheckedCast<BoolT>(BaseBuiltinsFromDSLAssembler(state_).ElementsKindNotEqual(compiler::TNode<Int32T>{tmp643}, compiler::TNode<Int32T>{tmp644}));
    1209          56 :     ca_.Branch(tmp646, &block38, &block39, tmp627, tmp628, tmp629, tmp630, tmp631, tmp632, tmp633, tmp634, tmp635, tmp636, tmp637, tmp638, tmp639, tmp640, tmp641, tmp642, tmp643, tmp644);
    1210             :   }
    1211             : 
    1212          56 :   if (block38.is_used()) {
    1213             :     compiler::TNode<Context> tmp647;
    1214             :     compiler::TNode<RawPtrT> tmp648;
    1215             :     compiler::TNode<RawPtrT> tmp649;
    1216             :     compiler::TNode<IntPtrT> tmp650;
    1217             :     compiler::TNode<JSReceiver> tmp651;
    1218             :     compiler::TNode<Number> tmp652;
    1219             :     compiler::TNode<Number> tmp653;
    1220             :     compiler::TNode<Smi> tmp654;
    1221             :     compiler::TNode<Number> tmp655;
    1222             :     compiler::TNode<Smi> tmp656;
    1223             :     compiler::TNode<Smi> tmp657;
    1224             :     compiler::TNode<Smi> tmp658;
    1225             :     compiler::TNode<Smi> tmp659;
    1226             :     compiler::TNode<Smi> tmp660;
    1227             :     compiler::TNode<JSArray> tmp661;
    1228             :     compiler::TNode<Map> tmp662;
    1229             :     compiler::TNode<Int32T> tmp663;
    1230             :     compiler::TNode<Int32T> tmp664;
    1231             :     ca_.Bind(&block38, &tmp647, &tmp648, &tmp649, &tmp650, &tmp651, &tmp652, &tmp653, &tmp654, &tmp655, &tmp656, &tmp657, &tmp658, &tmp659, &tmp660, &tmp661, &tmp662, &tmp663, &tmp664);
    1232          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 152);
    1233             :     compiler::TNode<Int32T> tmp665;
    1234             :     USE(tmp665);
    1235         168 :     tmp665 = ca_.UncheckedCast<Int32T>(BaseBuiltinsFromDSLAssembler(state_).Convert7ATint3214ATElementsKind(compiler::TNode<Int32T>{tmp663}));
    1236             :     compiler::TNode<Smi> tmp666;
    1237             :     USE(tmp666);
    1238         168 :     tmp666 = ca_.UncheckedCast<Smi>(BaseBuiltinsFromDSLAssembler(state_).Convert5ATSmi7ATint32(compiler::TNode<Int32T>{tmp665}));
    1239          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 153);
    1240         112 :     CodeStubAssembler(state_).CallRuntime(Runtime::kTransitionElementsKindWithKind, tmp647, tmp661, tmp666);
    1241          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 151);
    1242             :     ca_.Goto(&block39, tmp647, tmp648, tmp649, tmp650, tmp651, tmp652, tmp653, tmp654, tmp655, tmp656, tmp657, tmp658, tmp659, tmp660, tmp661, tmp662, tmp663, tmp664);
    1243             :   }
    1244             : 
    1245          56 :   if (block39.is_used()) {
    1246             :     compiler::TNode<Context> tmp668;
    1247             :     compiler::TNode<RawPtrT> tmp669;
    1248             :     compiler::TNode<RawPtrT> tmp670;
    1249             :     compiler::TNode<IntPtrT> tmp671;
    1250             :     compiler::TNode<JSReceiver> tmp672;
    1251             :     compiler::TNode<Number> tmp673;
    1252             :     compiler::TNode<Number> tmp674;
    1253             :     compiler::TNode<Smi> tmp675;
    1254             :     compiler::TNode<Number> tmp676;
    1255             :     compiler::TNode<Smi> tmp677;
    1256             :     compiler::TNode<Smi> tmp678;
    1257             :     compiler::TNode<Smi> tmp679;
    1258             :     compiler::TNode<Smi> tmp680;
    1259             :     compiler::TNode<Smi> tmp681;
    1260             :     compiler::TNode<JSArray> tmp682;
    1261             :     compiler::TNode<Map> tmp683;
    1262             :     compiler::TNode<Int32T> tmp684;
    1263             :     compiler::TNode<Int32T> tmp685;
    1264             :     ca_.Bind(&block39, &tmp668, &tmp669, &tmp670, &tmp671, &tmp672, &tmp673, &tmp674, &tmp675, &tmp676, &tmp677, &tmp678, &tmp679, &tmp680, &tmp681, &tmp682, &tmp683, &tmp684, &tmp685);
    1265          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 157);
    1266          56 :     compiler::TNode<IntPtrT> tmp686 = ca_.IntPtrConstant(JSArray::kLengthOffset);
    1267             :     USE(tmp686);
    1268         112 :     compiler::TNode<Number>tmp687 = CodeStubAssembler(state_).LoadReference<Number>(CodeStubAssembler::Reference{tmp682, tmp686});
    1269             :     compiler::TNode<Smi> tmp688;
    1270             :     USE(tmp688);
    1271          56 :     compiler::CodeAssemblerLabel label0(&ca_);
    1272         168 :     tmp688 = BaseBuiltinsFromDSLAssembler(state_).Cast5ATSmi(compiler::TNode<Object>{tmp687}, &label0);
    1273             :     ca_.Goto(&block40, tmp668, tmp669, tmp670, tmp671, tmp672, tmp673, tmp674, tmp675, tmp676, tmp677, tmp678, tmp679, tmp680, tmp681, tmp682, tmp683, tmp684, tmp685, tmp687, tmp688);
    1274          56 :     if (label0.is_used()) {
    1275          56 :       ca_.Bind(&label0);
    1276             :       ca_.Goto(&block41, tmp668, tmp669, tmp670, tmp671, tmp672, tmp673, tmp674, tmp675, tmp676, tmp677, tmp678, tmp679, tmp680, tmp681, tmp682, tmp683, tmp684, tmp685, tmp687);
    1277             :     }
    1278             :   }
    1279             : 
    1280          56 :   if (block41.is_used()) {
    1281             :     compiler::TNode<Context> tmp689;
    1282             :     compiler::TNode<RawPtrT> tmp690;
    1283             :     compiler::TNode<RawPtrT> tmp691;
    1284             :     compiler::TNode<IntPtrT> tmp692;
    1285             :     compiler::TNode<JSReceiver> tmp693;
    1286             :     compiler::TNode<Number> tmp694;
    1287             :     compiler::TNode<Number> tmp695;
    1288             :     compiler::TNode<Smi> tmp696;
    1289             :     compiler::TNode<Number> tmp697;
    1290             :     compiler::TNode<Smi> tmp698;
    1291             :     compiler::TNode<Smi> tmp699;
    1292             :     compiler::TNode<Smi> tmp700;
    1293             :     compiler::TNode<Smi> tmp701;
    1294             :     compiler::TNode<Smi> tmp702;
    1295             :     compiler::TNode<JSArray> tmp703;
    1296             :     compiler::TNode<Map> tmp704;
    1297             :     compiler::TNode<Int32T> tmp705;
    1298             :     compiler::TNode<Int32T> tmp706;
    1299             :     compiler::TNode<Number> tmp707;
    1300             :     ca_.Bind(&block41, &tmp689, &tmp690, &tmp691, &tmp692, &tmp693, &tmp694, &tmp695, &tmp696, &tmp697, &tmp698, &tmp699, &tmp700, &tmp701, &tmp702, &tmp703, &tmp704, &tmp705, &tmp706, &tmp707);
    1301             :     ca_.Goto(&block1);
    1302             :   }
    1303             : 
    1304          56 :   if (block40.is_used()) {
    1305             :     compiler::TNode<Context> tmp708;
    1306             :     compiler::TNode<RawPtrT> tmp709;
    1307             :     compiler::TNode<RawPtrT> tmp710;
    1308             :     compiler::TNode<IntPtrT> tmp711;
    1309             :     compiler::TNode<JSReceiver> tmp712;
    1310             :     compiler::TNode<Number> tmp713;
    1311             :     compiler::TNode<Number> tmp714;
    1312             :     compiler::TNode<Smi> tmp715;
    1313             :     compiler::TNode<Number> tmp716;
    1314             :     compiler::TNode<Smi> tmp717;
    1315             :     compiler::TNode<Smi> tmp718;
    1316             :     compiler::TNode<Smi> tmp719;
    1317             :     compiler::TNode<Smi> tmp720;
    1318             :     compiler::TNode<Smi> tmp721;
    1319             :     compiler::TNode<JSArray> tmp722;
    1320             :     compiler::TNode<Map> tmp723;
    1321             :     compiler::TNode<Int32T> tmp724;
    1322             :     compiler::TNode<Int32T> tmp725;
    1323             :     compiler::TNode<Number> tmp726;
    1324             :     compiler::TNode<Smi> tmp727;
    1325             :     ca_.Bind(&block40, &tmp708, &tmp709, &tmp710, &tmp711, &tmp712, &tmp713, &tmp714, &tmp715, &tmp716, &tmp717, &tmp718, &tmp719, &tmp720, &tmp721, &tmp722, &tmp723, &tmp724, &tmp725, &tmp726, &tmp727);
    1326          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 158);
    1327             :     compiler::TNode<BoolT> tmp728;
    1328             :     USE(tmp728);
    1329         112 :     tmp728 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).SmiNotEqual(compiler::TNode<Smi>{tmp717}, compiler::TNode<Smi>{tmp727}));
    1330          56 :     ca_.Branch(tmp728, &block42, &block43, tmp708, tmp709, tmp710, tmp711, tmp712, tmp713, tmp714, tmp715, tmp716, tmp717, tmp718, tmp719, tmp720, tmp721, tmp722, tmp723, tmp724, tmp725, tmp727);
    1331             :   }
    1332             : 
    1333          56 :   if (block42.is_used()) {
    1334             :     compiler::TNode<Context> tmp729;
    1335             :     compiler::TNode<RawPtrT> tmp730;
    1336             :     compiler::TNode<RawPtrT> tmp731;
    1337             :     compiler::TNode<IntPtrT> tmp732;
    1338             :     compiler::TNode<JSReceiver> tmp733;
    1339             :     compiler::TNode<Number> tmp734;
    1340             :     compiler::TNode<Number> tmp735;
    1341             :     compiler::TNode<Smi> tmp736;
    1342             :     compiler::TNode<Number> tmp737;
    1343             :     compiler::TNode<Smi> tmp738;
    1344             :     compiler::TNode<Smi> tmp739;
    1345             :     compiler::TNode<Smi> tmp740;
    1346             :     compiler::TNode<Smi> tmp741;
    1347             :     compiler::TNode<Smi> tmp742;
    1348             :     compiler::TNode<JSArray> tmp743;
    1349             :     compiler::TNode<Map> tmp744;
    1350             :     compiler::TNode<Int32T> tmp745;
    1351             :     compiler::TNode<Int32T> tmp746;
    1352             :     compiler::TNode<Smi> tmp747;
    1353             :     ca_.Bind(&block42, &tmp729, &tmp730, &tmp731, &tmp732, &tmp733, &tmp734, &tmp735, &tmp736, &tmp737, &tmp738, &tmp739, &tmp740, &tmp741, &tmp742, &tmp743, &tmp744, &tmp745, &tmp746, &tmp747);
    1354             :     ca_.Goto(&block1);
    1355             :   }
    1356             : 
    1357          56 :   if (block43.is_used()) {
    1358             :     compiler::TNode<Context> tmp748;
    1359             :     compiler::TNode<RawPtrT> tmp749;
    1360             :     compiler::TNode<RawPtrT> tmp750;
    1361             :     compiler::TNode<IntPtrT> tmp751;
    1362             :     compiler::TNode<JSReceiver> tmp752;
    1363             :     compiler::TNode<Number> tmp753;
    1364             :     compiler::TNode<Number> tmp754;
    1365             :     compiler::TNode<Smi> tmp755;
    1366             :     compiler::TNode<Number> tmp756;
    1367             :     compiler::TNode<Smi> tmp757;
    1368             :     compiler::TNode<Smi> tmp758;
    1369             :     compiler::TNode<Smi> tmp759;
    1370             :     compiler::TNode<Smi> tmp760;
    1371             :     compiler::TNode<Smi> tmp761;
    1372             :     compiler::TNode<JSArray> tmp762;
    1373             :     compiler::TNode<Map> tmp763;
    1374             :     compiler::TNode<Int32T> tmp764;
    1375             :     compiler::TNode<Int32T> tmp765;
    1376             :     compiler::TNode<Smi> tmp766;
    1377             :     ca_.Bind(&block43, &tmp748, &tmp749, &tmp750, &tmp751, &tmp752, &tmp753, &tmp754, &tmp755, &tmp756, &tmp757, &tmp758, &tmp759, &tmp760, &tmp761, &tmp762, &tmp763, &tmp764, &tmp765, &tmp766);
    1378          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 161);
    1379             :     compiler::TNode<JSArray> tmp767;
    1380         112 :     tmp767 = TORQUE_CAST(CodeStubAssembler(state_).CallBuiltin(Builtins::kExtractFastJSArray, tmp748, tmp762, tmp758, tmp759));
    1381             :     USE(tmp767);
    1382          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 160);
    1383          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 163);
    1384             :     compiler::TNode<Smi> tmp768;
    1385             :     USE(tmp768);
    1386         168 :     tmp768 = ca_.UncheckedCast<Smi>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr5ATSmi17ATconstexpr_int31(0));
    1387             :     compiler::TNode<BoolT> tmp769;
    1388             :     USE(tmp769);
    1389         112 :     tmp769 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).SmiEqual(compiler::TNode<Smi>{tmp761}, compiler::TNode<Smi>{tmp768}));
    1390          56 :     ca_.Branch(tmp769, &block44, &block45, tmp748, tmp749, tmp750, tmp751, tmp752, tmp753, tmp754, tmp755, tmp756, tmp757, tmp758, tmp759, tmp760, tmp761, tmp762, tmp763, tmp764, tmp765, tmp766, tmp767);
    1391             :   }
    1392             : 
    1393          56 :   if (block44.is_used()) {
    1394             :     compiler::TNode<Context> tmp770;
    1395             :     compiler::TNode<RawPtrT> tmp771;
    1396             :     compiler::TNode<RawPtrT> tmp772;
    1397             :     compiler::TNode<IntPtrT> tmp773;
    1398             :     compiler::TNode<JSReceiver> tmp774;
    1399             :     compiler::TNode<Number> tmp775;
    1400             :     compiler::TNode<Number> tmp776;
    1401             :     compiler::TNode<Smi> tmp777;
    1402             :     compiler::TNode<Number> tmp778;
    1403             :     compiler::TNode<Smi> tmp779;
    1404             :     compiler::TNode<Smi> tmp780;
    1405             :     compiler::TNode<Smi> tmp781;
    1406             :     compiler::TNode<Smi> tmp782;
    1407             :     compiler::TNode<Smi> tmp783;
    1408             :     compiler::TNode<JSArray> tmp784;
    1409             :     compiler::TNode<Map> tmp785;
    1410             :     compiler::TNode<Int32T> tmp786;
    1411             :     compiler::TNode<Int32T> tmp787;
    1412             :     compiler::TNode<Smi> tmp788;
    1413             :     compiler::TNode<JSArray> tmp789;
    1414             :     ca_.Bind(&block44, &tmp770, &tmp771, &tmp772, &tmp773, &tmp774, &tmp775, &tmp776, &tmp777, &tmp778, &tmp779, &tmp780, &tmp781, &tmp782, &tmp783, &tmp784, &tmp785, &tmp786, &tmp787, &tmp788, &tmp789);
    1415          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 164);
    1416          56 :     compiler::TNode<IntPtrT> tmp790 = ca_.IntPtrConstant(JSObject::kElementsOffset);
    1417             :     USE(tmp790);
    1418             :     compiler::TNode<FixedArray> tmp791;
    1419             :     USE(tmp791);
    1420         168 :     tmp791 = BaseBuiltinsFromDSLAssembler(state_).kEmptyFixedArray();
    1421         112 :     CodeStubAssembler(state_).StoreReference(CodeStubAssembler::Reference{tmp784, tmp790}, tmp791);
    1422          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 165);
    1423          56 :     compiler::TNode<IntPtrT> tmp792 = ca_.IntPtrConstant(JSArray::kLengthOffset);
    1424             :     USE(tmp792);
    1425             :     compiler::TNode<Number> tmp793;
    1426             :     USE(tmp793);
    1427         168 :     tmp793 = ca_.UncheckedCast<Number>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr20UT5ATSmi10HeapNumber17ATconstexpr_int31(0));
    1428         112 :     CodeStubAssembler(state_).StoreReference(CodeStubAssembler::Reference{tmp784, tmp792}, tmp793);
    1429          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 166);
    1430             :     ca_.Goto(&block2, tmp770, tmp771, tmp772, tmp773, tmp774, tmp775, tmp776, tmp777, tmp778, tmp789);
    1431             :   }
    1432             : 
    1433          56 :   if (block45.is_used()) {
    1434             :     compiler::TNode<Context> tmp794;
    1435             :     compiler::TNode<RawPtrT> tmp795;
    1436             :     compiler::TNode<RawPtrT> tmp796;
    1437             :     compiler::TNode<IntPtrT> tmp797;
    1438             :     compiler::TNode<JSReceiver> tmp798;
    1439             :     compiler::TNode<Number> tmp799;
    1440             :     compiler::TNode<Number> tmp800;
    1441             :     compiler::TNode<Smi> tmp801;
    1442             :     compiler::TNode<Number> tmp802;
    1443             :     compiler::TNode<Smi> tmp803;
    1444             :     compiler::TNode<Smi> tmp804;
    1445             :     compiler::TNode<Smi> tmp805;
    1446             :     compiler::TNode<Smi> tmp806;
    1447             :     compiler::TNode<Smi> tmp807;
    1448             :     compiler::TNode<JSArray> tmp808;
    1449             :     compiler::TNode<Map> tmp809;
    1450             :     compiler::TNode<Int32T> tmp810;
    1451             :     compiler::TNode<Int32T> tmp811;
    1452             :     compiler::TNode<Smi> tmp812;
    1453             :     compiler::TNode<JSArray> tmp813;
    1454             :     ca_.Bind(&block45, &tmp794, &tmp795, &tmp796, &tmp797, &tmp798, &tmp799, &tmp800, &tmp801, &tmp802, &tmp803, &tmp804, &tmp805, &tmp806, &tmp807, &tmp808, &tmp809, &tmp810, &tmp811, &tmp812, &tmp813);
    1455          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 169);
    1456             :     compiler::TNode<BoolT> tmp814;
    1457             :     USE(tmp814);
    1458         112 :     tmp814 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).IsFastSmiOrTaggedElementsKind(compiler::TNode<Int32T>{tmp810}));
    1459          56 :     ca_.Branch(tmp814, &block46, &block47, tmp794, tmp795, tmp796, tmp797, tmp798, tmp799, tmp800, tmp801, tmp802, tmp803, tmp804, tmp805, tmp806, tmp807, tmp808, tmp809, tmp810, tmp811, tmp812, tmp813);
    1460             :   }
    1461             : 
    1462          56 :   if (block46.is_used()) {
    1463             :     compiler::TNode<Context> tmp815;
    1464             :     compiler::TNode<RawPtrT> tmp816;
    1465             :     compiler::TNode<RawPtrT> tmp817;
    1466             :     compiler::TNode<IntPtrT> tmp818;
    1467             :     compiler::TNode<JSReceiver> tmp819;
    1468             :     compiler::TNode<Number> tmp820;
    1469             :     compiler::TNode<Number> tmp821;
    1470             :     compiler::TNode<Smi> tmp822;
    1471             :     compiler::TNode<Number> tmp823;
    1472             :     compiler::TNode<Smi> tmp824;
    1473             :     compiler::TNode<Smi> tmp825;
    1474             :     compiler::TNode<Smi> tmp826;
    1475             :     compiler::TNode<Smi> tmp827;
    1476             :     compiler::TNode<Smi> tmp828;
    1477             :     compiler::TNode<JSArray> tmp829;
    1478             :     compiler::TNode<Map> tmp830;
    1479             :     compiler::TNode<Int32T> tmp831;
    1480             :     compiler::TNode<Int32T> tmp832;
    1481             :     compiler::TNode<Smi> tmp833;
    1482             :     compiler::TNode<JSArray> tmp834;
    1483             :     ca_.Bind(&block46, &tmp815, &tmp816, &tmp817, &tmp818, &tmp819, &tmp820, &tmp821, &tmp822, &tmp823, &tmp824, &tmp825, &tmp826, &tmp827, &tmp828, &tmp829, &tmp830, &tmp831, &tmp832, &tmp833, &tmp834);
    1484          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 171);
    1485          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 172);
    1486          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 170);
    1487          56 :     compiler::CodeAssemblerLabel label0(&ca_);
    1488         168 :     ArraySpliceBuiltinsFromDSLAssembler(state_).FastSplice10FixedArray20UT5ATSmi10HeapObject(compiler::TNode<Context>{tmp815}, BaseBuiltinsFromDSLAssembler::Arguments{compiler::TNode<RawPtrT>{tmp816}, compiler::TNode<RawPtrT>{tmp817}, compiler::TNode<IntPtrT>{tmp818}}, compiler::TNode<JSArray>{tmp829}, compiler::TNode<Smi>{tmp833}, compiler::TNode<Smi>{tmp828}, compiler::TNode<Smi>{tmp827}, compiler::TNode<Smi>{tmp825}, compiler::TNode<Smi>{tmp822}, compiler::TNode<Smi>{tmp826}, &label0);
    1489             :     ca_.Goto(&block49, tmp815, tmp816, tmp817, tmp818, tmp819, tmp820, tmp821, tmp822, tmp823, tmp824, tmp825, tmp826, tmp827, tmp828, tmp829, tmp830, tmp831, tmp832, tmp833, tmp834, tmp816, tmp817, tmp818, tmp829, tmp833, tmp828, tmp827, tmp825, tmp822, tmp826);
    1490          56 :     if (label0.is_used()) {
    1491           0 :       ca_.Bind(&label0);
    1492             :       ca_.Goto(&block50, tmp815, tmp816, tmp817, tmp818, tmp819, tmp820, tmp821, tmp822, tmp823, tmp824, tmp825, tmp826, tmp827, tmp828, tmp829, tmp830, tmp831, tmp832, tmp833, tmp834, tmp816, tmp817, tmp818, tmp829, tmp833, tmp828, tmp827, tmp825, tmp822, tmp826);
    1493             :     }
    1494             :   }
    1495             : 
    1496          56 :   if (block50.is_used()) {
    1497             :     compiler::TNode<Context> tmp835;
    1498             :     compiler::TNode<RawPtrT> tmp836;
    1499             :     compiler::TNode<RawPtrT> tmp837;
    1500             :     compiler::TNode<IntPtrT> tmp838;
    1501             :     compiler::TNode<JSReceiver> tmp839;
    1502             :     compiler::TNode<Number> tmp840;
    1503             :     compiler::TNode<Number> tmp841;
    1504             :     compiler::TNode<Smi> tmp842;
    1505             :     compiler::TNode<Number> tmp843;
    1506             :     compiler::TNode<Smi> tmp844;
    1507             :     compiler::TNode<Smi> tmp845;
    1508             :     compiler::TNode<Smi> tmp846;
    1509             :     compiler::TNode<Smi> tmp847;
    1510             :     compiler::TNode<Smi> tmp848;
    1511             :     compiler::TNode<JSArray> tmp849;
    1512             :     compiler::TNode<Map> tmp850;
    1513             :     compiler::TNode<Int32T> tmp851;
    1514             :     compiler::TNode<Int32T> tmp852;
    1515             :     compiler::TNode<Smi> tmp853;
    1516             :     compiler::TNode<JSArray> tmp854;
    1517             :     compiler::TNode<RawPtrT> tmp855;
    1518             :     compiler::TNode<RawPtrT> tmp856;
    1519             :     compiler::TNode<IntPtrT> tmp857;
    1520             :     compiler::TNode<JSArray> tmp858;
    1521             :     compiler::TNode<Smi> tmp859;
    1522             :     compiler::TNode<Smi> tmp860;
    1523             :     compiler::TNode<Smi> tmp861;
    1524             :     compiler::TNode<Smi> tmp862;
    1525             :     compiler::TNode<Smi> tmp863;
    1526             :     compiler::TNode<Smi> tmp864;
    1527             :     ca_.Bind(&block50, &tmp835, &tmp836, &tmp837, &tmp838, &tmp839, &tmp840, &tmp841, &tmp842, &tmp843, &tmp844, &tmp845, &tmp846, &tmp847, &tmp848, &tmp849, &tmp850, &tmp851, &tmp852, &tmp853, &tmp854, &tmp855, &tmp856, &tmp857, &tmp858, &tmp859, &tmp860, &tmp861, &tmp862, &tmp863, &tmp864);
    1528             :     ca_.Goto(&block1);
    1529             :   }
    1530             : 
    1531          56 :   if (block49.is_used()) {
    1532             :     compiler::TNode<Context> tmp865;
    1533             :     compiler::TNode<RawPtrT> tmp866;
    1534             :     compiler::TNode<RawPtrT> tmp867;
    1535             :     compiler::TNode<IntPtrT> tmp868;
    1536             :     compiler::TNode<JSReceiver> tmp869;
    1537             :     compiler::TNode<Number> tmp870;
    1538             :     compiler::TNode<Number> tmp871;
    1539             :     compiler::TNode<Smi> tmp872;
    1540             :     compiler::TNode<Number> tmp873;
    1541             :     compiler::TNode<Smi> tmp874;
    1542             :     compiler::TNode<Smi> tmp875;
    1543             :     compiler::TNode<Smi> tmp876;
    1544             :     compiler::TNode<Smi> tmp877;
    1545             :     compiler::TNode<Smi> tmp878;
    1546             :     compiler::TNode<JSArray> tmp879;
    1547             :     compiler::TNode<Map> tmp880;
    1548             :     compiler::TNode<Int32T> tmp881;
    1549             :     compiler::TNode<Int32T> tmp882;
    1550             :     compiler::TNode<Smi> tmp883;
    1551             :     compiler::TNode<JSArray> tmp884;
    1552             :     compiler::TNode<RawPtrT> tmp885;
    1553             :     compiler::TNode<RawPtrT> tmp886;
    1554             :     compiler::TNode<IntPtrT> tmp887;
    1555             :     compiler::TNode<JSArray> tmp888;
    1556             :     compiler::TNode<Smi> tmp889;
    1557             :     compiler::TNode<Smi> tmp890;
    1558             :     compiler::TNode<Smi> tmp891;
    1559             :     compiler::TNode<Smi> tmp892;
    1560             :     compiler::TNode<Smi> tmp893;
    1561             :     compiler::TNode<Smi> tmp894;
    1562             :     ca_.Bind(&block49, &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, &tmp894);
    1563          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 169);
    1564             :     ca_.Goto(&block48, tmp865, tmp866, tmp867, tmp868, tmp869, tmp870, tmp871, tmp872, tmp873, tmp874, tmp875, tmp876, tmp877, tmp878, tmp879, tmp880, tmp881, tmp882, tmp883, tmp884);
    1565             :   }
    1566             : 
    1567          56 :   if (block47.is_used()) {
    1568             :     compiler::TNode<Context> tmp895;
    1569             :     compiler::TNode<RawPtrT> tmp896;
    1570             :     compiler::TNode<RawPtrT> tmp897;
    1571             :     compiler::TNode<IntPtrT> tmp898;
    1572             :     compiler::TNode<JSReceiver> tmp899;
    1573             :     compiler::TNode<Number> tmp900;
    1574             :     compiler::TNode<Number> tmp901;
    1575             :     compiler::TNode<Smi> tmp902;
    1576             :     compiler::TNode<Number> tmp903;
    1577             :     compiler::TNode<Smi> tmp904;
    1578             :     compiler::TNode<Smi> tmp905;
    1579             :     compiler::TNode<Smi> tmp906;
    1580             :     compiler::TNode<Smi> tmp907;
    1581             :     compiler::TNode<Smi> tmp908;
    1582             :     compiler::TNode<JSArray> tmp909;
    1583             :     compiler::TNode<Map> tmp910;
    1584             :     compiler::TNode<Int32T> tmp911;
    1585             :     compiler::TNode<Int32T> tmp912;
    1586             :     compiler::TNode<Smi> tmp913;
    1587             :     compiler::TNode<JSArray> tmp914;
    1588             :     ca_.Bind(&block47, &tmp895, &tmp896, &tmp897, &tmp898, &tmp899, &tmp900, &tmp901, &tmp902, &tmp903, &tmp904, &tmp905, &tmp906, &tmp907, &tmp908, &tmp909, &tmp910, &tmp911, &tmp912, &tmp913, &tmp914);
    1589          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 175);
    1590          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 176);
    1591          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 174);
    1592          56 :     compiler::CodeAssemblerLabel label0(&ca_);
    1593         168 :     ArraySpliceBuiltinsFromDSLAssembler(state_).FastSplice16FixedDoubleArray20UT5ATSmi10HeapNumber(compiler::TNode<Context>{tmp895}, BaseBuiltinsFromDSLAssembler::Arguments{compiler::TNode<RawPtrT>{tmp896}, compiler::TNode<RawPtrT>{tmp897}, compiler::TNode<IntPtrT>{tmp898}}, compiler::TNode<JSArray>{tmp909}, compiler::TNode<Smi>{tmp913}, compiler::TNode<Smi>{tmp908}, compiler::TNode<Smi>{tmp907}, compiler::TNode<Smi>{tmp905}, compiler::TNode<Smi>{tmp902}, compiler::TNode<Smi>{tmp906}, &label0);
    1594             :     ca_.Goto(&block51, tmp895, tmp896, tmp897, tmp898, tmp899, tmp900, tmp901, tmp902, tmp903, tmp904, tmp905, tmp906, tmp907, tmp908, tmp909, tmp910, tmp911, tmp912, tmp913, tmp914, tmp896, tmp897, tmp898, tmp909, tmp913, tmp908, tmp907, tmp905, tmp902, tmp906);
    1595          56 :     if (label0.is_used()) {
    1596           0 :       ca_.Bind(&label0);
    1597             :       ca_.Goto(&block52, tmp895, tmp896, tmp897, tmp898, tmp899, tmp900, tmp901, tmp902, tmp903, tmp904, tmp905, tmp906, tmp907, tmp908, tmp909, tmp910, tmp911, tmp912, tmp913, tmp914, tmp896, tmp897, tmp898, tmp909, tmp913, tmp908, tmp907, tmp905, tmp902, tmp906);
    1598             :     }
    1599             :   }
    1600             : 
    1601          56 :   if (block52.is_used()) {
    1602             :     compiler::TNode<Context> tmp915;
    1603             :     compiler::TNode<RawPtrT> tmp916;
    1604             :     compiler::TNode<RawPtrT> tmp917;
    1605             :     compiler::TNode<IntPtrT> tmp918;
    1606             :     compiler::TNode<JSReceiver> tmp919;
    1607             :     compiler::TNode<Number> tmp920;
    1608             :     compiler::TNode<Number> tmp921;
    1609             :     compiler::TNode<Smi> tmp922;
    1610             :     compiler::TNode<Number> tmp923;
    1611             :     compiler::TNode<Smi> tmp924;
    1612             :     compiler::TNode<Smi> tmp925;
    1613             :     compiler::TNode<Smi> tmp926;
    1614             :     compiler::TNode<Smi> tmp927;
    1615             :     compiler::TNode<Smi> tmp928;
    1616             :     compiler::TNode<JSArray> tmp929;
    1617             :     compiler::TNode<Map> tmp930;
    1618             :     compiler::TNode<Int32T> tmp931;
    1619             :     compiler::TNode<Int32T> tmp932;
    1620             :     compiler::TNode<Smi> tmp933;
    1621             :     compiler::TNode<JSArray> tmp934;
    1622             :     compiler::TNode<RawPtrT> tmp935;
    1623             :     compiler::TNode<RawPtrT> tmp936;
    1624             :     compiler::TNode<IntPtrT> tmp937;
    1625             :     compiler::TNode<JSArray> tmp938;
    1626             :     compiler::TNode<Smi> tmp939;
    1627             :     compiler::TNode<Smi> tmp940;
    1628             :     compiler::TNode<Smi> tmp941;
    1629             :     compiler::TNode<Smi> tmp942;
    1630             :     compiler::TNode<Smi> tmp943;
    1631             :     compiler::TNode<Smi> tmp944;
    1632             :     ca_.Bind(&block52, &tmp915, &tmp916, &tmp917, &tmp918, &tmp919, &tmp920, &tmp921, &tmp922, &tmp923, &tmp924, &tmp925, &tmp926, &tmp927, &tmp928, &tmp929, &tmp930, &tmp931, &tmp932, &tmp933, &tmp934, &tmp935, &tmp936, &tmp937, &tmp938, &tmp939, &tmp940, &tmp941, &tmp942, &tmp943, &tmp944);
    1633             :     ca_.Goto(&block1);
    1634             :   }
    1635             : 
    1636          56 :   if (block51.is_used()) {
    1637             :     compiler::TNode<Context> tmp945;
    1638             :     compiler::TNode<RawPtrT> tmp946;
    1639             :     compiler::TNode<RawPtrT> tmp947;
    1640             :     compiler::TNode<IntPtrT> tmp948;
    1641             :     compiler::TNode<JSReceiver> tmp949;
    1642             :     compiler::TNode<Number> tmp950;
    1643             :     compiler::TNode<Number> tmp951;
    1644             :     compiler::TNode<Smi> tmp952;
    1645             :     compiler::TNode<Number> tmp953;
    1646             :     compiler::TNode<Smi> tmp954;
    1647             :     compiler::TNode<Smi> tmp955;
    1648             :     compiler::TNode<Smi> tmp956;
    1649             :     compiler::TNode<Smi> tmp957;
    1650             :     compiler::TNode<Smi> tmp958;
    1651             :     compiler::TNode<JSArray> tmp959;
    1652             :     compiler::TNode<Map> tmp960;
    1653             :     compiler::TNode<Int32T> tmp961;
    1654             :     compiler::TNode<Int32T> tmp962;
    1655             :     compiler::TNode<Smi> tmp963;
    1656             :     compiler::TNode<JSArray> tmp964;
    1657             :     compiler::TNode<RawPtrT> tmp965;
    1658             :     compiler::TNode<RawPtrT> tmp966;
    1659             :     compiler::TNode<IntPtrT> tmp967;
    1660             :     compiler::TNode<JSArray> tmp968;
    1661             :     compiler::TNode<Smi> tmp969;
    1662             :     compiler::TNode<Smi> tmp970;
    1663             :     compiler::TNode<Smi> tmp971;
    1664             :     compiler::TNode<Smi> tmp972;
    1665             :     compiler::TNode<Smi> tmp973;
    1666             :     compiler::TNode<Smi> tmp974;
    1667             :     ca_.Bind(&block51, &tmp945, &tmp946, &tmp947, &tmp948, &tmp949, &tmp950, &tmp951, &tmp952, &tmp953, &tmp954, &tmp955, &tmp956, &tmp957, &tmp958, &tmp959, &tmp960, &tmp961, &tmp962, &tmp963, &tmp964, &tmp965, &tmp966, &tmp967, &tmp968, &tmp969, &tmp970, &tmp971, &tmp972, &tmp973, &tmp974);
    1668          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 169);
    1669             :     ca_.Goto(&block48, tmp945, tmp946, tmp947, tmp948, tmp949, tmp950, tmp951, tmp952, tmp953, tmp954, tmp955, tmp956, tmp957, tmp958, tmp959, tmp960, tmp961, tmp962, tmp963, tmp964);
    1670             :   }
    1671             : 
    1672          56 :   if (block48.is_used()) {
    1673             :     compiler::TNode<Context> tmp975;
    1674             :     compiler::TNode<RawPtrT> tmp976;
    1675             :     compiler::TNode<RawPtrT> tmp977;
    1676             :     compiler::TNode<IntPtrT> tmp978;
    1677             :     compiler::TNode<JSReceiver> tmp979;
    1678             :     compiler::TNode<Number> tmp980;
    1679             :     compiler::TNode<Number> tmp981;
    1680             :     compiler::TNode<Smi> tmp982;
    1681             :     compiler::TNode<Number> tmp983;
    1682             :     compiler::TNode<Smi> tmp984;
    1683             :     compiler::TNode<Smi> tmp985;
    1684             :     compiler::TNode<Smi> tmp986;
    1685             :     compiler::TNode<Smi> tmp987;
    1686             :     compiler::TNode<Smi> tmp988;
    1687             :     compiler::TNode<JSArray> tmp989;
    1688             :     compiler::TNode<Map> tmp990;
    1689             :     compiler::TNode<Int32T> tmp991;
    1690             :     compiler::TNode<Int32T> tmp992;
    1691             :     compiler::TNode<Smi> tmp993;
    1692             :     compiler::TNode<JSArray> tmp994;
    1693             :     ca_.Bind(&block48, &tmp975, &tmp976, &tmp977, &tmp978, &tmp979, &tmp980, &tmp981, &tmp982, &tmp983, &tmp984, &tmp985, &tmp986, &tmp987, &tmp988, &tmp989, &tmp990, &tmp991, &tmp992, &tmp993, &tmp994);
    1694          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 179);
    1695             :     ca_.Goto(&block2, tmp975, tmp976, tmp977, tmp978, tmp979, tmp980, tmp981, tmp982, tmp983, tmp994);
    1696             :   }
    1697             : 
    1698          56 :   if (block2.is_used()) {
    1699             :     compiler::TNode<Context> tmp995;
    1700             :     compiler::TNode<RawPtrT> tmp996;
    1701             :     compiler::TNode<RawPtrT> tmp997;
    1702             :     compiler::TNode<IntPtrT> tmp998;
    1703             :     compiler::TNode<JSReceiver> tmp999;
    1704             :     compiler::TNode<Number> tmp1000;
    1705             :     compiler::TNode<Number> tmp1001;
    1706             :     compiler::TNode<Smi> tmp1002;
    1707             :     compiler::TNode<Number> tmp1003;
    1708             :     compiler::TNode<Object> tmp1004;
    1709             :     ca_.Bind(&block2, &tmp995, &tmp996, &tmp997, &tmp998, &tmp999, &tmp1000, &tmp1001, &tmp1002, &tmp1003, &tmp1004);
    1710          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 110);
    1711             :     ca_.Goto(&block53, tmp995, tmp996, tmp997, tmp998, tmp999, tmp1000, tmp1001, tmp1002, tmp1003, tmp1004);
    1712             :   }
    1713             : 
    1714          56 :   if (block1.is_used()) {
    1715             :     ca_.Bind(&block1);
    1716          56 :     ca_.Goto(label_Bailout);
    1717             :   }
    1718             : 
    1719             :     compiler::TNode<Context> tmp1005;
    1720             :     compiler::TNode<RawPtrT> tmp1006;
    1721             :     compiler::TNode<RawPtrT> tmp1007;
    1722             :     compiler::TNode<IntPtrT> tmp1008;
    1723             :     compiler::TNode<JSReceiver> tmp1009;
    1724             :     compiler::TNode<Number> tmp1010;
    1725             :     compiler::TNode<Number> tmp1011;
    1726             :     compiler::TNode<Smi> tmp1012;
    1727             :     compiler::TNode<Number> tmp1013;
    1728             :     compiler::TNode<Object> tmp1014;
    1729             :     ca_.Bind(&block53, &tmp1005, &tmp1006, &tmp1007, &tmp1008, &tmp1009, &tmp1010, &tmp1011, &tmp1012, &tmp1013, &tmp1014);
    1730         112 :   return compiler::TNode<Object>{tmp1014};
    1731             : }
    1732             : 
    1733          56 : compiler::TNode<Object> ArraySpliceBuiltinsFromDSLAssembler::FillDeletedElementsArray(compiler::TNode<Context> p_context, compiler::TNode<JSReceiver> p_o, compiler::TNode<Number> p_actualStart, compiler::TNode<Number> p_actualDeleteCount, compiler::TNode<JSReceiver> p_a) {
    1734          56 :   compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Number, JSReceiver> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    1735             :   compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Number, JSReceiver, Number> block4(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    1736             :   compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Number, JSReceiver, Number, Number, Number> block5(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    1737             :   compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Number, JSReceiver, Number, Number, Number> block6(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    1738             :   compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Number, JSReceiver, Number> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    1739             :   compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Number, JSReceiver, Number, Number, Oddball> block7(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    1740             :   compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Number, JSReceiver, Number, Number, Oddball> block8(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    1741             :   compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Number, JSReceiver, Number> block3(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    1742             :   compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Number, JSReceiver, Object> block1(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    1743             :   compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Number, JSReceiver, Object> block9(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    1744             :     ca_.Goto(&block0, p_context, p_o, p_actualStart, p_actualDeleteCount, p_a);
    1745             : 
    1746          56 :   if (block0.is_used()) {
    1747             :     compiler::TNode<Context> tmp0;
    1748             :     compiler::TNode<JSReceiver> tmp1;
    1749             :     compiler::TNode<Number> tmp2;
    1750             :     compiler::TNode<Number> tmp3;
    1751             :     compiler::TNode<JSReceiver> tmp4;
    1752             :     ca_.Bind(&block0, &tmp0, &tmp1, &tmp2, &tmp3, &tmp4);
    1753          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 186);
    1754             :     compiler::TNode<Number> tmp5;
    1755             :     USE(tmp5);
    1756         168 :     tmp5 = ca_.UncheckedCast<Number>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr20UT5ATSmi10HeapNumber17ATconstexpr_int31(0));
    1757          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 189);
    1758             :     ca_.Goto(&block4, tmp0, tmp1, tmp2, tmp3, tmp4, tmp5);
    1759             :   }
    1760             : 
    1761          56 :   if (block4.is_used()) {
    1762             :     compiler::TNode<Context> tmp6;
    1763             :     compiler::TNode<JSReceiver> tmp7;
    1764             :     compiler::TNode<Number> tmp8;
    1765             :     compiler::TNode<Number> tmp9;
    1766             :     compiler::TNode<JSReceiver> tmp10;
    1767             :     compiler::TNode<Number> tmp11;
    1768             :     ca_.Bind(&block4, &tmp6, &tmp7, &tmp8, &tmp9, &tmp10, &tmp11);
    1769          56 :     compiler::CodeAssemblerLabel label0(&ca_);
    1770          56 :     compiler::CodeAssemblerLabel label1(&ca_);
    1771         112 :     CodeStubAssembler(state_).BranchIfNumberLessThan(compiler::TNode<Number>{tmp11}, compiler::TNode<Number>{tmp9}, &label0, &label1);
    1772          56 :     if (label0.is_used()) {
    1773          56 :       ca_.Bind(&label0);
    1774             :       ca_.Goto(&block5, tmp6, tmp7, tmp8, tmp9, tmp10, tmp11, tmp11, tmp9);
    1775             :     }
    1776          56 :     if (label1.is_used()) {
    1777          56 :       ca_.Bind(&label1);
    1778             :       ca_.Goto(&block6, tmp6, tmp7, tmp8, tmp9, tmp10, tmp11, tmp11, tmp9);
    1779             :     }
    1780             :   }
    1781             : 
    1782          56 :   if (block5.is_used()) {
    1783             :     compiler::TNode<Context> tmp12;
    1784             :     compiler::TNode<JSReceiver> tmp13;
    1785             :     compiler::TNode<Number> tmp14;
    1786             :     compiler::TNode<Number> tmp15;
    1787             :     compiler::TNode<JSReceiver> tmp16;
    1788             :     compiler::TNode<Number> tmp17;
    1789             :     compiler::TNode<Number> tmp18;
    1790             :     compiler::TNode<Number> tmp19;
    1791             :     ca_.Bind(&block5, &tmp12, &tmp13, &tmp14, &tmp15, &tmp16, &tmp17, &tmp18, &tmp19);
    1792             :     ca_.Goto(&block2, tmp12, tmp13, tmp14, tmp15, tmp16, tmp17);
    1793             :   }
    1794             : 
    1795          56 :   if (block6.is_used()) {
    1796             :     compiler::TNode<Context> tmp20;
    1797             :     compiler::TNode<JSReceiver> tmp21;
    1798             :     compiler::TNode<Number> tmp22;
    1799             :     compiler::TNode<Number> tmp23;
    1800             :     compiler::TNode<JSReceiver> tmp24;
    1801             :     compiler::TNode<Number> tmp25;
    1802             :     compiler::TNode<Number> tmp26;
    1803             :     compiler::TNode<Number> tmp27;
    1804             :     ca_.Bind(&block6, &tmp20, &tmp21, &tmp22, &tmp23, &tmp24, &tmp25, &tmp26, &tmp27);
    1805             :     ca_.Goto(&block3, tmp20, tmp21, tmp22, tmp23, tmp24, tmp25);
    1806             :   }
    1807             : 
    1808          56 :   if (block2.is_used()) {
    1809             :     compiler::TNode<Context> tmp28;
    1810             :     compiler::TNode<JSReceiver> tmp29;
    1811             :     compiler::TNode<Number> tmp30;
    1812             :     compiler::TNode<Number> tmp31;
    1813             :     compiler::TNode<JSReceiver> tmp32;
    1814             :     compiler::TNode<Number> tmp33;
    1815             :     ca_.Bind(&block2, &tmp28, &tmp29, &tmp30, &tmp31, &tmp32, &tmp33);
    1816          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 191);
    1817             :     compiler::TNode<Number> tmp34;
    1818             :     USE(tmp34);
    1819         224 :     tmp34 = ca_.UncheckedCast<Number>(CodeStubAssembler(state_).NumberAdd(compiler::TNode<Number>{tmp30}, compiler::TNode<Number>{tmp33}));
    1820          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 194);
    1821             :     compiler::TNode<Oddball> tmp35;
    1822         112 :     tmp35 = TORQUE_CAST(CodeStubAssembler(state_).CallBuiltin(Builtins::kHasProperty, tmp28, tmp29, tmp34));
    1823             :     USE(tmp35);
    1824          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 197);
    1825             :     compiler::TNode<Oddball> tmp36;
    1826             :     USE(tmp36);
    1827         168 :     tmp36 = BaseBuiltinsFromDSLAssembler(state_).True();
    1828             :     compiler::TNode<BoolT> tmp37;
    1829             :     USE(tmp37);
    1830         112 :     tmp37 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).WordEqual(compiler::TNode<HeapObject>{tmp35}, compiler::TNode<HeapObject>{tmp36}));
    1831          56 :     ca_.Branch(tmp37, &block7, &block8, tmp28, tmp29, tmp30, tmp31, tmp32, tmp33, tmp34, tmp35);
    1832             :   }
    1833             : 
    1834          56 :   if (block7.is_used()) {
    1835             :     compiler::TNode<Context> tmp38;
    1836             :     compiler::TNode<JSReceiver> tmp39;
    1837             :     compiler::TNode<Number> tmp40;
    1838             :     compiler::TNode<Number> tmp41;
    1839             :     compiler::TNode<JSReceiver> tmp42;
    1840             :     compiler::TNode<Number> tmp43;
    1841             :     compiler::TNode<Number> tmp44;
    1842             :     compiler::TNode<Oddball> tmp45;
    1843             :     ca_.Bind(&block7, &tmp38, &tmp39, &tmp40, &tmp41, &tmp42, &tmp43, &tmp44, &tmp45);
    1844          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 199);
    1845             :     compiler::TNode<Object> tmp46;
    1846             :     USE(tmp46);
    1847         112 :     tmp46 = ca_.UncheckedCast<Object>(CodeStubAssembler(state_).GetProperty(compiler::TNode<Context>{tmp38}, compiler::TNode<Object>{tmp39}, compiler::TNode<Object>{tmp44}));
    1848          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 202);
    1849             :     compiler::TNode<Object> tmp47;
    1850         112 :     tmp47 = CodeStubAssembler(state_).CallBuiltin(Builtins::kFastCreateDataProperty, tmp38, tmp42, tmp43, tmp46);
    1851             :     USE(tmp47);
    1852          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 197);
    1853             :     ca_.Goto(&block8, tmp38, tmp39, tmp40, tmp41, tmp42, tmp43, tmp44, tmp45);
    1854             :   }
    1855             : 
    1856          56 :   if (block8.is_used()) {
    1857             :     compiler::TNode<Context> tmp48;
    1858             :     compiler::TNode<JSReceiver> tmp49;
    1859             :     compiler::TNode<Number> tmp50;
    1860             :     compiler::TNode<Number> tmp51;
    1861             :     compiler::TNode<JSReceiver> tmp52;
    1862             :     compiler::TNode<Number> tmp53;
    1863             :     compiler::TNode<Number> tmp54;
    1864             :     compiler::TNode<Oddball> tmp55;
    1865             :     ca_.Bind(&block8, &tmp48, &tmp49, &tmp50, &tmp51, &tmp52, &tmp53, &tmp54, &tmp55);
    1866          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 206);
    1867             :     compiler::TNode<Number> tmp56;
    1868             :     USE(tmp56);
    1869         168 :     tmp56 = ca_.UncheckedCast<Number>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr20UT5ATSmi10HeapNumber17ATconstexpr_int31(1));
    1870             :     compiler::TNode<Number> tmp57;
    1871             :     USE(tmp57);
    1872         168 :     tmp57 = ca_.UncheckedCast<Number>(CodeStubAssembler(state_).NumberAdd(compiler::TNode<Number>{tmp53}, compiler::TNode<Number>{tmp56}));
    1873          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 189);
    1874             :     ca_.Goto(&block4, tmp48, tmp49, tmp50, tmp51, tmp52, tmp57);
    1875             :   }
    1876             : 
    1877          56 :   if (block3.is_used()) {
    1878             :     compiler::TNode<Context> tmp58;
    1879             :     compiler::TNode<JSReceiver> tmp59;
    1880             :     compiler::TNode<Number> tmp60;
    1881             :     compiler::TNode<Number> tmp61;
    1882             :     compiler::TNode<JSReceiver> tmp62;
    1883             :     compiler::TNode<Number> tmp63;
    1884             :     ca_.Bind(&block3, &tmp58, &tmp59, &tmp60, &tmp61, &tmp62, &tmp63);
    1885          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 209);
    1886             :     compiler::TNode<String> tmp64;
    1887             :     USE(tmp64);
    1888         168 :     tmp64 = BaseBuiltinsFromDSLAssembler(state_).kLengthString();
    1889         112 :     CodeStubAssembler(state_).CallBuiltin(Builtins::kSetProperty, tmp58, tmp62, tmp64, tmp61);
    1890          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 210);
    1891             :     ca_.Goto(&block1, tmp58, tmp59, tmp60, tmp61, tmp62, tmp62);
    1892             :   }
    1893             : 
    1894          56 :   if (block1.is_used()) {
    1895             :     compiler::TNode<Context> tmp66;
    1896             :     compiler::TNode<JSReceiver> tmp67;
    1897             :     compiler::TNode<Number> tmp68;
    1898             :     compiler::TNode<Number> tmp69;
    1899             :     compiler::TNode<JSReceiver> tmp70;
    1900             :     compiler::TNode<Object> tmp71;
    1901             :     ca_.Bind(&block1, &tmp66, &tmp67, &tmp68, &tmp69, &tmp70, &tmp71);
    1902          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 182);
    1903             :     ca_.Goto(&block9, tmp66, tmp67, tmp68, tmp69, tmp70, tmp71);
    1904             :   }
    1905             : 
    1906             :     compiler::TNode<Context> tmp72;
    1907             :     compiler::TNode<JSReceiver> tmp73;
    1908             :     compiler::TNode<Number> tmp74;
    1909             :     compiler::TNode<Number> tmp75;
    1910             :     compiler::TNode<JSReceiver> tmp76;
    1911             :     compiler::TNode<Object> tmp77;
    1912             :     ca_.Bind(&block9, &tmp72, &tmp73, &tmp74, &tmp75, &tmp76, &tmp77);
    1913         112 :   return compiler::TNode<Object>{tmp77};
    1914             : }
    1915             : 
    1916          56 : void ArraySpliceBuiltinsFromDSLAssembler::HandleForwardCase(compiler::TNode<Context> p_context, compiler::TNode<JSReceiver> p_o, compiler::TNode<Number> p_len, compiler::TNode<Number> p_itemCount, compiler::TNode<Number> p_actualStart, compiler::TNode<Number> p_actualDeleteCount) {
    1917          56 :   compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Number, Number, Number> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    1918             :   compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Number, Number, Number, Number> block4(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    1919             :   compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Number, Number, Number, Number, Number, Number> block5(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    1920             :   compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Number, Number, Number, Number, Number, Number> block6(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    1921             :   compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Number, Number, Number, Number> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    1922             :   compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Number, Number, Number, Number, Number, Number, Oddball> block7(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    1923             :   compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Number, Number, Number, Number, Number, Number, Oddball> block8(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    1924             :   compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Number, Number, Number, Number, Number, Number, Oddball> block9(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    1925             :   compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Number, Number, Number, Number> block3(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    1926             :   compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Number, Number, Number, Number> block12(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    1927             :   compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Number, Number, Number, Number, Number, Number> block13(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    1928             :   compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Number, Number, Number, Number, Number, Number> block14(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    1929             :   compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Number, Number, Number, Number> block10(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    1930             :   compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Number, Number, Number, Number> block11(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    1931             :   compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Number, Number, Number> block1(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    1932             :   compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Number, Number, Number> block15(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    1933             :     ca_.Goto(&block0, p_context, p_o, p_len, p_itemCount, p_actualStart, p_actualDeleteCount);
    1934             : 
    1935          56 :   if (block0.is_used()) {
    1936             :     compiler::TNode<Context> tmp0;
    1937             :     compiler::TNode<JSReceiver> tmp1;
    1938             :     compiler::TNode<Number> tmp2;
    1939             :     compiler::TNode<Number> tmp3;
    1940             :     compiler::TNode<Number> tmp4;
    1941             :     compiler::TNode<Number> tmp5;
    1942             :     ca_.Bind(&block0, &tmp0, &tmp1, &tmp2, &tmp3, &tmp4, &tmp5);
    1943          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 220);
    1944          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 223);
    1945             :     ca_.Goto(&block4, tmp0, tmp1, tmp2, tmp3, tmp4, tmp5, tmp4);
    1946             :   }
    1947             : 
    1948          56 :   if (block4.is_used()) {
    1949             :     compiler::TNode<Context> tmp6;
    1950             :     compiler::TNode<JSReceiver> tmp7;
    1951             :     compiler::TNode<Number> tmp8;
    1952             :     compiler::TNode<Number> tmp9;
    1953             :     compiler::TNode<Number> tmp10;
    1954             :     compiler::TNode<Number> tmp11;
    1955             :     compiler::TNode<Number> tmp12;
    1956             :     ca_.Bind(&block4, &tmp6, &tmp7, &tmp8, &tmp9, &tmp10, &tmp11, &tmp12);
    1957             :     compiler::TNode<Number> tmp13;
    1958             :     USE(tmp13);
    1959         224 :     tmp13 = ca_.UncheckedCast<Number>(CodeStubAssembler(state_).NumberSub(compiler::TNode<Number>{tmp8}, compiler::TNode<Number>{tmp11}));
    1960          56 :     compiler::CodeAssemblerLabel label0(&ca_);
    1961          56 :     compiler::CodeAssemblerLabel label1(&ca_);
    1962         112 :     CodeStubAssembler(state_).BranchIfNumberLessThan(compiler::TNode<Number>{tmp12}, compiler::TNode<Number>{tmp13}, &label0, &label1);
    1963          56 :     if (label0.is_used()) {
    1964          56 :       ca_.Bind(&label0);
    1965             :       ca_.Goto(&block5, tmp6, tmp7, tmp8, tmp9, tmp10, tmp11, tmp12, tmp12, tmp13);
    1966             :     }
    1967          56 :     if (label1.is_used()) {
    1968          56 :       ca_.Bind(&label1);
    1969             :       ca_.Goto(&block6, tmp6, tmp7, tmp8, tmp9, tmp10, tmp11, tmp12, tmp12, tmp13);
    1970             :     }
    1971             :   }
    1972             : 
    1973          56 :   if (block5.is_used()) {
    1974             :     compiler::TNode<Context> tmp14;
    1975             :     compiler::TNode<JSReceiver> tmp15;
    1976             :     compiler::TNode<Number> tmp16;
    1977             :     compiler::TNode<Number> tmp17;
    1978             :     compiler::TNode<Number> tmp18;
    1979             :     compiler::TNode<Number> tmp19;
    1980             :     compiler::TNode<Number> tmp20;
    1981             :     compiler::TNode<Number> tmp21;
    1982             :     compiler::TNode<Number> tmp22;
    1983             :     ca_.Bind(&block5, &tmp14, &tmp15, &tmp16, &tmp17, &tmp18, &tmp19, &tmp20, &tmp21, &tmp22);
    1984             :     ca_.Goto(&block2, tmp14, tmp15, tmp16, tmp17, tmp18, tmp19, tmp20);
    1985             :   }
    1986             : 
    1987          56 :   if (block6.is_used()) {
    1988             :     compiler::TNode<Context> tmp23;
    1989             :     compiler::TNode<JSReceiver> tmp24;
    1990             :     compiler::TNode<Number> tmp25;
    1991             :     compiler::TNode<Number> tmp26;
    1992             :     compiler::TNode<Number> tmp27;
    1993             :     compiler::TNode<Number> tmp28;
    1994             :     compiler::TNode<Number> tmp29;
    1995             :     compiler::TNode<Number> tmp30;
    1996             :     compiler::TNode<Number> tmp31;
    1997             :     ca_.Bind(&block6, &tmp23, &tmp24, &tmp25, &tmp26, &tmp27, &tmp28, &tmp29, &tmp30, &tmp31);
    1998             :     ca_.Goto(&block3, tmp23, tmp24, tmp25, tmp26, tmp27, tmp28, tmp29);
    1999             :   }
    2000             : 
    2001          56 :   if (block2.is_used()) {
    2002             :     compiler::TNode<Context> tmp32;
    2003             :     compiler::TNode<JSReceiver> tmp33;
    2004             :     compiler::TNode<Number> tmp34;
    2005             :     compiler::TNode<Number> tmp35;
    2006             :     compiler::TNode<Number> tmp36;
    2007             :     compiler::TNode<Number> tmp37;
    2008             :     compiler::TNode<Number> tmp38;
    2009             :     ca_.Bind(&block2, &tmp32, &tmp33, &tmp34, &tmp35, &tmp36, &tmp37, &tmp38);
    2010          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 225);
    2011             :     compiler::TNode<Number> tmp39;
    2012             :     USE(tmp39);
    2013         224 :     tmp39 = ca_.UncheckedCast<Number>(CodeStubAssembler(state_).NumberAdd(compiler::TNode<Number>{tmp38}, compiler::TNode<Number>{tmp37}));
    2014          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 227);
    2015             :     compiler::TNode<Number> tmp40;
    2016             :     USE(tmp40);
    2017         224 :     tmp40 = ca_.UncheckedCast<Number>(CodeStubAssembler(state_).NumberAdd(compiler::TNode<Number>{tmp38}, compiler::TNode<Number>{tmp35}));
    2018          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 230);
    2019             :     compiler::TNode<Oddball> tmp41;
    2020         112 :     tmp41 = TORQUE_CAST(CodeStubAssembler(state_).CallBuiltin(Builtins::kHasProperty, tmp32, tmp33, tmp39));
    2021             :     USE(tmp41);
    2022          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 233);
    2023             :     compiler::TNode<Oddball> tmp42;
    2024             :     USE(tmp42);
    2025         168 :     tmp42 = BaseBuiltinsFromDSLAssembler(state_).True();
    2026             :     compiler::TNode<BoolT> tmp43;
    2027             :     USE(tmp43);
    2028         112 :     tmp43 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).WordEqual(compiler::TNode<HeapObject>{tmp41}, compiler::TNode<HeapObject>{tmp42}));
    2029          56 :     ca_.Branch(tmp43, &block7, &block8, tmp32, tmp33, tmp34, tmp35, tmp36, tmp37, tmp38, tmp39, tmp40, tmp41);
    2030             :   }
    2031             : 
    2032          56 :   if (block7.is_used()) {
    2033             :     compiler::TNode<Context> tmp44;
    2034             :     compiler::TNode<JSReceiver> tmp45;
    2035             :     compiler::TNode<Number> tmp46;
    2036             :     compiler::TNode<Number> tmp47;
    2037             :     compiler::TNode<Number> tmp48;
    2038             :     compiler::TNode<Number> tmp49;
    2039             :     compiler::TNode<Number> tmp50;
    2040             :     compiler::TNode<Number> tmp51;
    2041             :     compiler::TNode<Number> tmp52;
    2042             :     compiler::TNode<Oddball> tmp53;
    2043             :     ca_.Bind(&block7, &tmp44, &tmp45, &tmp46, &tmp47, &tmp48, &tmp49, &tmp50, &tmp51, &tmp52, &tmp53);
    2044          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 235);
    2045             :     compiler::TNode<Object> tmp54;
    2046             :     USE(tmp54);
    2047         112 :     tmp54 = ca_.UncheckedCast<Object>(CodeStubAssembler(state_).GetProperty(compiler::TNode<Context>{tmp44}, compiler::TNode<Object>{tmp45}, compiler::TNode<Object>{tmp51}));
    2048          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 238);
    2049         112 :     CodeStubAssembler(state_).CallBuiltin(Builtins::kSetProperty, tmp44, tmp45, tmp52, tmp54);
    2050          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 233);
    2051             :     ca_.Goto(&block9, tmp44, tmp45, tmp46, tmp47, tmp48, tmp49, tmp50, tmp51, tmp52, tmp53);
    2052             :   }
    2053             : 
    2054          56 :   if (block8.is_used()) {
    2055             :     compiler::TNode<Context> tmp56;
    2056             :     compiler::TNode<JSReceiver> tmp57;
    2057             :     compiler::TNode<Number> tmp58;
    2058             :     compiler::TNode<Number> tmp59;
    2059             :     compiler::TNode<Number> tmp60;
    2060             :     compiler::TNode<Number> tmp61;
    2061             :     compiler::TNode<Number> tmp62;
    2062             :     compiler::TNode<Number> tmp63;
    2063             :     compiler::TNode<Number> tmp64;
    2064             :     compiler::TNode<Oddball> tmp65;
    2065             :     ca_.Bind(&block8, &tmp56, &tmp57, &tmp58, &tmp59, &tmp60, &tmp61, &tmp62, &tmp63, &tmp64, &tmp65);
    2066          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 243);
    2067             :     compiler::TNode<Smi> tmp66;
    2068             :     USE(tmp66);
    2069         168 :     tmp66 = ca_.UncheckedCast<Smi>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr14ATLanguageMode24ATconstexpr_LanguageMode(LanguageMode::kStrict));
    2070         112 :     CodeStubAssembler(state_).CallBuiltin(Builtins::kDeleteProperty, tmp56, tmp57, tmp64, tmp66);
    2071          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 233);
    2072             :     ca_.Goto(&block9, tmp56, tmp57, tmp58, tmp59, tmp60, tmp61, tmp62, tmp63, tmp64, tmp65);
    2073             :   }
    2074             : 
    2075          56 :   if (block9.is_used()) {
    2076             :     compiler::TNode<Context> tmp68;
    2077             :     compiler::TNode<JSReceiver> tmp69;
    2078             :     compiler::TNode<Number> tmp70;
    2079             :     compiler::TNode<Number> tmp71;
    2080             :     compiler::TNode<Number> tmp72;
    2081             :     compiler::TNode<Number> tmp73;
    2082             :     compiler::TNode<Number> tmp74;
    2083             :     compiler::TNode<Number> tmp75;
    2084             :     compiler::TNode<Number> tmp76;
    2085             :     compiler::TNode<Oddball> tmp77;
    2086             :     ca_.Bind(&block9, &tmp68, &tmp69, &tmp70, &tmp71, &tmp72, &tmp73, &tmp74, &tmp75, &tmp76, &tmp77);
    2087          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 246);
    2088             :     compiler::TNode<Number> tmp78;
    2089             :     USE(tmp78);
    2090         168 :     tmp78 = ca_.UncheckedCast<Number>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr20UT5ATSmi10HeapNumber17ATconstexpr_int31(1));
    2091             :     compiler::TNode<Number> tmp79;
    2092             :     USE(tmp79);
    2093         168 :     tmp79 = ca_.UncheckedCast<Number>(CodeStubAssembler(state_).NumberAdd(compiler::TNode<Number>{tmp74}, compiler::TNode<Number>{tmp78}));
    2094          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 223);
    2095             :     ca_.Goto(&block4, tmp68, tmp69, tmp70, tmp71, tmp72, tmp73, tmp79);
    2096             :   }
    2097             : 
    2098          56 :   if (block3.is_used()) {
    2099             :     compiler::TNode<Context> tmp80;
    2100             :     compiler::TNode<JSReceiver> tmp81;
    2101             :     compiler::TNode<Number> tmp82;
    2102             :     compiler::TNode<Number> tmp83;
    2103             :     compiler::TNode<Number> tmp84;
    2104             :     compiler::TNode<Number> tmp85;
    2105             :     compiler::TNode<Number> tmp86;
    2106             :     ca_.Bind(&block3, &tmp80, &tmp81, &tmp82, &tmp83, &tmp84, &tmp85, &tmp86);
    2107          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 250);
    2108          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 253);
    2109             :     ca_.Goto(&block12, tmp80, tmp81, tmp82, tmp83, tmp84, tmp85, tmp82);
    2110             :   }
    2111             : 
    2112          56 :   if (block12.is_used()) {
    2113             :     compiler::TNode<Context> tmp87;
    2114             :     compiler::TNode<JSReceiver> tmp88;
    2115             :     compiler::TNode<Number> tmp89;
    2116             :     compiler::TNode<Number> tmp90;
    2117             :     compiler::TNode<Number> tmp91;
    2118             :     compiler::TNode<Number> tmp92;
    2119             :     compiler::TNode<Number> tmp93;
    2120             :     ca_.Bind(&block12, &tmp87, &tmp88, &tmp89, &tmp90, &tmp91, &tmp92, &tmp93);
    2121             :     compiler::TNode<Number> tmp94;
    2122             :     USE(tmp94);
    2123         224 :     tmp94 = ca_.UncheckedCast<Number>(CodeStubAssembler(state_).NumberSub(compiler::TNode<Number>{tmp89}, compiler::TNode<Number>{tmp92}));
    2124             :     compiler::TNode<Number> tmp95;
    2125             :     USE(tmp95);
    2126         168 :     tmp95 = ca_.UncheckedCast<Number>(CodeStubAssembler(state_).NumberAdd(compiler::TNode<Number>{tmp94}, compiler::TNode<Number>{tmp90}));
    2127          56 :     compiler::CodeAssemblerLabel label0(&ca_);
    2128          56 :     compiler::CodeAssemblerLabel label1(&ca_);
    2129         112 :     CodeStubAssembler(state_).BranchIfNumberGreaterThan(compiler::TNode<Number>{tmp93}, compiler::TNode<Number>{tmp95}, &label0, &label1);
    2130          56 :     if (label0.is_used()) {
    2131          56 :       ca_.Bind(&label0);
    2132             :       ca_.Goto(&block13, tmp87, tmp88, tmp89, tmp90, tmp91, tmp92, tmp93, tmp93, tmp95);
    2133             :     }
    2134          56 :     if (label1.is_used()) {
    2135          56 :       ca_.Bind(&label1);
    2136             :       ca_.Goto(&block14, tmp87, tmp88, tmp89, tmp90, tmp91, tmp92, tmp93, tmp93, tmp95);
    2137             :     }
    2138             :   }
    2139             : 
    2140          56 :   if (block13.is_used()) {
    2141             :     compiler::TNode<Context> tmp96;
    2142             :     compiler::TNode<JSReceiver> tmp97;
    2143             :     compiler::TNode<Number> tmp98;
    2144             :     compiler::TNode<Number> tmp99;
    2145             :     compiler::TNode<Number> tmp100;
    2146             :     compiler::TNode<Number> tmp101;
    2147             :     compiler::TNode<Number> tmp102;
    2148             :     compiler::TNode<Number> tmp103;
    2149             :     compiler::TNode<Number> tmp104;
    2150             :     ca_.Bind(&block13, &tmp96, &tmp97, &tmp98, &tmp99, &tmp100, &tmp101, &tmp102, &tmp103, &tmp104);
    2151             :     ca_.Goto(&block10, tmp96, tmp97, tmp98, tmp99, tmp100, tmp101, tmp102);
    2152             :   }
    2153             : 
    2154          56 :   if (block14.is_used()) {
    2155             :     compiler::TNode<Context> tmp105;
    2156             :     compiler::TNode<JSReceiver> tmp106;
    2157             :     compiler::TNode<Number> tmp107;
    2158             :     compiler::TNode<Number> tmp108;
    2159             :     compiler::TNode<Number> tmp109;
    2160             :     compiler::TNode<Number> tmp110;
    2161             :     compiler::TNode<Number> tmp111;
    2162             :     compiler::TNode<Number> tmp112;
    2163             :     compiler::TNode<Number> tmp113;
    2164             :     ca_.Bind(&block14, &tmp105, &tmp106, &tmp107, &tmp108, &tmp109, &tmp110, &tmp111, &tmp112, &tmp113);
    2165             :     ca_.Goto(&block11, tmp105, tmp106, tmp107, tmp108, tmp109, tmp110, tmp111);
    2166             :   }
    2167             : 
    2168          56 :   if (block10.is_used()) {
    2169             :     compiler::TNode<Context> tmp114;
    2170             :     compiler::TNode<JSReceiver> tmp115;
    2171             :     compiler::TNode<Number> tmp116;
    2172             :     compiler::TNode<Number> tmp117;
    2173             :     compiler::TNode<Number> tmp118;
    2174             :     compiler::TNode<Number> tmp119;
    2175             :     compiler::TNode<Number> tmp120;
    2176             :     ca_.Bind(&block10, &tmp114, &tmp115, &tmp116, &tmp117, &tmp118, &tmp119, &tmp120);
    2177          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 255);
    2178             :     compiler::TNode<Number> tmp121;
    2179             :     USE(tmp121);
    2180         168 :     tmp121 = ca_.UncheckedCast<Number>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr20UT5ATSmi10HeapNumber17ATconstexpr_int31(1));
    2181             :     compiler::TNode<Number> tmp122;
    2182             :     USE(tmp122);
    2183         168 :     tmp122 = ca_.UncheckedCast<Number>(CodeStubAssembler(state_).NumberSub(compiler::TNode<Number>{tmp120}, compiler::TNode<Number>{tmp121}));
    2184             :     compiler::TNode<Smi> tmp123;
    2185             :     USE(tmp123);
    2186         168 :     tmp123 = ca_.UncheckedCast<Smi>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr14ATLanguageMode24ATconstexpr_LanguageMode(LanguageMode::kStrict));
    2187         112 :     CodeStubAssembler(state_).CallBuiltin(Builtins::kDeleteProperty, tmp114, tmp115, tmp122, tmp123);
    2188          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 257);
    2189             :     compiler::TNode<Number> tmp125;
    2190             :     USE(tmp125);
    2191         168 :     tmp125 = ca_.UncheckedCast<Number>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr20UT5ATSmi10HeapNumber17ATconstexpr_int31(1));
    2192             :     compiler::TNode<Number> tmp126;
    2193             :     USE(tmp126);
    2194         168 :     tmp126 = ca_.UncheckedCast<Number>(CodeStubAssembler(state_).NumberSub(compiler::TNode<Number>{tmp120}, compiler::TNode<Number>{tmp125}));
    2195          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 253);
    2196             :     ca_.Goto(&block12, tmp114, tmp115, tmp116, tmp117, tmp118, tmp119, tmp126);
    2197             :   }
    2198             : 
    2199          56 :   if (block11.is_used()) {
    2200             :     compiler::TNode<Context> tmp127;
    2201             :     compiler::TNode<JSReceiver> tmp128;
    2202             :     compiler::TNode<Number> tmp129;
    2203             :     compiler::TNode<Number> tmp130;
    2204             :     compiler::TNode<Number> tmp131;
    2205             :     compiler::TNode<Number> tmp132;
    2206             :     compiler::TNode<Number> tmp133;
    2207             :     ca_.Bind(&block11, &tmp127, &tmp128, &tmp129, &tmp130, &tmp131, &tmp132, &tmp133);
    2208          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 217);
    2209          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 215);
    2210             :     ca_.Goto(&block1, tmp127, tmp128, tmp129, tmp130, tmp131, tmp132);
    2211             :   }
    2212             : 
    2213          56 :   if (block1.is_used()) {
    2214             :     compiler::TNode<Context> tmp134;
    2215             :     compiler::TNode<JSReceiver> tmp135;
    2216             :     compiler::TNode<Number> tmp136;
    2217             :     compiler::TNode<Number> tmp137;
    2218             :     compiler::TNode<Number> tmp138;
    2219             :     compiler::TNode<Number> tmp139;
    2220             :     ca_.Bind(&block1, &tmp134, &tmp135, &tmp136, &tmp137, &tmp138, &tmp139);
    2221             :     ca_.Goto(&block15, tmp134, tmp135, tmp136, tmp137, tmp138, tmp139);
    2222             :   }
    2223             : 
    2224             :     compiler::TNode<Context> tmp140;
    2225             :     compiler::TNode<JSReceiver> tmp141;
    2226             :     compiler::TNode<Number> tmp142;
    2227             :     compiler::TNode<Number> tmp143;
    2228             :     compiler::TNode<Number> tmp144;
    2229             :     compiler::TNode<Number> tmp145;
    2230             :     ca_.Bind(&block15, &tmp140, &tmp141, &tmp142, &tmp143, &tmp144, &tmp145);
    2231          56 : }
    2232             : 
    2233          56 : void ArraySpliceBuiltinsFromDSLAssembler::HandleBackwardCase(compiler::TNode<Context> p_context, compiler::TNode<JSReceiver> p_o, compiler::TNode<Number> p_len, compiler::TNode<Number> p_itemCount, compiler::TNode<Number> p_actualStart, compiler::TNode<Number> p_actualDeleteCount) {
    2234          56 :   compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Number, Number, Number> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    2235             :   compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Number, Number, Number, Number> block4(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    2236             :   compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Number, Number, Number, Number, Number, Number> block5(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    2237             :   compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Number, Number, Number, Number, Number, Number> block6(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    2238             :   compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Number, Number, Number, Number> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    2239             :   compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Number, Number, Number, Number, Number, Number, Oddball> block7(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    2240             :   compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Number, Number, Number, Number, Number, Number, Oddball> block8(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    2241             :   compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Number, Number, Number, Number, Number, Number, Oddball> block9(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    2242             :   compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Number, Number, Number, Number> block3(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    2243             :   compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Number, Number, Number> block1(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    2244             :   compiler::CodeAssemblerParameterizedLabel<Context, JSReceiver, Number, Number, Number, Number> block10(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    2245             :     ca_.Goto(&block0, p_context, p_o, p_len, p_itemCount, p_actualStart, p_actualDeleteCount);
    2246             : 
    2247          56 :   if (block0.is_used()) {
    2248             :     compiler::TNode<Context> tmp0;
    2249             :     compiler::TNode<JSReceiver> tmp1;
    2250             :     compiler::TNode<Number> tmp2;
    2251             :     compiler::TNode<Number> tmp3;
    2252             :     compiler::TNode<Number> tmp4;
    2253             :     compiler::TNode<Number> tmp5;
    2254             :     ca_.Bind(&block0, &tmp0, &tmp1, &tmp2, &tmp3, &tmp4, &tmp5);
    2255          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 268);
    2256             :     compiler::TNode<Number> tmp6;
    2257             :     USE(tmp6);
    2258         224 :     tmp6 = ca_.UncheckedCast<Number>(CodeStubAssembler(state_).NumberSub(compiler::TNode<Number>{tmp2}, compiler::TNode<Number>{tmp5}));
    2259          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 271);
    2260             :     ca_.Goto(&block4, tmp0, tmp1, tmp2, tmp3, tmp4, tmp5, tmp6);
    2261             :   }
    2262             : 
    2263          56 :   if (block4.is_used()) {
    2264             :     compiler::TNode<Context> tmp7;
    2265             :     compiler::TNode<JSReceiver> tmp8;
    2266             :     compiler::TNode<Number> tmp9;
    2267             :     compiler::TNode<Number> tmp10;
    2268             :     compiler::TNode<Number> tmp11;
    2269             :     compiler::TNode<Number> tmp12;
    2270             :     compiler::TNode<Number> tmp13;
    2271             :     ca_.Bind(&block4, &tmp7, &tmp8, &tmp9, &tmp10, &tmp11, &tmp12, &tmp13);
    2272          56 :     compiler::CodeAssemblerLabel label0(&ca_);
    2273          56 :     compiler::CodeAssemblerLabel label1(&ca_);
    2274         112 :     CodeStubAssembler(state_).BranchIfNumberGreaterThan(compiler::TNode<Number>{tmp13}, compiler::TNode<Number>{tmp11}, &label0, &label1);
    2275          56 :     if (label0.is_used()) {
    2276          56 :       ca_.Bind(&label0);
    2277             :       ca_.Goto(&block5, tmp7, tmp8, tmp9, tmp10, tmp11, tmp12, tmp13, tmp13, tmp11);
    2278             :     }
    2279          56 :     if (label1.is_used()) {
    2280          56 :       ca_.Bind(&label1);
    2281             :       ca_.Goto(&block6, tmp7, tmp8, tmp9, tmp10, tmp11, tmp12, tmp13, tmp13, tmp11);
    2282             :     }
    2283             :   }
    2284             : 
    2285          56 :   if (block5.is_used()) {
    2286             :     compiler::TNode<Context> tmp14;
    2287             :     compiler::TNode<JSReceiver> tmp15;
    2288             :     compiler::TNode<Number> tmp16;
    2289             :     compiler::TNode<Number> tmp17;
    2290             :     compiler::TNode<Number> tmp18;
    2291             :     compiler::TNode<Number> tmp19;
    2292             :     compiler::TNode<Number> tmp20;
    2293             :     compiler::TNode<Number> tmp21;
    2294             :     compiler::TNode<Number> tmp22;
    2295             :     ca_.Bind(&block5, &tmp14, &tmp15, &tmp16, &tmp17, &tmp18, &tmp19, &tmp20, &tmp21, &tmp22);
    2296             :     ca_.Goto(&block2, tmp14, tmp15, tmp16, tmp17, tmp18, tmp19, tmp20);
    2297             :   }
    2298             : 
    2299          56 :   if (block6.is_used()) {
    2300             :     compiler::TNode<Context> tmp23;
    2301             :     compiler::TNode<JSReceiver> tmp24;
    2302             :     compiler::TNode<Number> tmp25;
    2303             :     compiler::TNode<Number> tmp26;
    2304             :     compiler::TNode<Number> tmp27;
    2305             :     compiler::TNode<Number> tmp28;
    2306             :     compiler::TNode<Number> tmp29;
    2307             :     compiler::TNode<Number> tmp30;
    2308             :     compiler::TNode<Number> tmp31;
    2309             :     ca_.Bind(&block6, &tmp23, &tmp24, &tmp25, &tmp26, &tmp27, &tmp28, &tmp29, &tmp30, &tmp31);
    2310             :     ca_.Goto(&block3, tmp23, tmp24, tmp25, tmp26, tmp27, tmp28, tmp29);
    2311             :   }
    2312             : 
    2313          56 :   if (block2.is_used()) {
    2314             :     compiler::TNode<Context> tmp32;
    2315             :     compiler::TNode<JSReceiver> tmp33;
    2316             :     compiler::TNode<Number> tmp34;
    2317             :     compiler::TNode<Number> tmp35;
    2318             :     compiler::TNode<Number> tmp36;
    2319             :     compiler::TNode<Number> tmp37;
    2320             :     compiler::TNode<Number> tmp38;
    2321             :     ca_.Bind(&block2, &tmp32, &tmp33, &tmp34, &tmp35, &tmp36, &tmp37, &tmp38);
    2322          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 273);
    2323             :     compiler::TNode<Number> tmp39;
    2324             :     USE(tmp39);
    2325         224 :     tmp39 = ca_.UncheckedCast<Number>(CodeStubAssembler(state_).NumberAdd(compiler::TNode<Number>{tmp38}, compiler::TNode<Number>{tmp37}));
    2326             :     compiler::TNode<Number> tmp40;
    2327             :     USE(tmp40);
    2328         168 :     tmp40 = ca_.UncheckedCast<Number>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr20UT5ATSmi10HeapNumber17ATconstexpr_int31(1));
    2329             :     compiler::TNode<Number> tmp41;
    2330             :     USE(tmp41);
    2331         112 :     tmp41 = ca_.UncheckedCast<Number>(CodeStubAssembler(state_).NumberSub(compiler::TNode<Number>{tmp39}, compiler::TNode<Number>{tmp40}));
    2332          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 276);
    2333             :     compiler::TNode<Number> tmp42;
    2334             :     USE(tmp42);
    2335         224 :     tmp42 = ca_.UncheckedCast<Number>(CodeStubAssembler(state_).NumberAdd(compiler::TNode<Number>{tmp38}, compiler::TNode<Number>{tmp35}));
    2336             :     compiler::TNode<Number> tmp43;
    2337             :     USE(tmp43);
    2338         168 :     tmp43 = ca_.UncheckedCast<Number>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr20UT5ATSmi10HeapNumber17ATconstexpr_int31(1));
    2339             :     compiler::TNode<Number> tmp44;
    2340             :     USE(tmp44);
    2341         112 :     tmp44 = ca_.UncheckedCast<Number>(CodeStubAssembler(state_).NumberSub(compiler::TNode<Number>{tmp42}, compiler::TNode<Number>{tmp43}));
    2342          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 279);
    2343             :     compiler::TNode<Oddball> tmp45;
    2344         112 :     tmp45 = TORQUE_CAST(CodeStubAssembler(state_).CallBuiltin(Builtins::kHasProperty, tmp32, tmp33, tmp41));
    2345             :     USE(tmp45);
    2346          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 282);
    2347             :     compiler::TNode<Oddball> tmp46;
    2348             :     USE(tmp46);
    2349         168 :     tmp46 = BaseBuiltinsFromDSLAssembler(state_).True();
    2350             :     compiler::TNode<BoolT> tmp47;
    2351             :     USE(tmp47);
    2352         112 :     tmp47 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).WordEqual(compiler::TNode<HeapObject>{tmp45}, compiler::TNode<HeapObject>{tmp46}));
    2353          56 :     ca_.Branch(tmp47, &block7, &block8, tmp32, tmp33, tmp34, tmp35, tmp36, tmp37, tmp38, tmp41, tmp44, tmp45);
    2354             :   }
    2355             : 
    2356          56 :   if (block7.is_used()) {
    2357             :     compiler::TNode<Context> tmp48;
    2358             :     compiler::TNode<JSReceiver> tmp49;
    2359             :     compiler::TNode<Number> tmp50;
    2360             :     compiler::TNode<Number> tmp51;
    2361             :     compiler::TNode<Number> tmp52;
    2362             :     compiler::TNode<Number> tmp53;
    2363             :     compiler::TNode<Number> tmp54;
    2364             :     compiler::TNode<Number> tmp55;
    2365             :     compiler::TNode<Number> tmp56;
    2366             :     compiler::TNode<Oddball> tmp57;
    2367             :     ca_.Bind(&block7, &tmp48, &tmp49, &tmp50, &tmp51, &tmp52, &tmp53, &tmp54, &tmp55, &tmp56, &tmp57);
    2368          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 284);
    2369             :     compiler::TNode<Object> tmp58;
    2370             :     USE(tmp58);
    2371         112 :     tmp58 = ca_.UncheckedCast<Object>(CodeStubAssembler(state_).GetProperty(compiler::TNode<Context>{tmp48}, compiler::TNode<Object>{tmp49}, compiler::TNode<Object>{tmp55}));
    2372          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 287);
    2373         112 :     CodeStubAssembler(state_).CallBuiltin(Builtins::kSetProperty, tmp48, tmp49, tmp56, tmp58);
    2374          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 282);
    2375             :     ca_.Goto(&block9, tmp48, tmp49, tmp50, tmp51, tmp52, tmp53, tmp54, tmp55, tmp56, tmp57);
    2376             :   }
    2377             : 
    2378          56 :   if (block8.is_used()) {
    2379             :     compiler::TNode<Context> tmp60;
    2380             :     compiler::TNode<JSReceiver> tmp61;
    2381             :     compiler::TNode<Number> tmp62;
    2382             :     compiler::TNode<Number> tmp63;
    2383             :     compiler::TNode<Number> tmp64;
    2384             :     compiler::TNode<Number> tmp65;
    2385             :     compiler::TNode<Number> tmp66;
    2386             :     compiler::TNode<Number> tmp67;
    2387             :     compiler::TNode<Number> tmp68;
    2388             :     compiler::TNode<Oddball> tmp69;
    2389             :     ca_.Bind(&block8, &tmp60, &tmp61, &tmp62, &tmp63, &tmp64, &tmp65, &tmp66, &tmp67, &tmp68, &tmp69);
    2390          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 292);
    2391             :     compiler::TNode<Smi> tmp70;
    2392             :     USE(tmp70);
    2393         168 :     tmp70 = ca_.UncheckedCast<Smi>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr14ATLanguageMode24ATconstexpr_LanguageMode(LanguageMode::kStrict));
    2394         112 :     CodeStubAssembler(state_).CallBuiltin(Builtins::kDeleteProperty, tmp60, tmp61, tmp68, tmp70);
    2395          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 282);
    2396             :     ca_.Goto(&block9, tmp60, tmp61, tmp62, tmp63, tmp64, tmp65, tmp66, tmp67, tmp68, tmp69);
    2397             :   }
    2398             : 
    2399          56 :   if (block9.is_used()) {
    2400             :     compiler::TNode<Context> tmp72;
    2401             :     compiler::TNode<JSReceiver> tmp73;
    2402             :     compiler::TNode<Number> tmp74;
    2403             :     compiler::TNode<Number> tmp75;
    2404             :     compiler::TNode<Number> tmp76;
    2405             :     compiler::TNode<Number> tmp77;
    2406             :     compiler::TNode<Number> tmp78;
    2407             :     compiler::TNode<Number> tmp79;
    2408             :     compiler::TNode<Number> tmp80;
    2409             :     compiler::TNode<Oddball> tmp81;
    2410             :     ca_.Bind(&block9, &tmp72, &tmp73, &tmp74, &tmp75, &tmp76, &tmp77, &tmp78, &tmp79, &tmp80, &tmp81);
    2411          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 296);
    2412             :     compiler::TNode<Number> tmp82;
    2413             :     USE(tmp82);
    2414         168 :     tmp82 = ca_.UncheckedCast<Number>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr20UT5ATSmi10HeapNumber17ATconstexpr_int31(1));
    2415             :     compiler::TNode<Number> tmp83;
    2416             :     USE(tmp83);
    2417         168 :     tmp83 = ca_.UncheckedCast<Number>(CodeStubAssembler(state_).NumberSub(compiler::TNode<Number>{tmp78}, compiler::TNode<Number>{tmp82}));
    2418          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 271);
    2419             :     ca_.Goto(&block4, tmp72, tmp73, tmp74, tmp75, tmp76, tmp77, tmp83);
    2420             :   }
    2421             : 
    2422          56 :   if (block3.is_used()) {
    2423             :     compiler::TNode<Context> tmp84;
    2424             :     compiler::TNode<JSReceiver> tmp85;
    2425             :     compiler::TNode<Number> tmp86;
    2426             :     compiler::TNode<Number> tmp87;
    2427             :     compiler::TNode<Number> tmp88;
    2428             :     compiler::TNode<Number> tmp89;
    2429             :     compiler::TNode<Number> tmp90;
    2430             :     ca_.Bind(&block3, &tmp84, &tmp85, &tmp86, &tmp87, &tmp88, &tmp89, &tmp90);
    2431          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 265);
    2432          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 263);
    2433             :     ca_.Goto(&block1, tmp84, tmp85, tmp86, tmp87, tmp88, tmp89);
    2434             :   }
    2435             : 
    2436          56 :   if (block1.is_used()) {
    2437             :     compiler::TNode<Context> tmp91;
    2438             :     compiler::TNode<JSReceiver> tmp92;
    2439             :     compiler::TNode<Number> tmp93;
    2440             :     compiler::TNode<Number> tmp94;
    2441             :     compiler::TNode<Number> tmp95;
    2442             :     compiler::TNode<Number> tmp96;
    2443             :     ca_.Bind(&block1, &tmp91, &tmp92, &tmp93, &tmp94, &tmp95, &tmp96);
    2444             :     ca_.Goto(&block10, tmp91, tmp92, tmp93, tmp94, tmp95, tmp96);
    2445             :   }
    2446             : 
    2447             :     compiler::TNode<Context> tmp97;
    2448             :     compiler::TNode<JSReceiver> tmp98;
    2449             :     compiler::TNode<Number> tmp99;
    2450             :     compiler::TNode<Number> tmp100;
    2451             :     compiler::TNode<Number> tmp101;
    2452             :     compiler::TNode<Number> tmp102;
    2453             :     ca_.Bind(&block10, &tmp97, &tmp98, &tmp99, &tmp100, &tmp101, &tmp102);
    2454          56 : }
    2455             : 
    2456          56 : compiler::TNode<Object> ArraySpliceBuiltinsFromDSLAssembler::SlowSplice(compiler::TNode<Context> p_context, BaseBuiltinsFromDSLAssembler::Arguments p_arguments, compiler::TNode<JSReceiver> p_o, compiler::TNode<Number> p_len, compiler::TNode<Number> p_actualStart, compiler::TNode<Smi> p_insertCount, compiler::TNode<Number> p_actualDeleteCount) {
    2457          56 :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    2458             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number, Number, JSReceiver, Number, Number, Number> block4(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    2459             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number, Number, JSReceiver, Number, Number, Number> block5(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    2460             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number, Number, JSReceiver, Number> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    2461             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number, Number, JSReceiver, Number> block3(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    2462             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number, Number, JSReceiver, Number, Number, Number> block9(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    2463             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number, Number, JSReceiver, Number, Number, Number> block10(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    2464             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number, Number, JSReceiver, Number> block7(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    2465             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number, Number, JSReceiver, Number> block8(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    2466             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number, Number, JSReceiver, Number> block6(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    2467             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number, Number, JSReceiver, Number, Number> block11(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    2468             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number, Number, JSReceiver, Number, Number, IntPtrT> block15(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    2469             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number, Number, JSReceiver, Number, Number, IntPtrT> block13(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    2470             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number, Number, JSReceiver, Number, Number, IntPtrT> block16(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    2471             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number, Number, JSReceiver, Number, Number, IntPtrT> block14(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    2472             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number, Number, JSReceiver, Number, Number> block12(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    2473             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number, Object> block1(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    2474             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number, Object> block17(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    2475             :     ca_.Goto(&block0, p_context, p_arguments.frame, p_arguments.base, p_arguments.length, p_o, p_len, p_actualStart, p_insertCount, p_actualDeleteCount);
    2476             : 
    2477          56 :   if (block0.is_used()) {
    2478             :     compiler::TNode<Context> tmp0;
    2479             :     compiler::TNode<RawPtrT> tmp1;
    2480             :     compiler::TNode<RawPtrT> tmp2;
    2481             :     compiler::TNode<IntPtrT> tmp3;
    2482             :     compiler::TNode<JSReceiver> tmp4;
    2483             :     compiler::TNode<Number> tmp5;
    2484             :     compiler::TNode<Number> tmp6;
    2485             :     compiler::TNode<Smi> tmp7;
    2486             :     compiler::TNode<Number> tmp8;
    2487             :     ca_.Bind(&block0, &tmp0, &tmp1, &tmp2, &tmp3, &tmp4, &tmp5, &tmp6, &tmp7, &tmp8);
    2488          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 304);
    2489             :     compiler::TNode<Number> tmp9;
    2490             :     USE(tmp9);
    2491         224 :     tmp9 = ca_.UncheckedCast<Number>(CodeStubAssembler(state_).NumberSub(compiler::TNode<Number>{tmp5}, compiler::TNode<Number>{tmp6}));
    2492             :     compiler::TNode<Number> tmp10;
    2493             :     USE(tmp10);
    2494         168 :     tmp10 = ca_.UncheckedCast<Number>(CodeStubAssembler(state_).NumberSub(compiler::TNode<Number>{tmp9}, compiler::TNode<Number>{tmp8}));
    2495          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 307);
    2496             :     compiler::TNode<JSReceiver> tmp11;
    2497             :     USE(tmp11);
    2498         112 :     tmp11 = ca_.UncheckedCast<JSReceiver>(CodeStubAssembler(state_).ArraySpeciesCreate(compiler::TNode<Context>{tmp0}, compiler::TNode<Object>{tmp4}, compiler::TNode<Number>{tmp8}));
    2499          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 308);
    2500          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 311);
    2501             :     compiler::TNode<Object> tmp12;
    2502             :     USE(tmp12);
    2503         168 :     tmp12 = ca_.UncheckedCast<Object>(ArraySpliceBuiltinsFromDSLAssembler(state_).FillDeletedElementsArray(compiler::TNode<Context>{tmp0}, compiler::TNode<JSReceiver>{tmp4}, compiler::TNode<Number>{tmp6}, compiler::TNode<Number>{tmp8}, compiler::TNode<JSReceiver>{tmp11}));
    2504          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 321);
    2505          56 :     compiler::CodeAssemblerLabel label0(&ca_);
    2506          56 :     compiler::CodeAssemblerLabel label1(&ca_);
    2507         112 :     CodeStubAssembler(state_).BranchIfNumberLessThan(compiler::TNode<Number>{tmp7}, compiler::TNode<Number>{tmp8}, &label0, &label1);
    2508          56 :     if (label0.is_used()) {
    2509          56 :       ca_.Bind(&label0);
    2510             :       ca_.Goto(&block4, tmp0, tmp1, tmp2, tmp3, tmp4, tmp5, tmp6, tmp7, tmp8, tmp10, tmp11, tmp7, tmp7, tmp8);
    2511             :     }
    2512          56 :     if (label1.is_used()) {
    2513          56 :       ca_.Bind(&label1);
    2514             :       ca_.Goto(&block5, tmp0, tmp1, tmp2, tmp3, tmp4, tmp5, tmp6, tmp7, tmp8, tmp10, tmp11, tmp7, tmp7, tmp8);
    2515             :     }
    2516             :   }
    2517             : 
    2518          56 :   if (block4.is_used()) {
    2519             :     compiler::TNode<Context> tmp13;
    2520             :     compiler::TNode<RawPtrT> tmp14;
    2521             :     compiler::TNode<RawPtrT> tmp15;
    2522             :     compiler::TNode<IntPtrT> tmp16;
    2523             :     compiler::TNode<JSReceiver> tmp17;
    2524             :     compiler::TNode<Number> tmp18;
    2525             :     compiler::TNode<Number> tmp19;
    2526             :     compiler::TNode<Smi> tmp20;
    2527             :     compiler::TNode<Number> tmp21;
    2528             :     compiler::TNode<Number> tmp22;
    2529             :     compiler::TNode<JSReceiver> tmp23;
    2530             :     compiler::TNode<Number> tmp24;
    2531             :     compiler::TNode<Number> tmp25;
    2532             :     compiler::TNode<Number> tmp26;
    2533             :     ca_.Bind(&block4, &tmp13, &tmp14, &tmp15, &tmp16, &tmp17, &tmp18, &tmp19, &tmp20, &tmp21, &tmp22, &tmp23, &tmp24, &tmp25, &tmp26);
    2534             :     ca_.Goto(&block2, tmp13, tmp14, tmp15, tmp16, tmp17, tmp18, tmp19, tmp20, tmp21, tmp22, tmp23, tmp24);
    2535             :   }
    2536             : 
    2537          56 :   if (block5.is_used()) {
    2538             :     compiler::TNode<Context> tmp27;
    2539             :     compiler::TNode<RawPtrT> tmp28;
    2540             :     compiler::TNode<RawPtrT> tmp29;
    2541             :     compiler::TNode<IntPtrT> tmp30;
    2542             :     compiler::TNode<JSReceiver> tmp31;
    2543             :     compiler::TNode<Number> tmp32;
    2544             :     compiler::TNode<Number> tmp33;
    2545             :     compiler::TNode<Smi> tmp34;
    2546             :     compiler::TNode<Number> tmp35;
    2547             :     compiler::TNode<Number> tmp36;
    2548             :     compiler::TNode<JSReceiver> tmp37;
    2549             :     compiler::TNode<Number> tmp38;
    2550             :     compiler::TNode<Number> tmp39;
    2551             :     compiler::TNode<Number> tmp40;
    2552             :     ca_.Bind(&block5, &tmp27, &tmp28, &tmp29, &tmp30, &tmp31, &tmp32, &tmp33, &tmp34, &tmp35, &tmp36, &tmp37, &tmp38, &tmp39, &tmp40);
    2553             :     ca_.Goto(&block3, tmp27, tmp28, tmp29, tmp30, tmp31, tmp32, tmp33, tmp34, tmp35, tmp36, tmp37, tmp38);
    2554             :   }
    2555             : 
    2556          56 :   if (block2.is_used()) {
    2557             :     compiler::TNode<Context> tmp41;
    2558             :     compiler::TNode<RawPtrT> tmp42;
    2559             :     compiler::TNode<RawPtrT> tmp43;
    2560             :     compiler::TNode<IntPtrT> tmp44;
    2561             :     compiler::TNode<JSReceiver> tmp45;
    2562             :     compiler::TNode<Number> tmp46;
    2563             :     compiler::TNode<Number> tmp47;
    2564             :     compiler::TNode<Smi> tmp48;
    2565             :     compiler::TNode<Number> tmp49;
    2566             :     compiler::TNode<Number> tmp50;
    2567             :     compiler::TNode<JSReceiver> tmp51;
    2568             :     compiler::TNode<Number> tmp52;
    2569             :     ca_.Bind(&block2, &tmp41, &tmp42, &tmp43, &tmp44, &tmp45, &tmp46, &tmp47, &tmp48, &tmp49, &tmp50, &tmp51, &tmp52);
    2570          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 323);
    2571          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 322);
    2572         168 :     ArraySpliceBuiltinsFromDSLAssembler(state_).HandleForwardCase(compiler::TNode<Context>{tmp41}, compiler::TNode<JSReceiver>{tmp45}, compiler::TNode<Number>{tmp46}, compiler::TNode<Number>{tmp52}, compiler::TNode<Number>{tmp47}, compiler::TNode<Number>{tmp49});
    2573          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 321);
    2574             :     ca_.Goto(&block6, tmp41, tmp42, tmp43, tmp44, tmp45, tmp46, tmp47, tmp48, tmp49, tmp50, tmp51, tmp52);
    2575             :   }
    2576             : 
    2577          56 :   if (block3.is_used()) {
    2578             :     compiler::TNode<Context> tmp53;
    2579             :     compiler::TNode<RawPtrT> tmp54;
    2580             :     compiler::TNode<RawPtrT> tmp55;
    2581             :     compiler::TNode<IntPtrT> tmp56;
    2582             :     compiler::TNode<JSReceiver> tmp57;
    2583             :     compiler::TNode<Number> tmp58;
    2584             :     compiler::TNode<Number> tmp59;
    2585             :     compiler::TNode<Smi> tmp60;
    2586             :     compiler::TNode<Number> tmp61;
    2587             :     compiler::TNode<Number> tmp62;
    2588             :     compiler::TNode<JSReceiver> tmp63;
    2589             :     compiler::TNode<Number> tmp64;
    2590             :     ca_.Bind(&block3, &tmp53, &tmp54, &tmp55, &tmp56, &tmp57, &tmp58, &tmp59, &tmp60, &tmp61, &tmp62, &tmp63, &tmp64);
    2591          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 325);
    2592          56 :     compiler::CodeAssemblerLabel label0(&ca_);
    2593          56 :     compiler::CodeAssemblerLabel label1(&ca_);
    2594         112 :     CodeStubAssembler(state_).BranchIfNumberGreaterThan(compiler::TNode<Number>{tmp64}, compiler::TNode<Number>{tmp61}, &label0, &label1);
    2595          56 :     if (label0.is_used()) {
    2596          56 :       ca_.Bind(&label0);
    2597             :       ca_.Goto(&block9, tmp53, tmp54, tmp55, tmp56, tmp57, tmp58, tmp59, tmp60, tmp61, tmp62, tmp63, tmp64, tmp64, tmp61);
    2598             :     }
    2599          56 :     if (label1.is_used()) {
    2600          56 :       ca_.Bind(&label1);
    2601             :       ca_.Goto(&block10, tmp53, tmp54, tmp55, tmp56, tmp57, tmp58, tmp59, tmp60, tmp61, tmp62, tmp63, tmp64, tmp64, tmp61);
    2602             :     }
    2603             :   }
    2604             : 
    2605          56 :   if (block9.is_used()) {
    2606             :     compiler::TNode<Context> tmp65;
    2607             :     compiler::TNode<RawPtrT> tmp66;
    2608             :     compiler::TNode<RawPtrT> tmp67;
    2609             :     compiler::TNode<IntPtrT> tmp68;
    2610             :     compiler::TNode<JSReceiver> tmp69;
    2611             :     compiler::TNode<Number> tmp70;
    2612             :     compiler::TNode<Number> tmp71;
    2613             :     compiler::TNode<Smi> tmp72;
    2614             :     compiler::TNode<Number> tmp73;
    2615             :     compiler::TNode<Number> tmp74;
    2616             :     compiler::TNode<JSReceiver> tmp75;
    2617             :     compiler::TNode<Number> tmp76;
    2618             :     compiler::TNode<Number> tmp77;
    2619             :     compiler::TNode<Number> tmp78;
    2620             :     ca_.Bind(&block9, &tmp65, &tmp66, &tmp67, &tmp68, &tmp69, &tmp70, &tmp71, &tmp72, &tmp73, &tmp74, &tmp75, &tmp76, &tmp77, &tmp78);
    2621             :     ca_.Goto(&block7, tmp65, tmp66, tmp67, tmp68, tmp69, tmp70, tmp71, tmp72, tmp73, tmp74, tmp75, tmp76);
    2622             :   }
    2623             : 
    2624          56 :   if (block10.is_used()) {
    2625             :     compiler::TNode<Context> tmp79;
    2626             :     compiler::TNode<RawPtrT> tmp80;
    2627             :     compiler::TNode<RawPtrT> tmp81;
    2628             :     compiler::TNode<IntPtrT> tmp82;
    2629             :     compiler::TNode<JSReceiver> tmp83;
    2630             :     compiler::TNode<Number> tmp84;
    2631             :     compiler::TNode<Number> tmp85;
    2632             :     compiler::TNode<Smi> tmp86;
    2633             :     compiler::TNode<Number> tmp87;
    2634             :     compiler::TNode<Number> tmp88;
    2635             :     compiler::TNode<JSReceiver> tmp89;
    2636             :     compiler::TNode<Number> tmp90;
    2637             :     compiler::TNode<Number> tmp91;
    2638             :     compiler::TNode<Number> tmp92;
    2639             :     ca_.Bind(&block10, &tmp79, &tmp80, &tmp81, &tmp82, &tmp83, &tmp84, &tmp85, &tmp86, &tmp87, &tmp88, &tmp89, &tmp90, &tmp91, &tmp92);
    2640             :     ca_.Goto(&block8, tmp79, tmp80, tmp81, tmp82, tmp83, tmp84, tmp85, tmp86, tmp87, tmp88, tmp89, tmp90);
    2641             :   }
    2642             : 
    2643          56 :   if (block7.is_used()) {
    2644             :     compiler::TNode<Context> tmp93;
    2645             :     compiler::TNode<RawPtrT> tmp94;
    2646             :     compiler::TNode<RawPtrT> tmp95;
    2647             :     compiler::TNode<IntPtrT> tmp96;
    2648             :     compiler::TNode<JSReceiver> tmp97;
    2649             :     compiler::TNode<Number> tmp98;
    2650             :     compiler::TNode<Number> tmp99;
    2651             :     compiler::TNode<Smi> tmp100;
    2652             :     compiler::TNode<Number> tmp101;
    2653             :     compiler::TNode<Number> tmp102;
    2654             :     compiler::TNode<JSReceiver> tmp103;
    2655             :     compiler::TNode<Number> tmp104;
    2656             :     ca_.Bind(&block7, &tmp93, &tmp94, &tmp95, &tmp96, &tmp97, &tmp98, &tmp99, &tmp100, &tmp101, &tmp102, &tmp103, &tmp104);
    2657          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 327);
    2658          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 326);
    2659         168 :     ArraySpliceBuiltinsFromDSLAssembler(state_).HandleBackwardCase(compiler::TNode<Context>{tmp93}, compiler::TNode<JSReceiver>{tmp97}, compiler::TNode<Number>{tmp98}, compiler::TNode<Number>{tmp104}, compiler::TNode<Number>{tmp99}, compiler::TNode<Number>{tmp101});
    2660          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 325);
    2661             :     ca_.Goto(&block8, tmp93, tmp94, tmp95, tmp96, tmp97, tmp98, tmp99, tmp100, tmp101, tmp102, tmp103, tmp104);
    2662             :   }
    2663             : 
    2664          56 :   if (block8.is_used()) {
    2665             :     compiler::TNode<Context> tmp105;
    2666             :     compiler::TNode<RawPtrT> tmp106;
    2667             :     compiler::TNode<RawPtrT> tmp107;
    2668             :     compiler::TNode<IntPtrT> tmp108;
    2669             :     compiler::TNode<JSReceiver> tmp109;
    2670             :     compiler::TNode<Number> tmp110;
    2671             :     compiler::TNode<Number> tmp111;
    2672             :     compiler::TNode<Smi> tmp112;
    2673             :     compiler::TNode<Number> tmp113;
    2674             :     compiler::TNode<Number> tmp114;
    2675             :     compiler::TNode<JSReceiver> tmp115;
    2676             :     compiler::TNode<Number> tmp116;
    2677             :     ca_.Bind(&block8, &tmp105, &tmp106, &tmp107, &tmp108, &tmp109, &tmp110, &tmp111, &tmp112, &tmp113, &tmp114, &tmp115, &tmp116);
    2678          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 321);
    2679             :     ca_.Goto(&block6, tmp105, tmp106, tmp107, tmp108, tmp109, tmp110, tmp111, tmp112, tmp113, tmp114, tmp115, tmp116);
    2680             :   }
    2681             : 
    2682          56 :   if (block6.is_used()) {
    2683             :     compiler::TNode<Context> tmp117;
    2684             :     compiler::TNode<RawPtrT> tmp118;
    2685             :     compiler::TNode<RawPtrT> tmp119;
    2686             :     compiler::TNode<IntPtrT> tmp120;
    2687             :     compiler::TNode<JSReceiver> tmp121;
    2688             :     compiler::TNode<Number> tmp122;
    2689             :     compiler::TNode<Number> tmp123;
    2690             :     compiler::TNode<Smi> tmp124;
    2691             :     compiler::TNode<Number> tmp125;
    2692             :     compiler::TNode<Number> tmp126;
    2693             :     compiler::TNode<JSReceiver> tmp127;
    2694             :     compiler::TNode<Number> tmp128;
    2695             :     ca_.Bind(&block6, &tmp117, &tmp118, &tmp119, &tmp120, &tmp121, &tmp122, &tmp123, &tmp124, &tmp125, &tmp126, &tmp127, &tmp128);
    2696          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 331);
    2697          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 336);
    2698             :     compiler::TNode<IntPtrT> tmp129;
    2699             :     USE(tmp129);
    2700         168 :     tmp129 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATintptr17ATconstexpr_int31(2));
    2701             :     compiler::TNode<BoolT> tmp130;
    2702             :     USE(tmp130);
    2703         168 :     tmp130 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).IntPtrGreaterThan(compiler::TNode<IntPtrT>{tmp120}, compiler::TNode<IntPtrT>{tmp129}));
    2704          56 :     ca_.Branch(tmp130, &block11, &block12, tmp117, tmp118, tmp119, tmp120, tmp121, tmp122, tmp123, tmp124, tmp125, tmp126, tmp127, tmp128, tmp123);
    2705             :   }
    2706             : 
    2707          56 :   if (block11.is_used()) {
    2708             :     compiler::TNode<Context> tmp131;
    2709             :     compiler::TNode<RawPtrT> tmp132;
    2710             :     compiler::TNode<RawPtrT> tmp133;
    2711             :     compiler::TNode<IntPtrT> tmp134;
    2712             :     compiler::TNode<JSReceiver> tmp135;
    2713             :     compiler::TNode<Number> tmp136;
    2714             :     compiler::TNode<Number> tmp137;
    2715             :     compiler::TNode<Smi> tmp138;
    2716             :     compiler::TNode<Number> tmp139;
    2717             :     compiler::TNode<Number> tmp140;
    2718             :     compiler::TNode<JSReceiver> tmp141;
    2719             :     compiler::TNode<Number> tmp142;
    2720             :     compiler::TNode<Number> tmp143;
    2721             :     ca_.Bind(&block11, &tmp131, &tmp132, &tmp133, &tmp134, &tmp135, &tmp136, &tmp137, &tmp138, &tmp139, &tmp140, &tmp141, &tmp142, &tmp143);
    2722          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 337);
    2723             :     compiler::TNode<IntPtrT> tmp144;
    2724             :     USE(tmp144);
    2725         168 :     tmp144 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATintptr17ATconstexpr_int31(2));
    2726             :     ca_.Goto(&block15, tmp131, tmp132, tmp133, tmp134, tmp135, tmp136, tmp137, tmp138, tmp139, tmp140, tmp141, tmp142, tmp143, tmp144);
    2727             :   }
    2728             : 
    2729          56 :   if (block15.is_used()) {
    2730             :     compiler::TNode<Context> tmp145;
    2731             :     compiler::TNode<RawPtrT> tmp146;
    2732             :     compiler::TNode<RawPtrT> tmp147;
    2733             :     compiler::TNode<IntPtrT> tmp148;
    2734             :     compiler::TNode<JSReceiver> tmp149;
    2735             :     compiler::TNode<Number> tmp150;
    2736             :     compiler::TNode<Number> tmp151;
    2737             :     compiler::TNode<Smi> tmp152;
    2738             :     compiler::TNode<Number> tmp153;
    2739             :     compiler::TNode<Number> tmp154;
    2740             :     compiler::TNode<JSReceiver> tmp155;
    2741             :     compiler::TNode<Number> tmp156;
    2742             :     compiler::TNode<Number> tmp157;
    2743             :     compiler::TNode<IntPtrT> tmp158;
    2744             :     ca_.Bind(&block15, &tmp145, &tmp146, &tmp147, &tmp148, &tmp149, &tmp150, &tmp151, &tmp152, &tmp153, &tmp154, &tmp155, &tmp156, &tmp157, &tmp158);
    2745             :     compiler::TNode<BoolT> tmp159;
    2746             :     USE(tmp159);
    2747         224 :     tmp159 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).IntPtrLessThan(compiler::TNode<IntPtrT>{tmp158}, compiler::TNode<IntPtrT>{tmp148}));
    2748          56 :     ca_.Branch(tmp159, &block13, &block14, tmp145, tmp146, tmp147, tmp148, tmp149, tmp150, tmp151, tmp152, tmp153, tmp154, tmp155, tmp156, tmp157, tmp158);
    2749             :   }
    2750             : 
    2751          56 :   if (block13.is_used()) {
    2752             :     compiler::TNode<Context> tmp160;
    2753             :     compiler::TNode<RawPtrT> tmp161;
    2754             :     compiler::TNode<RawPtrT> tmp162;
    2755             :     compiler::TNode<IntPtrT> tmp163;
    2756             :     compiler::TNode<JSReceiver> tmp164;
    2757             :     compiler::TNode<Number> tmp165;
    2758             :     compiler::TNode<Number> tmp166;
    2759             :     compiler::TNode<Smi> tmp167;
    2760             :     compiler::TNode<Number> tmp168;
    2761             :     compiler::TNode<Number> tmp169;
    2762             :     compiler::TNode<JSReceiver> tmp170;
    2763             :     compiler::TNode<Number> tmp171;
    2764             :     compiler::TNode<Number> tmp172;
    2765             :     compiler::TNode<IntPtrT> tmp173;
    2766             :     ca_.Bind(&block13, &tmp160, &tmp161, &tmp162, &tmp163, &tmp164, &tmp165, &tmp166, &tmp167, &tmp168, &tmp169, &tmp170, &tmp171, &tmp172, &tmp173);
    2767          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 338);
    2768             :     compiler::TNode<Object> tmp174;
    2769             :     USE(tmp174);
    2770         112 :     tmp174 = ca_.UncheckedCast<Object>(CodeStubAssembler(state_).GetArgumentValue(BaseBuiltinsFromDSLAssembler::Arguments{compiler::TNode<RawPtrT>{tmp161}, compiler::TNode<RawPtrT>{tmp162}, compiler::TNode<IntPtrT>{tmp163}}, compiler::TNode<IntPtrT>{tmp173}));
    2771          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 340);
    2772         112 :     CodeStubAssembler(state_).CallBuiltin(Builtins::kSetProperty, tmp160, tmp164, tmp172, tmp174);
    2773          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 343);
    2774             :     compiler::TNode<Number> tmp176;
    2775             :     USE(tmp176);
    2776         168 :     tmp176 = ca_.UncheckedCast<Number>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr20UT5ATSmi10HeapNumber17ATconstexpr_int31(1));
    2777             :     compiler::TNode<Number> tmp177;
    2778             :     USE(tmp177);
    2779         168 :     tmp177 = ca_.UncheckedCast<Number>(CodeStubAssembler(state_).NumberAdd(compiler::TNode<Number>{tmp172}, compiler::TNode<Number>{tmp176}));
    2780          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 337);
    2781             :     ca_.Goto(&block16, tmp160, tmp161, tmp162, tmp163, tmp164, tmp165, tmp166, tmp167, tmp168, tmp169, tmp170, tmp171, tmp177, tmp173);
    2782             :   }
    2783             : 
    2784          56 :   if (block16.is_used()) {
    2785             :     compiler::TNode<Context> tmp178;
    2786             :     compiler::TNode<RawPtrT> tmp179;
    2787             :     compiler::TNode<RawPtrT> tmp180;
    2788             :     compiler::TNode<IntPtrT> tmp181;
    2789             :     compiler::TNode<JSReceiver> tmp182;
    2790             :     compiler::TNode<Number> tmp183;
    2791             :     compiler::TNode<Number> tmp184;
    2792             :     compiler::TNode<Smi> tmp185;
    2793             :     compiler::TNode<Number> tmp186;
    2794             :     compiler::TNode<Number> tmp187;
    2795             :     compiler::TNode<JSReceiver> tmp188;
    2796             :     compiler::TNode<Number> tmp189;
    2797             :     compiler::TNode<Number> tmp190;
    2798             :     compiler::TNode<IntPtrT> tmp191;
    2799             :     ca_.Bind(&block16, &tmp178, &tmp179, &tmp180, &tmp181, &tmp182, &tmp183, &tmp184, &tmp185, &tmp186, &tmp187, &tmp188, &tmp189, &tmp190, &tmp191);
    2800             :     compiler::TNode<IntPtrT> tmp192;
    2801             :     USE(tmp192);
    2802         168 :     tmp192 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATintptr17ATconstexpr_int31(1));
    2803             :     compiler::TNode<IntPtrT> tmp193;
    2804             :     USE(tmp193);
    2805         112 :     tmp193 = ca_.UncheckedCast<IntPtrT>(CodeStubAssembler(state_).IntPtrAdd(compiler::TNode<IntPtrT>{tmp191}, compiler::TNode<IntPtrT>{tmp192}));
    2806             :     ca_.Goto(&block15, tmp178, tmp179, tmp180, tmp181, tmp182, tmp183, tmp184, tmp185, tmp186, tmp187, tmp188, tmp189, tmp190, tmp193);
    2807             :   }
    2808             : 
    2809          56 :   if (block14.is_used()) {
    2810             :     compiler::TNode<Context> tmp194;
    2811             :     compiler::TNode<RawPtrT> tmp195;
    2812             :     compiler::TNode<RawPtrT> tmp196;
    2813             :     compiler::TNode<IntPtrT> tmp197;
    2814             :     compiler::TNode<JSReceiver> tmp198;
    2815             :     compiler::TNode<Number> tmp199;
    2816             :     compiler::TNode<Number> tmp200;
    2817             :     compiler::TNode<Smi> tmp201;
    2818             :     compiler::TNode<Number> tmp202;
    2819             :     compiler::TNode<Number> tmp203;
    2820             :     compiler::TNode<JSReceiver> tmp204;
    2821             :     compiler::TNode<Number> tmp205;
    2822             :     compiler::TNode<Number> tmp206;
    2823             :     compiler::TNode<IntPtrT> tmp207;
    2824             :     ca_.Bind(&block14, &tmp194, &tmp195, &tmp196, &tmp197, &tmp198, &tmp199, &tmp200, &tmp201, &tmp202, &tmp203, &tmp204, &tmp205, &tmp206, &tmp207);
    2825          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 336);
    2826             :     ca_.Goto(&block12, tmp194, tmp195, tmp196, tmp197, tmp198, tmp199, tmp200, tmp201, tmp202, tmp203, tmp204, tmp205, tmp206);
    2827             :   }
    2828             : 
    2829          56 :   if (block12.is_used()) {
    2830             :     compiler::TNode<Context> tmp208;
    2831             :     compiler::TNode<RawPtrT> tmp209;
    2832             :     compiler::TNode<RawPtrT> tmp210;
    2833             :     compiler::TNode<IntPtrT> tmp211;
    2834             :     compiler::TNode<JSReceiver> tmp212;
    2835             :     compiler::TNode<Number> tmp213;
    2836             :     compiler::TNode<Number> tmp214;
    2837             :     compiler::TNode<Smi> tmp215;
    2838             :     compiler::TNode<Number> tmp216;
    2839             :     compiler::TNode<Number> tmp217;
    2840             :     compiler::TNode<JSReceiver> tmp218;
    2841             :     compiler::TNode<Number> tmp219;
    2842             :     compiler::TNode<Number> tmp220;
    2843             :     ca_.Bind(&block12, &tmp208, &tmp209, &tmp210, &tmp211, &tmp212, &tmp213, &tmp214, &tmp215, &tmp216, &tmp217, &tmp218, &tmp219, &tmp220);
    2844          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 349);
    2845             :     compiler::TNode<String> tmp221;
    2846             :     USE(tmp221);
    2847         168 :     tmp221 = BaseBuiltinsFromDSLAssembler(state_).kLengthString();
    2848             :     compiler::TNode<Number> tmp222;
    2849             :     USE(tmp222);
    2850         224 :     tmp222 = ca_.UncheckedCast<Number>(CodeStubAssembler(state_).NumberSub(compiler::TNode<Number>{tmp213}, compiler::TNode<Number>{tmp216}));
    2851             :     compiler::TNode<Number> tmp223;
    2852             :     USE(tmp223);
    2853         168 :     tmp223 = ca_.UncheckedCast<Number>(CodeStubAssembler(state_).NumberAdd(compiler::TNode<Number>{tmp222}, compiler::TNode<Number>{tmp219}));
    2854         112 :     CodeStubAssembler(state_).CallBuiltin(Builtins::kSetProperty, tmp208, tmp212, tmp221, tmp223);
    2855          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 351);
    2856             :     ca_.Goto(&block1, tmp208, tmp209, tmp210, tmp211, tmp212, tmp213, tmp214, tmp215, tmp216, tmp218);
    2857             :   }
    2858             : 
    2859          56 :   if (block1.is_used()) {
    2860             :     compiler::TNode<Context> tmp225;
    2861             :     compiler::TNode<RawPtrT> tmp226;
    2862             :     compiler::TNode<RawPtrT> tmp227;
    2863             :     compiler::TNode<IntPtrT> tmp228;
    2864             :     compiler::TNode<JSReceiver> tmp229;
    2865             :     compiler::TNode<Number> tmp230;
    2866             :     compiler::TNode<Number> tmp231;
    2867             :     compiler::TNode<Smi> tmp232;
    2868             :     compiler::TNode<Number> tmp233;
    2869             :     compiler::TNode<Object> tmp234;
    2870             :     ca_.Bind(&block1, &tmp225, &tmp226, &tmp227, &tmp228, &tmp229, &tmp230, &tmp231, &tmp232, &tmp233, &tmp234);
    2871          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 300);
    2872             :     ca_.Goto(&block17, tmp225, tmp226, tmp227, tmp228, tmp229, tmp230, tmp231, tmp232, tmp233, tmp234);
    2873             :   }
    2874             : 
    2875             :     compiler::TNode<Context> tmp235;
    2876             :     compiler::TNode<RawPtrT> tmp236;
    2877             :     compiler::TNode<RawPtrT> tmp237;
    2878             :     compiler::TNode<IntPtrT> tmp238;
    2879             :     compiler::TNode<JSReceiver> tmp239;
    2880             :     compiler::TNode<Number> tmp240;
    2881             :     compiler::TNode<Number> tmp241;
    2882             :     compiler::TNode<Smi> tmp242;
    2883             :     compiler::TNode<Number> tmp243;
    2884             :     compiler::TNode<Object> tmp244;
    2885             :     ca_.Bind(&block17, &tmp235, &tmp236, &tmp237, &tmp238, &tmp239, &tmp240, &tmp241, &tmp242, &tmp243, &tmp244);
    2886         112 :   return compiler::TNode<Object>{tmp244};
    2887             : }
    2888             : 
    2889         224 : TF_BUILTIN(ArrayPrototypeSplice, CodeStubAssembler) {
    2890          56 :   compiler::CodeAssemblerState* state_ = state();  compiler::CodeAssembler ca_(state());
    2891             :   TNode<Context> parameter0 = UncheckedCast<Context>(Parameter(Descriptor::kContext));
    2892             :   USE(parameter0);
    2893             :   Node* argc = Parameter(Descriptor::kJSActualArgumentsCount);
    2894          56 :   TNode<IntPtrT> arguments_length(ChangeInt32ToIntPtr(argc));
    2895          56 :   TNode<RawPtrT> arguments_frame = UncheckedCast<RawPtrT>(LoadFramePointer());
    2896          56 :   BaseBuiltinsFromDSLAssembler::Arguments torque_arguments(GetFrameArguments(arguments_frame, arguments_length));
    2897             :   CodeStubArguments arguments(this, torque_arguments);
    2898          56 :   TNode<Object> parameter1 = arguments.GetReceiver();
    2899             : USE(parameter1);
    2900             :   compiler::CodeAssemblerParameterizedLabel<Context, Object, RawPtrT, RawPtrT, IntPtrT> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    2901             :   compiler::CodeAssemblerParameterizedLabel<Context, Object, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Object, Number, Number> block5(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    2902             :   compiler::CodeAssemblerParameterizedLabel<Context, Object, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Object, Number, Number> block6(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    2903             :   compiler::CodeAssemblerParameterizedLabel<Context, Object, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Object, Number> block1(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    2904             :   compiler::CodeAssemblerParameterizedLabel<Context, Object, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Object, Number> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    2905             :   compiler::CodeAssemblerParameterizedLabel<Context, Object, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Object, Number, Number> block4(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    2906             :   compiler::CodeAssemblerParameterizedLabel<Context, Object, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Object, Number, Number> block3(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    2907             :   compiler::CodeAssemblerParameterizedLabel<Context, Object, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Object, Number, Number, Smi, Number> block7(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    2908             :   compiler::CodeAssemblerParameterizedLabel<Context, Object, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Object, Number, Number, Smi, Number> block8(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    2909             :   compiler::CodeAssemblerParameterizedLabel<Context, Object, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Object, Number, Number, Smi, Number> block10(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    2910             :   compiler::CodeAssemblerParameterizedLabel<Context, Object, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Object, Number, Number, Smi, Number> block11(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    2911             :   compiler::CodeAssemblerParameterizedLabel<Context, Object, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Object, Number, Number, Smi, Number> block12(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    2912             :   compiler::CodeAssemblerParameterizedLabel<Context, Object, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Object, Number, Number, Smi, Number> block9(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    2913             :   compiler::CodeAssemblerParameterizedLabel<Context, Object, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Object, Number, Number, Smi, Number, Number, Number> block15(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    2914             :   compiler::CodeAssemblerParameterizedLabel<Context, Object, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Object, Number, Number, Smi, Number, Number, Number> block16(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    2915             :   compiler::CodeAssemblerParameterizedLabel<Context, Object, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Object, Number, Number, Smi, Number, Number> block13(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    2916             :   compiler::CodeAssemblerParameterizedLabel<Context, Object, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Object, Number, Number, Smi, Number, Number> block14(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    2917             :   compiler::CodeAssemblerParameterizedLabel<Context, Object, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Object, Number, Number, Smi, Number, Number, Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number> block20(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    2918             :   compiler::CodeAssemblerParameterizedLabel<Context, Object, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Object, Number, Number, Smi, Number, Number, Context, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Number, Smi, Number, Object> block19(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    2919             :   compiler::CodeAssemblerParameterizedLabel<Context, Object, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Object, Number, Number, Smi, Number, Number> block18(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    2920             :   compiler::CodeAssemblerParameterizedLabel<Context, Object, RawPtrT, RawPtrT, IntPtrT, JSReceiver, Number, Object, Number, Number, Smi, Number, Number> block17(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    2921             :     ca_.Goto(&block0, parameter0, parameter1, torque_arguments.frame, torque_arguments.base, torque_arguments.length);
    2922             : 
    2923          56 :   if (block0.is_used()) {
    2924             :     compiler::TNode<Context> tmp0;
    2925             :     compiler::TNode<Object> tmp1;
    2926             :     compiler::TNode<RawPtrT> tmp2;
    2927             :     compiler::TNode<RawPtrT> tmp3;
    2928             :     compiler::TNode<IntPtrT> tmp4;
    2929             :     ca_.Bind(&block0, &tmp0, &tmp1, &tmp2, &tmp3, &tmp4);
    2930          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 359);
    2931             :     compiler::TNode<JSReceiver> tmp5;
    2932         112 :     tmp5 = TORQUE_CAST(CodeStubAssembler(state_).CallBuiltin(Builtins::kToObject, tmp0, tmp1));
    2933             :     USE(tmp5);
    2934          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 362);
    2935             :     compiler::TNode<Number> tmp6;
    2936             :     USE(tmp6);
    2937         112 :     tmp6 = ca_.UncheckedCast<Number>(BaseBuiltinsFromDSLAssembler(state_).GetLengthProperty(compiler::TNode<Context>{tmp0}, compiler::TNode<Object>{tmp5}));
    2938          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 365);
    2939             :     compiler::TNode<IntPtrT> tmp7;
    2940             :     USE(tmp7);
    2941         112 :     tmp7 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATintptr17ATconstexpr_int31(0));
    2942             :     compiler::TNode<Object> tmp8;
    2943             :     USE(tmp8);
    2944         112 :     tmp8 = ca_.UncheckedCast<Object>(CodeStubAssembler(state_).GetArgumentValue(BaseBuiltinsFromDSLAssembler::Arguments{compiler::TNode<RawPtrT>{tmp2}, compiler::TNode<RawPtrT>{tmp3}, compiler::TNode<IntPtrT>{tmp4}}, compiler::TNode<IntPtrT>{tmp7}));
    2945          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 366);
    2946             :     compiler::TNode<Number> tmp9;
    2947             :     USE(tmp9);
    2948         168 :     tmp9 = ca_.UncheckedCast<Number>(CodeStubAssembler(state_).ToInteger_Inline(compiler::TNode<Context>{tmp0}, compiler::TNode<Object>{tmp8}));
    2949          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 371);
    2950             :     compiler::TNode<Number> tmp10;
    2951             :     USE(tmp10);
    2952         112 :     tmp10 = ca_.UncheckedCast<Number>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr20UT5ATSmi10HeapNumber17ATconstexpr_int31(0));
    2953          56 :     compiler::CodeAssemblerLabel label0(&ca_);
    2954          56 :     compiler::CodeAssemblerLabel label1(&ca_);
    2955         112 :     CodeStubAssembler(state_).BranchIfNumberLessThan(compiler::TNode<Number>{tmp9}, compiler::TNode<Number>{tmp10}, &label0, &label1);
    2956          56 :     if (label0.is_used()) {
    2957          56 :       ca_.Bind(&label0);
    2958             :       ca_.Goto(&block5, tmp0, tmp1, tmp2, tmp3, tmp4, tmp5, tmp6, tmp8, tmp9, tmp9);
    2959             :     }
    2960          56 :     if (label1.is_used()) {
    2961          56 :       ca_.Bind(&label1);
    2962             :       ca_.Goto(&block6, tmp0, tmp1, tmp2, tmp3, tmp4, tmp5, tmp6, tmp8, tmp9, tmp9);
    2963             :     }
    2964             :   }
    2965             : 
    2966          56 :   if (block5.is_used()) {
    2967             :     compiler::TNode<Context> tmp11;
    2968             :     compiler::TNode<Object> tmp12;
    2969             :     compiler::TNode<RawPtrT> tmp13;
    2970             :     compiler::TNode<RawPtrT> tmp14;
    2971             :     compiler::TNode<IntPtrT> tmp15;
    2972             :     compiler::TNode<JSReceiver> tmp16;
    2973             :     compiler::TNode<Number> tmp17;
    2974             :     compiler::TNode<Object> tmp18;
    2975             :     compiler::TNode<Number> tmp19;
    2976             :     compiler::TNode<Number> tmp20;
    2977             :     ca_.Bind(&block5, &tmp11, &tmp12, &tmp13, &tmp14, &tmp15, &tmp16, &tmp17, &tmp18, &tmp19, &tmp20);
    2978             :     ca_.Goto(&block1, tmp11, tmp12, tmp13, tmp14, tmp15, tmp16, tmp17, tmp18, tmp19);
    2979             :   }
    2980             : 
    2981          56 :   if (block6.is_used()) {
    2982             :     compiler::TNode<Context> tmp21;
    2983             :     compiler::TNode<Object> tmp22;
    2984             :     compiler::TNode<RawPtrT> tmp23;
    2985             :     compiler::TNode<RawPtrT> tmp24;
    2986             :     compiler::TNode<IntPtrT> tmp25;
    2987             :     compiler::TNode<JSReceiver> tmp26;
    2988             :     compiler::TNode<Number> tmp27;
    2989             :     compiler::TNode<Object> tmp28;
    2990             :     compiler::TNode<Number> tmp29;
    2991             :     compiler::TNode<Number> tmp30;
    2992             :     ca_.Bind(&block6, &tmp21, &tmp22, &tmp23, &tmp24, &tmp25, &tmp26, &tmp27, &tmp28, &tmp29, &tmp30);
    2993             :     ca_.Goto(&block2, tmp21, tmp22, tmp23, tmp24, tmp25, tmp26, tmp27, tmp28, tmp29);
    2994             :   }
    2995             : 
    2996          56 :   if (block1.is_used()) {
    2997             :     compiler::TNode<Context> tmp31;
    2998             :     compiler::TNode<Object> tmp32;
    2999             :     compiler::TNode<RawPtrT> tmp33;
    3000             :     compiler::TNode<RawPtrT> tmp34;
    3001             :     compiler::TNode<IntPtrT> tmp35;
    3002             :     compiler::TNode<JSReceiver> tmp36;
    3003             :     compiler::TNode<Number> tmp37;
    3004             :     compiler::TNode<Object> tmp38;
    3005             :     compiler::TNode<Number> tmp39;
    3006             :     ca_.Bind(&block1, &tmp31, &tmp32, &tmp33, &tmp34, &tmp35, &tmp36, &tmp37, &tmp38, &tmp39);
    3007          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 372);
    3008             :     compiler::TNode<Number> tmp40;
    3009             :     USE(tmp40);
    3010         224 :     tmp40 = ca_.UncheckedCast<Number>(CodeStubAssembler(state_).NumberAdd(compiler::TNode<Number>{tmp37}, compiler::TNode<Number>{tmp39}));
    3011             :     compiler::TNode<Number> tmp41;
    3012             :     USE(tmp41);
    3013         112 :     tmp41 = ca_.UncheckedCast<Number>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr20UT5ATSmi10HeapNumber17ATconstexpr_int31(0));
    3014             :     compiler::TNode<Number> tmp42;
    3015             :     USE(tmp42);
    3016         112 :     tmp42 = ca_.UncheckedCast<Number>(BaseBuiltinsFromDSLAssembler(state_).Max(compiler::TNode<Number>{tmp40}, compiler::TNode<Number>{tmp41}));
    3017          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 371);
    3018             :     ca_.Goto(&block4, tmp31, tmp32, tmp33, tmp34, tmp35, tmp36, tmp37, tmp38, tmp39, tmp42);
    3019             :   }
    3020             : 
    3021          56 :   if (block2.is_used()) {
    3022             :     compiler::TNode<Context> tmp43;
    3023             :     compiler::TNode<Object> tmp44;
    3024             :     compiler::TNode<RawPtrT> tmp45;
    3025             :     compiler::TNode<RawPtrT> tmp46;
    3026             :     compiler::TNode<IntPtrT> tmp47;
    3027             :     compiler::TNode<JSReceiver> tmp48;
    3028             :     compiler::TNode<Number> tmp49;
    3029             :     compiler::TNode<Object> tmp50;
    3030             :     compiler::TNode<Number> tmp51;
    3031             :     ca_.Bind(&block2, &tmp43, &tmp44, &tmp45, &tmp46, &tmp47, &tmp48, &tmp49, &tmp50, &tmp51);
    3032          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 373);
    3033             :     compiler::TNode<Number> tmp52;
    3034             :     USE(tmp52);
    3035         112 :     tmp52 = ca_.UncheckedCast<Number>(BaseBuiltinsFromDSLAssembler(state_).Min(compiler::TNode<Number>{tmp51}, compiler::TNode<Number>{tmp49}));
    3036          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 371);
    3037             :     ca_.Goto(&block3, tmp43, tmp44, tmp45, tmp46, tmp47, tmp48, tmp49, tmp50, tmp51, tmp52);
    3038             :   }
    3039             : 
    3040          56 :   if (block4.is_used()) {
    3041             :     compiler::TNode<Context> tmp53;
    3042             :     compiler::TNode<Object> tmp54;
    3043             :     compiler::TNode<RawPtrT> tmp55;
    3044             :     compiler::TNode<RawPtrT> tmp56;
    3045             :     compiler::TNode<IntPtrT> tmp57;
    3046             :     compiler::TNode<JSReceiver> tmp58;
    3047             :     compiler::TNode<Number> tmp59;
    3048             :     compiler::TNode<Object> tmp60;
    3049             :     compiler::TNode<Number> tmp61;
    3050             :     compiler::TNode<Number> tmp62;
    3051             :     ca_.Bind(&block4, &tmp53, &tmp54, &tmp55, &tmp56, &tmp57, &tmp58, &tmp59, &tmp60, &tmp61, &tmp62);
    3052             :     ca_.Goto(&block3, tmp53, tmp54, tmp55, tmp56, tmp57, tmp58, tmp59, tmp60, tmp61, tmp62);
    3053             :   }
    3054             : 
    3055          56 :   if (block3.is_used()) {
    3056             :     compiler::TNode<Context> tmp63;
    3057             :     compiler::TNode<Object> tmp64;
    3058             :     compiler::TNode<RawPtrT> tmp65;
    3059             :     compiler::TNode<RawPtrT> tmp66;
    3060             :     compiler::TNode<IntPtrT> tmp67;
    3061             :     compiler::TNode<JSReceiver> tmp68;
    3062             :     compiler::TNode<Number> tmp69;
    3063             :     compiler::TNode<Object> tmp70;
    3064             :     compiler::TNode<Number> tmp71;
    3065             :     compiler::TNode<Number> tmp72;
    3066             :     ca_.Bind(&block3, &tmp63, &tmp64, &tmp65, &tmp66, &tmp67, &tmp68, &tmp69, &tmp70, &tmp71, &tmp72);
    3067          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 375);
    3068          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 376);
    3069          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 378);
    3070             :     compiler::TNode<IntPtrT> tmp73;
    3071             :     USE(tmp73);
    3072         112 :     tmp73 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATintptr17ATconstexpr_int31(0));
    3073             :     compiler::TNode<BoolT> tmp74;
    3074             :     USE(tmp74);
    3075         168 :     tmp74 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).WordEqual(compiler::TNode<IntPtrT>{tmp67}, compiler::TNode<IntPtrT>{tmp73}));
    3076          56 :     ca_.Branch(tmp74, &block7, &block8, tmp63, tmp64, tmp65, tmp66, tmp67, tmp68, tmp69, tmp70, tmp71, tmp72, ca_.Uninitialized<Smi>(), ca_.Uninitialized<Number>());
    3077             :   }
    3078             : 
    3079          56 :   if (block7.is_used()) {
    3080             :     compiler::TNode<Context> tmp75;
    3081             :     compiler::TNode<Object> tmp76;
    3082             :     compiler::TNode<RawPtrT> tmp77;
    3083             :     compiler::TNode<RawPtrT> tmp78;
    3084             :     compiler::TNode<IntPtrT> tmp79;
    3085             :     compiler::TNode<JSReceiver> tmp80;
    3086             :     compiler::TNode<Number> tmp81;
    3087             :     compiler::TNode<Object> tmp82;
    3088             :     compiler::TNode<Number> tmp83;
    3089             :     compiler::TNode<Number> tmp84;
    3090             :     compiler::TNode<Smi> tmp85;
    3091             :     compiler::TNode<Number> tmp86;
    3092             :     ca_.Bind(&block7, &tmp75, &tmp76, &tmp77, &tmp78, &tmp79, &tmp80, &tmp81, &tmp82, &tmp83, &tmp84, &tmp85, &tmp86);
    3093          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 380);
    3094             :     compiler::TNode<Smi> tmp87;
    3095             :     USE(tmp87);
    3096         112 :     tmp87 = ca_.UncheckedCast<Smi>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr5ATSmi17ATconstexpr_int31(0));
    3097          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 382);
    3098             :     compiler::TNode<Number> tmp88;
    3099             :     USE(tmp88);
    3100         112 :     tmp88 = ca_.UncheckedCast<Number>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr20UT5ATSmi10HeapNumber17ATconstexpr_int31(0));
    3101          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 378);
    3102             :     ca_.Goto(&block9, tmp75, tmp76, tmp77, tmp78, tmp79, tmp80, tmp81, tmp82, tmp83, tmp84, tmp87, tmp88);
    3103             :   }
    3104             : 
    3105          56 :   if (block8.is_used()) {
    3106             :     compiler::TNode<Context> tmp89;
    3107             :     compiler::TNode<Object> tmp90;
    3108             :     compiler::TNode<RawPtrT> tmp91;
    3109             :     compiler::TNode<RawPtrT> tmp92;
    3110             :     compiler::TNode<IntPtrT> tmp93;
    3111             :     compiler::TNode<JSReceiver> tmp94;
    3112             :     compiler::TNode<Number> tmp95;
    3113             :     compiler::TNode<Object> tmp96;
    3114             :     compiler::TNode<Number> tmp97;
    3115             :     compiler::TNode<Number> tmp98;
    3116             :     compiler::TNode<Smi> tmp99;
    3117             :     compiler::TNode<Number> tmp100;
    3118             :     ca_.Bind(&block8, &tmp89, &tmp90, &tmp91, &tmp92, &tmp93, &tmp94, &tmp95, &tmp96, &tmp97, &tmp98, &tmp99, &tmp100);
    3119          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 384);
    3120             :     compiler::TNode<IntPtrT> tmp101;
    3121             :     USE(tmp101);
    3122         112 :     tmp101 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATintptr17ATconstexpr_int31(1));
    3123             :     compiler::TNode<BoolT> tmp102;
    3124             :     USE(tmp102);
    3125         168 :     tmp102 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).WordEqual(compiler::TNode<IntPtrT>{tmp93}, compiler::TNode<IntPtrT>{tmp101}));
    3126          56 :     ca_.Branch(tmp102, &block10, &block11, tmp89, tmp90, tmp91, tmp92, tmp93, tmp94, tmp95, tmp96, tmp97, tmp98, tmp99, tmp100);
    3127             :   }
    3128             : 
    3129          56 :   if (block10.is_used()) {
    3130             :     compiler::TNode<Context> tmp103;
    3131             :     compiler::TNode<Object> tmp104;
    3132             :     compiler::TNode<RawPtrT> tmp105;
    3133             :     compiler::TNode<RawPtrT> tmp106;
    3134             :     compiler::TNode<IntPtrT> tmp107;
    3135             :     compiler::TNode<JSReceiver> tmp108;
    3136             :     compiler::TNode<Number> tmp109;
    3137             :     compiler::TNode<Object> tmp110;
    3138             :     compiler::TNode<Number> tmp111;
    3139             :     compiler::TNode<Number> tmp112;
    3140             :     compiler::TNode<Smi> tmp113;
    3141             :     compiler::TNode<Number> tmp114;
    3142             :     ca_.Bind(&block10, &tmp103, &tmp104, &tmp105, &tmp106, &tmp107, &tmp108, &tmp109, &tmp110, &tmp111, &tmp112, &tmp113, &tmp114);
    3143          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 386);
    3144             :     compiler::TNode<Smi> tmp115;
    3145             :     USE(tmp115);
    3146         112 :     tmp115 = ca_.UncheckedCast<Smi>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr5ATSmi17ATconstexpr_int31(0));
    3147          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 388);
    3148             :     compiler::TNode<Number> tmp116;
    3149             :     USE(tmp116);
    3150         224 :     tmp116 = ca_.UncheckedCast<Number>(CodeStubAssembler(state_).NumberSub(compiler::TNode<Number>{tmp109}, compiler::TNode<Number>{tmp112}));
    3151          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 384);
    3152             :     ca_.Goto(&block12, tmp103, tmp104, tmp105, tmp106, tmp107, tmp108, tmp109, tmp110, tmp111, tmp112, tmp115, tmp116);
    3153             :   }
    3154             : 
    3155          56 :   if (block11.is_used()) {
    3156             :     compiler::TNode<Context> tmp117;
    3157             :     compiler::TNode<Object> tmp118;
    3158             :     compiler::TNode<RawPtrT> tmp119;
    3159             :     compiler::TNode<RawPtrT> tmp120;
    3160             :     compiler::TNode<IntPtrT> tmp121;
    3161             :     compiler::TNode<JSReceiver> tmp122;
    3162             :     compiler::TNode<Number> tmp123;
    3163             :     compiler::TNode<Object> tmp124;
    3164             :     compiler::TNode<Number> tmp125;
    3165             :     compiler::TNode<Number> tmp126;
    3166             :     compiler::TNode<Smi> tmp127;
    3167             :     compiler::TNode<Number> tmp128;
    3168             :     ca_.Bind(&block11, &tmp117, &tmp118, &tmp119, &tmp120, &tmp121, &tmp122, &tmp123, &tmp124, &tmp125, &tmp126, &tmp127, &tmp128);
    3169          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 392);
    3170             :     compiler::TNode<Smi> tmp129;
    3171             :     USE(tmp129);
    3172         112 :     tmp129 = ca_.UncheckedCast<Smi>(BaseBuiltinsFromDSLAssembler(state_).Convert5ATSmi8ATintptr(compiler::TNode<IntPtrT>{tmp121}));
    3173             :     compiler::TNode<Smi> tmp130;
    3174             :     USE(tmp130);
    3175         112 :     tmp130 = ca_.UncheckedCast<Smi>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr5ATSmi17ATconstexpr_int31(2));
    3176             :     compiler::TNode<Smi> tmp131;
    3177             :     USE(tmp131);
    3178         112 :     tmp131 = ca_.UncheckedCast<Smi>(CodeStubAssembler(state_).SmiSub(compiler::TNode<Smi>{tmp129}, compiler::TNode<Smi>{tmp130}));
    3179          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 394);
    3180             :     compiler::TNode<IntPtrT> tmp132;
    3181             :     USE(tmp132);
    3182         112 :     tmp132 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATintptr17ATconstexpr_int31(1));
    3183             :     compiler::TNode<Object> tmp133;
    3184             :     USE(tmp133);
    3185         112 :     tmp133 = ca_.UncheckedCast<Object>(CodeStubAssembler(state_).GetArgumentValue(BaseBuiltinsFromDSLAssembler::Arguments{compiler::TNode<RawPtrT>{tmp119}, compiler::TNode<RawPtrT>{tmp120}, compiler::TNode<IntPtrT>{tmp121}}, compiler::TNode<IntPtrT>{tmp132}));
    3186          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 395);
    3187             :     compiler::TNode<Number> tmp134;
    3188             :     USE(tmp134);
    3189         168 :     tmp134 = ca_.UncheckedCast<Number>(CodeStubAssembler(state_).ToInteger_Inline(compiler::TNode<Context>{tmp117}, compiler::TNode<Object>{tmp133}));
    3190          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 397);
    3191             :     compiler::TNode<Number> tmp135;
    3192             :     USE(tmp135);
    3193         112 :     tmp135 = ca_.UncheckedCast<Number>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr20UT5ATSmi10HeapNumber17ATconstexpr_int31(0));
    3194             :     compiler::TNode<Number> tmp136;
    3195             :     USE(tmp136);
    3196         112 :     tmp136 = ca_.UncheckedCast<Number>(BaseBuiltinsFromDSLAssembler(state_).Max(compiler::TNode<Number>{tmp134}, compiler::TNode<Number>{tmp135}));
    3197             :     compiler::TNode<Number> tmp137;
    3198             :     USE(tmp137);
    3199         224 :     tmp137 = ca_.UncheckedCast<Number>(CodeStubAssembler(state_).NumberSub(compiler::TNode<Number>{tmp123}, compiler::TNode<Number>{tmp126}));
    3200             :     compiler::TNode<Number> tmp138;
    3201             :     USE(tmp138);
    3202         112 :     tmp138 = ca_.UncheckedCast<Number>(BaseBuiltinsFromDSLAssembler(state_).Min(compiler::TNode<Number>{tmp136}, compiler::TNode<Number>{tmp137}));
    3203          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 390);
    3204          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 384);
    3205             :     ca_.Goto(&block12, tmp117, tmp118, tmp119, tmp120, tmp121, tmp122, tmp123, tmp124, tmp125, tmp126, tmp131, tmp138);
    3206             :   }
    3207             : 
    3208          56 :   if (block12.is_used()) {
    3209             :     compiler::TNode<Context> tmp139;
    3210             :     compiler::TNode<Object> tmp140;
    3211             :     compiler::TNode<RawPtrT> tmp141;
    3212             :     compiler::TNode<RawPtrT> tmp142;
    3213             :     compiler::TNode<IntPtrT> tmp143;
    3214             :     compiler::TNode<JSReceiver> tmp144;
    3215             :     compiler::TNode<Number> tmp145;
    3216             :     compiler::TNode<Object> tmp146;
    3217             :     compiler::TNode<Number> tmp147;
    3218             :     compiler::TNode<Number> tmp148;
    3219             :     compiler::TNode<Smi> tmp149;
    3220             :     compiler::TNode<Number> tmp150;
    3221             :     ca_.Bind(&block12, &tmp139, &tmp140, &tmp141, &tmp142, &tmp143, &tmp144, &tmp145, &tmp146, &tmp147, &tmp148, &tmp149, &tmp150);
    3222          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 378);
    3223             :     ca_.Goto(&block9, tmp139, tmp140, tmp141, tmp142, tmp143, tmp144, tmp145, tmp146, tmp147, tmp148, tmp149, tmp150);
    3224             :   }
    3225             : 
    3226          56 :   if (block9.is_used()) {
    3227             :     compiler::TNode<Context> tmp151;
    3228             :     compiler::TNode<Object> tmp152;
    3229             :     compiler::TNode<RawPtrT> tmp153;
    3230             :     compiler::TNode<RawPtrT> tmp154;
    3231             :     compiler::TNode<IntPtrT> tmp155;
    3232             :     compiler::TNode<JSReceiver> tmp156;
    3233             :     compiler::TNode<Number> tmp157;
    3234             :     compiler::TNode<Object> tmp158;
    3235             :     compiler::TNode<Number> tmp159;
    3236             :     compiler::TNode<Number> tmp160;
    3237             :     compiler::TNode<Smi> tmp161;
    3238             :     compiler::TNode<Number> tmp162;
    3239             :     ca_.Bind(&block9, &tmp151, &tmp152, &tmp153, &tmp154, &tmp155, &tmp156, &tmp157, &tmp158, &tmp159, &tmp160, &tmp161, &tmp162);
    3240          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 402);
    3241             :     compiler::TNode<Number> tmp163;
    3242             :     USE(tmp163);
    3243         168 :     tmp163 = ca_.UncheckedCast<Number>(CodeStubAssembler(state_).NumberAdd(compiler::TNode<Number>{tmp157}, compiler::TNode<Number>{tmp161}));
    3244             :     compiler::TNode<Number> tmp164;
    3245             :     USE(tmp164);
    3246         168 :     tmp164 = ca_.UncheckedCast<Number>(CodeStubAssembler(state_).NumberSub(compiler::TNode<Number>{tmp163}, compiler::TNode<Number>{tmp162}));
    3247          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 403);
    3248             :     compiler::TNode<Number> tmp165;
    3249             :     USE(tmp165);
    3250         112 :     tmp165 = ca_.UncheckedCast<Number>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr20UT5ATSmi10HeapNumber19ATconstexpr_float64(kMaxSafeInteger));
    3251          56 :     compiler::CodeAssemblerLabel label0(&ca_);
    3252          56 :     compiler::CodeAssemblerLabel label1(&ca_);
    3253         112 :     CodeStubAssembler(state_).BranchIfNumberGreaterThan(compiler::TNode<Number>{tmp164}, compiler::TNode<Number>{tmp165}, &label0, &label1);
    3254          56 :     if (label0.is_used()) {
    3255          56 :       ca_.Bind(&label0);
    3256             :       ca_.Goto(&block15, tmp151, tmp152, tmp153, tmp154, tmp155, tmp156, tmp157, tmp158, tmp159, tmp160, tmp161, tmp162, tmp164, tmp164);
    3257             :     }
    3258          56 :     if (label1.is_used()) {
    3259          56 :       ca_.Bind(&label1);
    3260             :       ca_.Goto(&block16, tmp151, tmp152, tmp153, tmp154, tmp155, tmp156, tmp157, tmp158, tmp159, tmp160, tmp161, tmp162, tmp164, tmp164);
    3261             :     }
    3262             :   }
    3263             : 
    3264          56 :   if (block15.is_used()) {
    3265             :     compiler::TNode<Context> tmp166;
    3266             :     compiler::TNode<Object> tmp167;
    3267             :     compiler::TNode<RawPtrT> tmp168;
    3268             :     compiler::TNode<RawPtrT> tmp169;
    3269             :     compiler::TNode<IntPtrT> tmp170;
    3270             :     compiler::TNode<JSReceiver> tmp171;
    3271             :     compiler::TNode<Number> tmp172;
    3272             :     compiler::TNode<Object> tmp173;
    3273             :     compiler::TNode<Number> tmp174;
    3274             :     compiler::TNode<Number> tmp175;
    3275             :     compiler::TNode<Smi> tmp176;
    3276             :     compiler::TNode<Number> tmp177;
    3277             :     compiler::TNode<Number> tmp178;
    3278             :     compiler::TNode<Number> tmp179;
    3279             :     ca_.Bind(&block15, &tmp166, &tmp167, &tmp168, &tmp169, &tmp170, &tmp171, &tmp172, &tmp173, &tmp174, &tmp175, &tmp176, &tmp177, &tmp178, &tmp179);
    3280             :     ca_.Goto(&block13, tmp166, tmp167, tmp168, tmp169, tmp170, tmp171, tmp172, tmp173, tmp174, tmp175, tmp176, tmp177, tmp178);
    3281             :   }
    3282             : 
    3283          56 :   if (block16.is_used()) {
    3284             :     compiler::TNode<Context> tmp180;
    3285             :     compiler::TNode<Object> tmp181;
    3286             :     compiler::TNode<RawPtrT> tmp182;
    3287             :     compiler::TNode<RawPtrT> tmp183;
    3288             :     compiler::TNode<IntPtrT> tmp184;
    3289             :     compiler::TNode<JSReceiver> tmp185;
    3290             :     compiler::TNode<Number> tmp186;
    3291             :     compiler::TNode<Object> tmp187;
    3292             :     compiler::TNode<Number> tmp188;
    3293             :     compiler::TNode<Number> tmp189;
    3294             :     compiler::TNode<Smi> tmp190;
    3295             :     compiler::TNode<Number> tmp191;
    3296             :     compiler::TNode<Number> tmp192;
    3297             :     compiler::TNode<Number> tmp193;
    3298             :     ca_.Bind(&block16, &tmp180, &tmp181, &tmp182, &tmp183, &tmp184, &tmp185, &tmp186, &tmp187, &tmp188, &tmp189, &tmp190, &tmp191, &tmp192, &tmp193);
    3299             :     ca_.Goto(&block14, tmp180, tmp181, tmp182, tmp183, tmp184, tmp185, tmp186, tmp187, tmp188, tmp189, tmp190, tmp191, tmp192);
    3300             :   }
    3301             : 
    3302          56 :   if (block13.is_used()) {
    3303             :     compiler::TNode<Context> tmp194;
    3304             :     compiler::TNode<Object> tmp195;
    3305             :     compiler::TNode<RawPtrT> tmp196;
    3306             :     compiler::TNode<RawPtrT> tmp197;
    3307             :     compiler::TNode<IntPtrT> tmp198;
    3308             :     compiler::TNode<JSReceiver> tmp199;
    3309             :     compiler::TNode<Number> tmp200;
    3310             :     compiler::TNode<Object> tmp201;
    3311             :     compiler::TNode<Number> tmp202;
    3312             :     compiler::TNode<Number> tmp203;
    3313             :     compiler::TNode<Smi> tmp204;
    3314             :     compiler::TNode<Number> tmp205;
    3315             :     compiler::TNode<Number> tmp206;
    3316             :     ca_.Bind(&block13, &tmp194, &tmp195, &tmp196, &tmp197, &tmp198, &tmp199, &tmp200, &tmp201, &tmp202, &tmp203, &tmp204, &tmp205, &tmp206);
    3317          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 404);
    3318         112 :     CodeStubAssembler(state_).ThrowTypeError(compiler::TNode<Context>{tmp194}, MessageTemplate::kInvalidArrayLength, compiler::TNode<Object>{tmp201});
    3319             :   }
    3320             : 
    3321          56 :   if (block14.is_used()) {
    3322             :     compiler::TNode<Context> tmp207;
    3323             :     compiler::TNode<Object> tmp208;
    3324             :     compiler::TNode<RawPtrT> tmp209;
    3325             :     compiler::TNode<RawPtrT> tmp210;
    3326             :     compiler::TNode<IntPtrT> tmp211;
    3327             :     compiler::TNode<JSReceiver> tmp212;
    3328             :     compiler::TNode<Number> tmp213;
    3329             :     compiler::TNode<Object> tmp214;
    3330             :     compiler::TNode<Number> tmp215;
    3331             :     compiler::TNode<Number> tmp216;
    3332             :     compiler::TNode<Smi> tmp217;
    3333             :     compiler::TNode<Number> tmp218;
    3334             :     compiler::TNode<Number> tmp219;
    3335             :     ca_.Bind(&block14, &tmp207, &tmp208, &tmp209, &tmp210, &tmp211, &tmp212, &tmp213, &tmp214, &tmp215, &tmp216, &tmp217, &tmp218, &tmp219);
    3336          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 409);
    3337          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 410);
    3338          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 408);
    3339             :     compiler::TNode<Object> tmp220;
    3340             :     USE(tmp220);
    3341          56 :     compiler::CodeAssemblerLabel label0(&ca_);
    3342         168 :     tmp220 = ArraySpliceBuiltinsFromDSLAssembler(state_).FastArraySplice(compiler::TNode<Context>{tmp207}, BaseBuiltinsFromDSLAssembler::Arguments{compiler::TNode<RawPtrT>{tmp209}, compiler::TNode<RawPtrT>{tmp210}, compiler::TNode<IntPtrT>{tmp211}}, compiler::TNode<JSReceiver>{tmp212}, compiler::TNode<Number>{tmp213}, compiler::TNode<Number>{tmp216}, compiler::TNode<Smi>{tmp217}, compiler::TNode<Number>{tmp218}, &label0);
    3343             :     ca_.Goto(&block19, tmp207, tmp208, tmp209, tmp210, tmp211, tmp212, tmp213, tmp214, tmp215, tmp216, tmp217, tmp218, tmp219, tmp207, tmp209, tmp210, tmp211, tmp212, tmp213, tmp216, tmp217, tmp218, tmp220);
    3344          56 :     if (label0.is_used()) {
    3345          56 :       ca_.Bind(&label0);
    3346             :       ca_.Goto(&block20, tmp207, tmp208, tmp209, tmp210, tmp211, tmp212, tmp213, tmp214, tmp215, tmp216, tmp217, tmp218, tmp219, tmp207, tmp209, tmp210, tmp211, tmp212, tmp213, tmp216, tmp217, tmp218);
    3347             :     }
    3348             :   }
    3349             : 
    3350          56 :   if (block20.is_used()) {
    3351             :     compiler::TNode<Context> tmp221;
    3352             :     compiler::TNode<Object> tmp222;
    3353             :     compiler::TNode<RawPtrT> tmp223;
    3354             :     compiler::TNode<RawPtrT> tmp224;
    3355             :     compiler::TNode<IntPtrT> tmp225;
    3356             :     compiler::TNode<JSReceiver> tmp226;
    3357             :     compiler::TNode<Number> tmp227;
    3358             :     compiler::TNode<Object> tmp228;
    3359             :     compiler::TNode<Number> tmp229;
    3360             :     compiler::TNode<Number> tmp230;
    3361             :     compiler::TNode<Smi> tmp231;
    3362             :     compiler::TNode<Number> tmp232;
    3363             :     compiler::TNode<Number> tmp233;
    3364             :     compiler::TNode<Context> tmp234;
    3365             :     compiler::TNode<RawPtrT> tmp235;
    3366             :     compiler::TNode<RawPtrT> tmp236;
    3367             :     compiler::TNode<IntPtrT> tmp237;
    3368             :     compiler::TNode<JSReceiver> tmp238;
    3369             :     compiler::TNode<Number> tmp239;
    3370             :     compiler::TNode<Number> tmp240;
    3371             :     compiler::TNode<Smi> tmp241;
    3372             :     compiler::TNode<Number> tmp242;
    3373             :     ca_.Bind(&block20, &tmp221, &tmp222, &tmp223, &tmp224, &tmp225, &tmp226, &tmp227, &tmp228, &tmp229, &tmp230, &tmp231, &tmp232, &tmp233, &tmp234, &tmp235, &tmp236, &tmp237, &tmp238, &tmp239, &tmp240, &tmp241, &tmp242);
    3374             :     ca_.Goto(&block18, tmp221, tmp222, tmp223, tmp224, tmp225, tmp226, tmp227, tmp228, tmp229, tmp230, tmp231, tmp232, tmp233);
    3375             :   }
    3376             : 
    3377          56 :   if (block19.is_used()) {
    3378             :     compiler::TNode<Context> tmp243;
    3379             :     compiler::TNode<Object> tmp244;
    3380             :     compiler::TNode<RawPtrT> tmp245;
    3381             :     compiler::TNode<RawPtrT> tmp246;
    3382             :     compiler::TNode<IntPtrT> tmp247;
    3383             :     compiler::TNode<JSReceiver> tmp248;
    3384             :     compiler::TNode<Number> tmp249;
    3385             :     compiler::TNode<Object> tmp250;
    3386             :     compiler::TNode<Number> tmp251;
    3387             :     compiler::TNode<Number> tmp252;
    3388             :     compiler::TNode<Smi> tmp253;
    3389             :     compiler::TNode<Number> tmp254;
    3390             :     compiler::TNode<Number> tmp255;
    3391             :     compiler::TNode<Context> tmp256;
    3392             :     compiler::TNode<RawPtrT> tmp257;
    3393             :     compiler::TNode<RawPtrT> tmp258;
    3394             :     compiler::TNode<IntPtrT> tmp259;
    3395             :     compiler::TNode<JSReceiver> tmp260;
    3396             :     compiler::TNode<Number> tmp261;
    3397             :     compiler::TNode<Number> tmp262;
    3398             :     compiler::TNode<Smi> tmp263;
    3399             :     compiler::TNode<Number> tmp264;
    3400             :     compiler::TNode<Object> tmp265;
    3401             :     ca_.Bind(&block19, &tmp243, &tmp244, &tmp245, &tmp246, &tmp247, &tmp248, &tmp249, &tmp250, &tmp251, &tmp252, &tmp253, &tmp254, &tmp255, &tmp256, &tmp257, &tmp258, &tmp259, &tmp260, &tmp261, &tmp262, &tmp263, &tmp264, &tmp265);
    3402          56 :     arguments.PopAndReturn(tmp265);
    3403             :   }
    3404             : 
    3405          56 :   if (block18.is_used()) {
    3406             :     compiler::TNode<Context> tmp266;
    3407             :     compiler::TNode<Object> tmp267;
    3408             :     compiler::TNode<RawPtrT> tmp268;
    3409             :     compiler::TNode<RawPtrT> tmp269;
    3410             :     compiler::TNode<IntPtrT> tmp270;
    3411             :     compiler::TNode<JSReceiver> tmp271;
    3412             :     compiler::TNode<Number> tmp272;
    3413             :     compiler::TNode<Object> tmp273;
    3414             :     compiler::TNode<Number> tmp274;
    3415             :     compiler::TNode<Number> tmp275;
    3416             :     compiler::TNode<Smi> tmp276;
    3417             :     compiler::TNode<Number> tmp277;
    3418             :     compiler::TNode<Number> tmp278;
    3419             :     ca_.Bind(&block18, &tmp266, &tmp267, &tmp268, &tmp269, &tmp270, &tmp271, &tmp272, &tmp273, &tmp274, &tmp275, &tmp276, &tmp277, &tmp278);
    3420          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 407);
    3421             :     ca_.Goto(&block17, tmp266, tmp267, tmp268, tmp269, tmp270, tmp271, tmp272, tmp273, tmp274, tmp275, tmp276, tmp277, tmp278);
    3422             :   }
    3423             : 
    3424          56 :   if (block17.is_used()) {
    3425             :     compiler::TNode<Context> tmp279;
    3426             :     compiler::TNode<Object> tmp280;
    3427             :     compiler::TNode<RawPtrT> tmp281;
    3428             :     compiler::TNode<RawPtrT> tmp282;
    3429             :     compiler::TNode<IntPtrT> tmp283;
    3430             :     compiler::TNode<JSReceiver> tmp284;
    3431             :     compiler::TNode<Number> tmp285;
    3432             :     compiler::TNode<Object> tmp286;
    3433             :     compiler::TNode<Number> tmp287;
    3434             :     compiler::TNode<Number> tmp288;
    3435             :     compiler::TNode<Smi> tmp289;
    3436             :     compiler::TNode<Number> tmp290;
    3437             :     compiler::TNode<Number> tmp291;
    3438             :     ca_.Bind(&block17, &tmp279, &tmp280, &tmp281, &tmp282, &tmp283, &tmp284, &tmp285, &tmp286, &tmp287, &tmp288, &tmp289, &tmp290, &tmp291);
    3439          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 417);
    3440          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 418);
    3441          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 416);
    3442             :     compiler::TNode<Object> tmp292;
    3443             :     USE(tmp292);
    3444         168 :     tmp292 = ca_.UncheckedCast<Object>(ArraySpliceBuiltinsFromDSLAssembler(state_).SlowSplice(compiler::TNode<Context>{tmp279}, BaseBuiltinsFromDSLAssembler::Arguments{compiler::TNode<RawPtrT>{tmp281}, compiler::TNode<RawPtrT>{tmp282}, compiler::TNode<IntPtrT>{tmp283}}, compiler::TNode<JSReceiver>{tmp284}, compiler::TNode<Number>{tmp285}, compiler::TNode<Number>{tmp288}, compiler::TNode<Smi>{tmp289}, compiler::TNode<Number>{tmp290}));
    3445          56 :     arguments.PopAndReturn(tmp292);
    3446             :   }
    3447          56 : }
    3448             : 
    3449          56 : void ArraySpliceBuiltinsFromDSLAssembler::FastSplice10FixedArray20UT5ATSmi10HeapObject(compiler::TNode<Context> p_context, BaseBuiltinsFromDSLAssembler::Arguments p_args, compiler::TNode<JSArray> p_a, compiler::TNode<Smi> p_length, compiler::TNode<Smi> p_newLength, compiler::TNode<Smi> p_lengthDelta, compiler::TNode<Smi> p_actualStart, compiler::TNode<Smi> p_insertCount, compiler::TNode<Smi> p_actualDeleteCount, compiler::CodeAssemblerLabel* label_Bailout) {
    3450          56 :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSArray, Smi, Smi, Smi, Smi, Smi, Smi> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    3451             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSArray, Smi, Smi, Smi, Smi, Smi, Smi> block3(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    3452             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSArray, Smi, Smi, Smi, Smi, Smi, Smi, FixedArrayBase, Smi, Smi, Smi> block5(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    3453             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSArray, Smi, Smi, Smi, Smi, Smi, Smi, FixedArrayBase, Smi, Smi, Smi> block6(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    3454             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSArray, Smi, Smi, Smi, Smi, Smi, Smi, FixedArrayBase, Smi, Smi, Smi> block8(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    3455             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSArray, Smi, Smi, Smi, Smi, Smi, Smi, FixedArrayBase, Smi, Smi, Smi> block10(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    3456             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSArray, Smi, Smi, Smi, Smi, Smi, Smi, FixedArrayBase, Smi, Smi, Smi> block11(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    3457             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSArray, Smi, Smi, Smi, Smi, Smi, Smi, FixedArrayBase, Smi, Smi, Smi, Smi, FixedArray> block13(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    3458             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSArray, Smi, Smi, Smi, Smi, Smi, Smi, FixedArrayBase, Smi, Smi, Smi, Smi, FixedArray> block14(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    3459             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSArray, Smi, Smi, Smi, Smi, Smi, Smi, FixedArrayBase, Smi, Smi, Smi> block12(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    3460             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSArray, Smi, Smi, Smi, Smi, Smi, Smi, FixedArrayBase, Smi, Smi, Smi> block9(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    3461             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSArray, Smi, Smi, Smi, Smi, Smi, Smi, FixedArrayBase, Smi, Smi, Smi> block7(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    3462             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSArray, Smi, Smi, Smi, Smi, Smi, Smi> block4(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    3463             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSArray, Smi, Smi, Smi, Smi, Smi, Smi, Smi> block15(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    3464             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSArray, Smi, Smi, Smi, Smi, Smi, Smi, Smi, FixedArray, IntPtrT> block19(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    3465             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSArray, Smi, Smi, Smi, Smi, Smi, Smi, Smi, FixedArray, IntPtrT> block17(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    3466             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSArray, Smi, Smi, Smi, Smi, Smi, Smi, Smi, FixedArray, IntPtrT> block20(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    3467             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSArray, Smi, Smi, Smi, Smi, Smi, Smi, Smi, FixedArray, IntPtrT> block18(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    3468             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSArray, Smi, Smi, Smi, Smi, Smi, Smi, Smi> block16(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    3469             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSArray, Smi, Smi, Smi, Smi, Smi, Smi> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    3470             :   compiler::CodeAssemblerParameterizedLabel<> block1(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    3471             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSArray, Smi, Smi, Smi, Smi, Smi, Smi> block21(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    3472             :     ca_.Goto(&block0, p_context, p_args.frame, p_args.base, p_args.length, p_a, p_length, p_newLength, p_lengthDelta, p_actualStart, p_insertCount, p_actualDeleteCount);
    3473             : 
    3474          56 :   if (block0.is_used()) {
    3475             :     compiler::TNode<Context> tmp0;
    3476             :     compiler::TNode<RawPtrT> tmp1;
    3477             :     compiler::TNode<RawPtrT> tmp2;
    3478             :     compiler::TNode<IntPtrT> tmp3;
    3479             :     compiler::TNode<JSArray> tmp4;
    3480             :     compiler::TNode<Smi> tmp5;
    3481             :     compiler::TNode<Smi> tmp6;
    3482             :     compiler::TNode<Smi> tmp7;
    3483             :     compiler::TNode<Smi> tmp8;
    3484             :     compiler::TNode<Smi> tmp9;
    3485             :     compiler::TNode<Smi> tmp10;
    3486             :     ca_.Bind(&block0, &tmp0, &tmp1, &tmp2, &tmp3, &tmp4, &tmp5, &tmp6, &tmp7, &tmp8, &tmp9, &tmp10);
    3487          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 60);
    3488         168 :     ArrayBuiltinsFromDSLAssembler(state_).EnsureWriteableFastElements(compiler::TNode<Context>{tmp0}, compiler::TNode<JSArray>{tmp4});
    3489          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 62);
    3490             :     compiler::TNode<BoolT> tmp11;
    3491             :     USE(tmp11);
    3492         112 :     tmp11 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).SmiNotEqual(compiler::TNode<Smi>{tmp9}, compiler::TNode<Smi>{tmp10}));
    3493          56 :     ca_.Branch(tmp11, &block3, &block4, tmp0, tmp1, tmp2, tmp3, tmp4, tmp5, tmp6, tmp7, tmp8, tmp9, tmp10);
    3494             :   }
    3495             : 
    3496          56 :   if (block3.is_used()) {
    3497             :     compiler::TNode<Context> tmp12;
    3498             :     compiler::TNode<RawPtrT> tmp13;
    3499             :     compiler::TNode<RawPtrT> tmp14;
    3500             :     compiler::TNode<IntPtrT> tmp15;
    3501             :     compiler::TNode<JSArray> tmp16;
    3502             :     compiler::TNode<Smi> tmp17;
    3503             :     compiler::TNode<Smi> tmp18;
    3504             :     compiler::TNode<Smi> tmp19;
    3505             :     compiler::TNode<Smi> tmp20;
    3506             :     compiler::TNode<Smi> tmp21;
    3507             :     compiler::TNode<Smi> tmp22;
    3508             :     ca_.Bind(&block3, &tmp12, &tmp13, &tmp14, &tmp15, &tmp16, &tmp17, &tmp18, &tmp19, &tmp20, &tmp21, &tmp22);
    3509          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 63);
    3510          56 :     compiler::TNode<IntPtrT> tmp23 = ca_.IntPtrConstant(JSObject::kElementsOffset);
    3511             :     USE(tmp23);
    3512         168 :     compiler::TNode<FixedArrayBase>tmp24 = CodeStubAssembler(state_).LoadReference<FixedArrayBase>(CodeStubAssembler::Reference{tmp16, tmp23});
    3513          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 64);
    3514             :     compiler::TNode<Smi> tmp25;
    3515             :     USE(tmp25);
    3516         112 :     tmp25 = ca_.UncheckedCast<Smi>(CodeStubAssembler(state_).SmiAdd(compiler::TNode<Smi>{tmp20}, compiler::TNode<Smi>{tmp21}));
    3517          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 65);
    3518             :     compiler::TNode<Smi> tmp26;
    3519             :     USE(tmp26);
    3520         112 :     tmp26 = ca_.UncheckedCast<Smi>(CodeStubAssembler(state_).SmiAdd(compiler::TNode<Smi>{tmp20}, compiler::TNode<Smi>{tmp22}));
    3521          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 66);
    3522             :     compiler::TNode<Smi> tmp27;
    3523             :     USE(tmp27);
    3524         112 :     tmp27 = ca_.UncheckedCast<Smi>(CodeStubAssembler(state_).SmiSub(compiler::TNode<Smi>{tmp17}, compiler::TNode<Smi>{tmp22}));
    3525             :     compiler::TNode<Smi> tmp28;
    3526             :     USE(tmp28);
    3527         112 :     tmp28 = ca_.UncheckedCast<Smi>(CodeStubAssembler(state_).SmiSub(compiler::TNode<Smi>{tmp27}, compiler::TNode<Smi>{tmp20}));
    3528          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 67);
    3529             :     compiler::TNode<BoolT> tmp29;
    3530             :     USE(tmp29);
    3531         112 :     tmp29 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).SmiLessThan(compiler::TNode<Smi>{tmp21}, compiler::TNode<Smi>{tmp22}));
    3532          56 :     ca_.Branch(tmp29, &block5, &block6, tmp12, tmp13, tmp14, tmp15, tmp16, tmp17, tmp18, tmp19, tmp20, tmp21, tmp22, tmp24, tmp25, tmp26, tmp28);
    3533             :   }
    3534             : 
    3535          56 :   if (block5.is_used()) {
    3536             :     compiler::TNode<Context> tmp30;
    3537             :     compiler::TNode<RawPtrT> tmp31;
    3538             :     compiler::TNode<RawPtrT> tmp32;
    3539             :     compiler::TNode<IntPtrT> tmp33;
    3540             :     compiler::TNode<JSArray> tmp34;
    3541             :     compiler::TNode<Smi> tmp35;
    3542             :     compiler::TNode<Smi> tmp36;
    3543             :     compiler::TNode<Smi> tmp37;
    3544             :     compiler::TNode<Smi> tmp38;
    3545             :     compiler::TNode<Smi> tmp39;
    3546             :     compiler::TNode<Smi> tmp40;
    3547             :     compiler::TNode<FixedArrayBase> tmp41;
    3548             :     compiler::TNode<Smi> tmp42;
    3549             :     compiler::TNode<Smi> tmp43;
    3550             :     compiler::TNode<Smi> tmp44;
    3551             :     ca_.Bind(&block5, &tmp30, &tmp31, &tmp32, &tmp33, &tmp34, &tmp35, &tmp36, &tmp37, &tmp38, &tmp39, &tmp40, &tmp41, &tmp42, &tmp43, &tmp44);
    3552          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 70);
    3553             :     compiler::TNode<FixedArray> tmp45;
    3554             :     USE(tmp45);
    3555         168 :     tmp45 = ca_.UncheckedCast<FixedArray>(BaseBuiltinsFromDSLAssembler(state_).UnsafeCast10FixedArray(compiler::TNode<Context>{tmp30}, compiler::TNode<Object>{tmp41}));
    3556          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 69);
    3557         168 :     ArraySpliceBuiltinsFromDSLAssembler(state_).DoMoveElements10FixedArray(compiler::TNode<FixedArray>{tmp45}, compiler::TNode<Smi>{tmp42}, compiler::TNode<Smi>{tmp43}, compiler::TNode<Smi>{tmp44});
    3558          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 72);
    3559             :     compiler::TNode<FixedArray> tmp46;
    3560             :     USE(tmp46);
    3561         168 :     tmp46 = ca_.UncheckedCast<FixedArray>(BaseBuiltinsFromDSLAssembler(state_).UnsafeCast10FixedArray(compiler::TNode<Context>{tmp30}, compiler::TNode<Object>{tmp41}));
    3562          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 71);
    3563         168 :     ArraySpliceBuiltinsFromDSLAssembler(state_).StoreHoles10FixedArray(compiler::TNode<FixedArray>{tmp46}, compiler::TNode<Smi>{tmp36}, compiler::TNode<Smi>{tmp35});
    3564          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 67);
    3565             :     ca_.Goto(&block7, tmp30, tmp31, tmp32, tmp33, tmp34, tmp35, tmp36, tmp37, tmp38, tmp39, tmp40, tmp41, tmp42, tmp43, tmp44);
    3566             :   }
    3567             : 
    3568          56 :   if (block6.is_used()) {
    3569             :     compiler::TNode<Context> tmp47;
    3570             :     compiler::TNode<RawPtrT> tmp48;
    3571             :     compiler::TNode<RawPtrT> tmp49;
    3572             :     compiler::TNode<IntPtrT> tmp50;
    3573             :     compiler::TNode<JSArray> tmp51;
    3574             :     compiler::TNode<Smi> tmp52;
    3575             :     compiler::TNode<Smi> tmp53;
    3576             :     compiler::TNode<Smi> tmp54;
    3577             :     compiler::TNode<Smi> tmp55;
    3578             :     compiler::TNode<Smi> tmp56;
    3579             :     compiler::TNode<Smi> tmp57;
    3580             :     compiler::TNode<FixedArrayBase> tmp58;
    3581             :     compiler::TNode<Smi> tmp59;
    3582             :     compiler::TNode<Smi> tmp60;
    3583             :     compiler::TNode<Smi> tmp61;
    3584             :     ca_.Bind(&block6, &tmp47, &tmp48, &tmp49, &tmp50, &tmp51, &tmp52, &tmp53, &tmp54, &tmp55, &tmp56, &tmp57, &tmp58, &tmp59, &tmp60, &tmp61);
    3585          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 73);
    3586             :     compiler::TNode<BoolT> tmp62;
    3587             :     USE(tmp62);
    3588         112 :     tmp62 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).SmiGreaterThan(compiler::TNode<Smi>{tmp56}, compiler::TNode<Smi>{tmp57}));
    3589          56 :     ca_.Branch(tmp62, &block8, &block9, tmp47, tmp48, tmp49, tmp50, tmp51, tmp52, tmp53, tmp54, tmp55, tmp56, tmp57, tmp58, tmp59, tmp60, tmp61);
    3590             :   }
    3591             : 
    3592          56 :   if (block8.is_used()) {
    3593             :     compiler::TNode<Context> tmp63;
    3594             :     compiler::TNode<RawPtrT> tmp64;
    3595             :     compiler::TNode<RawPtrT> tmp65;
    3596             :     compiler::TNode<IntPtrT> tmp66;
    3597             :     compiler::TNode<JSArray> tmp67;
    3598             :     compiler::TNode<Smi> tmp68;
    3599             :     compiler::TNode<Smi> tmp69;
    3600             :     compiler::TNode<Smi> tmp70;
    3601             :     compiler::TNode<Smi> tmp71;
    3602             :     compiler::TNode<Smi> tmp72;
    3603             :     compiler::TNode<Smi> tmp73;
    3604             :     compiler::TNode<FixedArrayBase> tmp74;
    3605             :     compiler::TNode<Smi> tmp75;
    3606             :     compiler::TNode<Smi> tmp76;
    3607             :     compiler::TNode<Smi> tmp77;
    3608             :     ca_.Bind(&block8, &tmp63, &tmp64, &tmp65, &tmp66, &tmp67, &tmp68, &tmp69, &tmp70, &tmp71, &tmp72, &tmp73, &tmp74, &tmp75, &tmp76, &tmp77);
    3609          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 75);
    3610          56 :     compiler::TNode<IntPtrT> tmp78 = ca_.IntPtrConstant(FixedArrayBase::kLengthOffset);
    3611             :     USE(tmp78);
    3612         168 :     compiler::TNode<Smi>tmp79 = CodeStubAssembler(state_).LoadReference<Smi>(CodeStubAssembler::Reference{tmp74, tmp78});
    3613             :     compiler::TNode<BoolT> tmp80;
    3614             :     USE(tmp80);
    3615         112 :     tmp80 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).SmiLessThanOrEqual(compiler::TNode<Smi>{tmp69}, compiler::TNode<Smi>{tmp79}));
    3616          56 :     ca_.Branch(tmp80, &block10, &block11, tmp63, tmp64, tmp65, tmp66, tmp67, tmp68, tmp69, tmp70, tmp71, tmp72, tmp73, tmp74, tmp75, tmp76, tmp77);
    3617             :   }
    3618             : 
    3619          56 :   if (block10.is_used()) {
    3620             :     compiler::TNode<Context> tmp81;
    3621             :     compiler::TNode<RawPtrT> tmp82;
    3622             :     compiler::TNode<RawPtrT> tmp83;
    3623             :     compiler::TNode<IntPtrT> tmp84;
    3624             :     compiler::TNode<JSArray> tmp85;
    3625             :     compiler::TNode<Smi> tmp86;
    3626             :     compiler::TNode<Smi> tmp87;
    3627             :     compiler::TNode<Smi> tmp88;
    3628             :     compiler::TNode<Smi> tmp89;
    3629             :     compiler::TNode<Smi> tmp90;
    3630             :     compiler::TNode<Smi> tmp91;
    3631             :     compiler::TNode<FixedArrayBase> tmp92;
    3632             :     compiler::TNode<Smi> tmp93;
    3633             :     compiler::TNode<Smi> tmp94;
    3634             :     compiler::TNode<Smi> tmp95;
    3635             :     ca_.Bind(&block10, &tmp81, &tmp82, &tmp83, &tmp84, &tmp85, &tmp86, &tmp87, &tmp88, &tmp89, &tmp90, &tmp91, &tmp92, &tmp93, &tmp94, &tmp95);
    3636          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 77);
    3637             :     compiler::TNode<FixedArray> tmp96;
    3638             :     USE(tmp96);
    3639         168 :     tmp96 = ca_.UncheckedCast<FixedArray>(BaseBuiltinsFromDSLAssembler(state_).UnsafeCast10FixedArray(compiler::TNode<Context>{tmp81}, compiler::TNode<Object>{tmp92}));
    3640          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 76);
    3641         168 :     ArraySpliceBuiltinsFromDSLAssembler(state_).DoMoveElements10FixedArray(compiler::TNode<FixedArray>{tmp96}, compiler::TNode<Smi>{tmp93}, compiler::TNode<Smi>{tmp94}, compiler::TNode<Smi>{tmp95});
    3642          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 75);
    3643             :     ca_.Goto(&block12, tmp81, tmp82, tmp83, tmp84, tmp85, tmp86, tmp87, tmp88, tmp89, tmp90, tmp91, tmp92, tmp93, tmp94, tmp95);
    3644             :   }
    3645             : 
    3646          56 :   if (block11.is_used()) {
    3647             :     compiler::TNode<Context> tmp97;
    3648             :     compiler::TNode<RawPtrT> tmp98;
    3649             :     compiler::TNode<RawPtrT> tmp99;
    3650             :     compiler::TNode<IntPtrT> tmp100;
    3651             :     compiler::TNode<JSArray> tmp101;
    3652             :     compiler::TNode<Smi> tmp102;
    3653             :     compiler::TNode<Smi> tmp103;
    3654             :     compiler::TNode<Smi> tmp104;
    3655             :     compiler::TNode<Smi> tmp105;
    3656             :     compiler::TNode<Smi> tmp106;
    3657             :     compiler::TNode<Smi> tmp107;
    3658             :     compiler::TNode<FixedArrayBase> tmp108;
    3659             :     compiler::TNode<Smi> tmp109;
    3660             :     compiler::TNode<Smi> tmp110;
    3661             :     compiler::TNode<Smi> tmp111;
    3662             :     ca_.Bind(&block11, &tmp97, &tmp98, &tmp99, &tmp100, &tmp101, &tmp102, &tmp103, &tmp104, &tmp105, &tmp106, &tmp107, &tmp108, &tmp109, &tmp110, &tmp111);
    3663          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 80);
    3664             :     compiler::TNode<Smi> tmp112;
    3665             :     USE(tmp112);
    3666         112 :     tmp112 = ca_.UncheckedCast<Smi>(CodeStubAssembler(state_).CalculateNewElementsCapacity(compiler::TNode<Smi>{tmp103}));
    3667          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 82);
    3668             :     compiler::TNode<Smi> tmp113;
    3669             :     USE(tmp113);
    3670         168 :     tmp113 = ca_.UncheckedCast<Smi>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr5ATSmi17ATconstexpr_int31(0));
    3671             :     compiler::TNode<FixedArray> tmp114;
    3672             :     USE(tmp114);
    3673         168 :     tmp114 = ca_.UncheckedCast<FixedArray>(ArraySpliceBuiltinsFromDSLAssembler(state_).Extract10FixedArray(compiler::TNode<Context>{tmp97}, compiler::TNode<FixedArrayBase>{tmp108}, compiler::TNode<Smi>{tmp113}, compiler::TNode<Smi>{tmp105}, compiler::TNode<Smi>{tmp112}));
    3674          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 81);
    3675          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 83);
    3676          56 :     compiler::TNode<IntPtrT> tmp115 = ca_.IntPtrConstant(JSObject::kElementsOffset);
    3677             :     USE(tmp115);
    3678         112 :     CodeStubAssembler(state_).StoreReference(CodeStubAssembler::Reference{tmp101, tmp115}, tmp114);
    3679          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 84);
    3680          56 :     compiler::TNode<IntPtrT> tmp116 = ca_.IntPtrConstant(FixedArrayBase::kLengthOffset);
    3681             :     USE(tmp116);
    3682         168 :     compiler::TNode<Smi>tmp117 = CodeStubAssembler(state_).LoadReference<Smi>(CodeStubAssembler::Reference{tmp108, tmp116});
    3683             :     compiler::TNode<Smi> tmp118;
    3684             :     USE(tmp118);
    3685         168 :     tmp118 = ca_.UncheckedCast<Smi>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr5ATSmi17ATconstexpr_int31(0));
    3686             :     compiler::TNode<BoolT> tmp119;
    3687             :     USE(tmp119);
    3688         112 :     tmp119 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).SmiGreaterThan(compiler::TNode<Smi>{tmp117}, compiler::TNode<Smi>{tmp118}));
    3689          56 :     ca_.Branch(tmp119, &block13, &block14, tmp97, tmp98, tmp99, tmp100, tmp101, tmp102, tmp103, tmp104, tmp105, tmp106, tmp107, tmp108, tmp109, tmp110, tmp111, tmp112, tmp114);
    3690             :   }
    3691             : 
    3692          56 :   if (block13.is_used()) {
    3693             :     compiler::TNode<Context> tmp120;
    3694             :     compiler::TNode<RawPtrT> tmp121;
    3695             :     compiler::TNode<RawPtrT> tmp122;
    3696             :     compiler::TNode<IntPtrT> tmp123;
    3697             :     compiler::TNode<JSArray> tmp124;
    3698             :     compiler::TNode<Smi> tmp125;
    3699             :     compiler::TNode<Smi> tmp126;
    3700             :     compiler::TNode<Smi> tmp127;
    3701             :     compiler::TNode<Smi> tmp128;
    3702             :     compiler::TNode<Smi> tmp129;
    3703             :     compiler::TNode<Smi> tmp130;
    3704             :     compiler::TNode<FixedArrayBase> tmp131;
    3705             :     compiler::TNode<Smi> tmp132;
    3706             :     compiler::TNode<Smi> tmp133;
    3707             :     compiler::TNode<Smi> tmp134;
    3708             :     compiler::TNode<Smi> tmp135;
    3709             :     compiler::TNode<FixedArray> tmp136;
    3710             :     ca_.Bind(&block13, &tmp120, &tmp121, &tmp122, &tmp123, &tmp124, &tmp125, &tmp126, &tmp127, &tmp128, &tmp129, &tmp130, &tmp131, &tmp132, &tmp133, &tmp134, &tmp135, &tmp136);
    3711          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 86);
    3712             :     compiler::TNode<FixedArray> tmp137;
    3713             :     USE(tmp137);
    3714         168 :     tmp137 = ca_.UncheckedCast<FixedArray>(BaseBuiltinsFromDSLAssembler(state_).UnsafeCast10FixedArray(compiler::TNode<Context>{tmp120}, compiler::TNode<Object>{tmp131}));
    3715          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 87);
    3716          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 85);
    3717         168 :     ArraySpliceBuiltinsFromDSLAssembler(state_).DoCopyElements10FixedArray(compiler::TNode<FixedArray>{tmp136}, compiler::TNode<Smi>{tmp132}, compiler::TNode<FixedArray>{tmp137}, compiler::TNode<Smi>{tmp133}, compiler::TNode<Smi>{tmp134});
    3718          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 84);
    3719             :     ca_.Goto(&block14, tmp120, tmp121, tmp122, tmp123, tmp124, tmp125, tmp126, tmp127, tmp128, tmp129, tmp130, tmp131, tmp132, tmp133, tmp134, tmp135, tmp136);
    3720             :   }
    3721             : 
    3722          56 :   if (block14.is_used()) {
    3723             :     compiler::TNode<Context> tmp138;
    3724             :     compiler::TNode<RawPtrT> tmp139;
    3725             :     compiler::TNode<RawPtrT> tmp140;
    3726             :     compiler::TNode<IntPtrT> tmp141;
    3727             :     compiler::TNode<JSArray> tmp142;
    3728             :     compiler::TNode<Smi> tmp143;
    3729             :     compiler::TNode<Smi> tmp144;
    3730             :     compiler::TNode<Smi> tmp145;
    3731             :     compiler::TNode<Smi> tmp146;
    3732             :     compiler::TNode<Smi> tmp147;
    3733             :     compiler::TNode<Smi> tmp148;
    3734             :     compiler::TNode<FixedArrayBase> tmp149;
    3735             :     compiler::TNode<Smi> tmp150;
    3736             :     compiler::TNode<Smi> tmp151;
    3737             :     compiler::TNode<Smi> tmp152;
    3738             :     compiler::TNode<Smi> tmp153;
    3739             :     compiler::TNode<FixedArray> tmp154;
    3740             :     ca_.Bind(&block14, &tmp138, &tmp139, &tmp140, &tmp141, &tmp142, &tmp143, &tmp144, &tmp145, &tmp146, &tmp147, &tmp148, &tmp149, &tmp150, &tmp151, &tmp152, &tmp153, &tmp154);
    3741          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 78);
    3742          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 75);
    3743             :     ca_.Goto(&block12, tmp138, tmp139, tmp140, tmp141, tmp142, tmp143, tmp144, tmp145, tmp146, tmp147, tmp148, tmp149, tmp150, tmp151, tmp152);
    3744             :   }
    3745             : 
    3746          56 :   if (block12.is_used()) {
    3747             :     compiler::TNode<Context> tmp155;
    3748             :     compiler::TNode<RawPtrT> tmp156;
    3749             :     compiler::TNode<RawPtrT> tmp157;
    3750             :     compiler::TNode<IntPtrT> tmp158;
    3751             :     compiler::TNode<JSArray> tmp159;
    3752             :     compiler::TNode<Smi> tmp160;
    3753             :     compiler::TNode<Smi> tmp161;
    3754             :     compiler::TNode<Smi> tmp162;
    3755             :     compiler::TNode<Smi> tmp163;
    3756             :     compiler::TNode<Smi> tmp164;
    3757             :     compiler::TNode<Smi> tmp165;
    3758             :     compiler::TNode<FixedArrayBase> tmp166;
    3759             :     compiler::TNode<Smi> tmp167;
    3760             :     compiler::TNode<Smi> tmp168;
    3761             :     compiler::TNode<Smi> tmp169;
    3762             :     ca_.Bind(&block12, &tmp155, &tmp156, &tmp157, &tmp158, &tmp159, &tmp160, &tmp161, &tmp162, &tmp163, &tmp164, &tmp165, &tmp166, &tmp167, &tmp168, &tmp169);
    3763          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 73);
    3764             :     ca_.Goto(&block9, tmp155, tmp156, tmp157, tmp158, tmp159, tmp160, tmp161, tmp162, tmp163, tmp164, tmp165, tmp166, tmp167, tmp168, tmp169);
    3765             :   }
    3766             : 
    3767          56 :   if (block9.is_used()) {
    3768             :     compiler::TNode<Context> tmp170;
    3769             :     compiler::TNode<RawPtrT> tmp171;
    3770             :     compiler::TNode<RawPtrT> tmp172;
    3771             :     compiler::TNode<IntPtrT> tmp173;
    3772             :     compiler::TNode<JSArray> tmp174;
    3773             :     compiler::TNode<Smi> tmp175;
    3774             :     compiler::TNode<Smi> tmp176;
    3775             :     compiler::TNode<Smi> tmp177;
    3776             :     compiler::TNode<Smi> tmp178;
    3777             :     compiler::TNode<Smi> tmp179;
    3778             :     compiler::TNode<Smi> tmp180;
    3779             :     compiler::TNode<FixedArrayBase> tmp181;
    3780             :     compiler::TNode<Smi> tmp182;
    3781             :     compiler::TNode<Smi> tmp183;
    3782             :     compiler::TNode<Smi> tmp184;
    3783             :     ca_.Bind(&block9, &tmp170, &tmp171, &tmp172, &tmp173, &tmp174, &tmp175, &tmp176, &tmp177, &tmp178, &tmp179, &tmp180, &tmp181, &tmp182, &tmp183, &tmp184);
    3784          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 67);
    3785             :     ca_.Goto(&block7, tmp170, tmp171, tmp172, tmp173, tmp174, tmp175, tmp176, tmp177, tmp178, tmp179, tmp180, tmp181, tmp182, tmp183, tmp184);
    3786             :   }
    3787             : 
    3788          56 :   if (block7.is_used()) {
    3789             :     compiler::TNode<Context> tmp185;
    3790             :     compiler::TNode<RawPtrT> tmp186;
    3791             :     compiler::TNode<RawPtrT> tmp187;
    3792             :     compiler::TNode<IntPtrT> tmp188;
    3793             :     compiler::TNode<JSArray> tmp189;
    3794             :     compiler::TNode<Smi> tmp190;
    3795             :     compiler::TNode<Smi> tmp191;
    3796             :     compiler::TNode<Smi> tmp192;
    3797             :     compiler::TNode<Smi> tmp193;
    3798             :     compiler::TNode<Smi> tmp194;
    3799             :     compiler::TNode<Smi> tmp195;
    3800             :     compiler::TNode<FixedArrayBase> tmp196;
    3801             :     compiler::TNode<Smi> tmp197;
    3802             :     compiler::TNode<Smi> tmp198;
    3803             :     compiler::TNode<Smi> tmp199;
    3804             :     ca_.Bind(&block7, &tmp185, &tmp186, &tmp187, &tmp188, &tmp189, &tmp190, &tmp191, &tmp192, &tmp193, &tmp194, &tmp195, &tmp196, &tmp197, &tmp198, &tmp199);
    3805          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 62);
    3806             :     ca_.Goto(&block4, tmp185, tmp186, tmp187, tmp188, tmp189, tmp190, tmp191, tmp192, tmp193, tmp194, tmp195);
    3807             :   }
    3808             : 
    3809          56 :   if (block4.is_used()) {
    3810             :     compiler::TNode<Context> tmp200;
    3811             :     compiler::TNode<RawPtrT> tmp201;
    3812             :     compiler::TNode<RawPtrT> tmp202;
    3813             :     compiler::TNode<IntPtrT> tmp203;
    3814             :     compiler::TNode<JSArray> tmp204;
    3815             :     compiler::TNode<Smi> tmp205;
    3816             :     compiler::TNode<Smi> tmp206;
    3817             :     compiler::TNode<Smi> tmp207;
    3818             :     compiler::TNode<Smi> tmp208;
    3819             :     compiler::TNode<Smi> tmp209;
    3820             :     compiler::TNode<Smi> tmp210;
    3821             :     ca_.Bind(&block4, &tmp200, &tmp201, &tmp202, &tmp203, &tmp204, &tmp205, &tmp206, &tmp207, &tmp208, &tmp209, &tmp210);
    3822          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 94);
    3823          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 95);
    3824             :     compiler::TNode<Smi> tmp211;
    3825             :     USE(tmp211);
    3826         168 :     tmp211 = ca_.UncheckedCast<Smi>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr5ATSmi17ATconstexpr_int31(0));
    3827             :     compiler::TNode<BoolT> tmp212;
    3828             :     USE(tmp212);
    3829         112 :     tmp212 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).SmiGreaterThan(compiler::TNode<Smi>{tmp209}, compiler::TNode<Smi>{tmp211}));
    3830          56 :     ca_.Branch(tmp212, &block15, &block16, tmp200, tmp201, tmp202, tmp203, tmp204, tmp205, tmp206, tmp207, tmp208, tmp209, tmp210, tmp208);
    3831             :   }
    3832             : 
    3833          56 :   if (block15.is_used()) {
    3834             :     compiler::TNode<Context> tmp213;
    3835             :     compiler::TNode<RawPtrT> tmp214;
    3836             :     compiler::TNode<RawPtrT> tmp215;
    3837             :     compiler::TNode<IntPtrT> tmp216;
    3838             :     compiler::TNode<JSArray> tmp217;
    3839             :     compiler::TNode<Smi> tmp218;
    3840             :     compiler::TNode<Smi> tmp219;
    3841             :     compiler::TNode<Smi> tmp220;
    3842             :     compiler::TNode<Smi> tmp221;
    3843             :     compiler::TNode<Smi> tmp222;
    3844             :     compiler::TNode<Smi> tmp223;
    3845             :     compiler::TNode<Smi> tmp224;
    3846             :     ca_.Bind(&block15, &tmp213, &tmp214, &tmp215, &tmp216, &tmp217, &tmp218, &tmp219, &tmp220, &tmp221, &tmp222, &tmp223, &tmp224);
    3847          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 97);
    3848          56 :     compiler::TNode<IntPtrT> tmp225 = ca_.IntPtrConstant(JSObject::kElementsOffset);
    3849             :     USE(tmp225);
    3850         112 :     compiler::TNode<FixedArrayBase>tmp226 = CodeStubAssembler(state_).LoadReference<FixedArrayBase>(CodeStubAssembler::Reference{tmp217, tmp225});
    3851             :     compiler::TNode<FixedArray> tmp227;
    3852             :     USE(tmp227);
    3853         168 :     tmp227 = ca_.UncheckedCast<FixedArray>(BaseBuiltinsFromDSLAssembler(state_).UnsafeCast10FixedArray(compiler::TNode<Context>{tmp213}, compiler::TNode<Object>{tmp226}));
    3854          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 96);
    3855          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 98);
    3856             :     compiler::TNode<IntPtrT> tmp228;
    3857             :     USE(tmp228);
    3858         168 :     tmp228 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATintptr17ATconstexpr_int31(2));
    3859             :     ca_.Goto(&block19, tmp213, tmp214, tmp215, tmp216, tmp217, tmp218, tmp219, tmp220, tmp221, tmp222, tmp223, tmp224, tmp227, tmp228);
    3860             :   }
    3861             : 
    3862          56 :   if (block19.is_used()) {
    3863             :     compiler::TNode<Context> tmp229;
    3864             :     compiler::TNode<RawPtrT> tmp230;
    3865             :     compiler::TNode<RawPtrT> tmp231;
    3866             :     compiler::TNode<IntPtrT> tmp232;
    3867             :     compiler::TNode<JSArray> tmp233;
    3868             :     compiler::TNode<Smi> tmp234;
    3869             :     compiler::TNode<Smi> tmp235;
    3870             :     compiler::TNode<Smi> tmp236;
    3871             :     compiler::TNode<Smi> tmp237;
    3872             :     compiler::TNode<Smi> tmp238;
    3873             :     compiler::TNode<Smi> tmp239;
    3874             :     compiler::TNode<Smi> tmp240;
    3875             :     compiler::TNode<FixedArray> tmp241;
    3876             :     compiler::TNode<IntPtrT> tmp242;
    3877             :     ca_.Bind(&block19, &tmp229, &tmp230, &tmp231, &tmp232, &tmp233, &tmp234, &tmp235, &tmp236, &tmp237, &tmp238, &tmp239, &tmp240, &tmp241, &tmp242);
    3878             :     compiler::TNode<BoolT> tmp243;
    3879             :     USE(tmp243);
    3880         224 :     tmp243 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).IntPtrLessThan(compiler::TNode<IntPtrT>{tmp242}, compiler::TNode<IntPtrT>{tmp232}));
    3881          56 :     ca_.Branch(tmp243, &block17, &block18, tmp229, tmp230, tmp231, tmp232, tmp233, tmp234, tmp235, tmp236, tmp237, tmp238, tmp239, tmp240, tmp241, tmp242);
    3882             :   }
    3883             : 
    3884          56 :   if (block17.is_used()) {
    3885             :     compiler::TNode<Context> tmp244;
    3886             :     compiler::TNode<RawPtrT> tmp245;
    3887             :     compiler::TNode<RawPtrT> tmp246;
    3888             :     compiler::TNode<IntPtrT> tmp247;
    3889             :     compiler::TNode<JSArray> tmp248;
    3890             :     compiler::TNode<Smi> tmp249;
    3891             :     compiler::TNode<Smi> tmp250;
    3892             :     compiler::TNode<Smi> tmp251;
    3893             :     compiler::TNode<Smi> tmp252;
    3894             :     compiler::TNode<Smi> tmp253;
    3895             :     compiler::TNode<Smi> tmp254;
    3896             :     compiler::TNode<Smi> tmp255;
    3897             :     compiler::TNode<FixedArray> tmp256;
    3898             :     compiler::TNode<IntPtrT> tmp257;
    3899             :     ca_.Bind(&block17, &tmp244, &tmp245, &tmp246, &tmp247, &tmp248, &tmp249, &tmp250, &tmp251, &tmp252, &tmp253, &tmp254, &tmp255, &tmp256, &tmp257);
    3900          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 99);
    3901             :     compiler::TNode<Object> tmp258;
    3902             :     USE(tmp258);
    3903         112 :     tmp258 = ca_.UncheckedCast<Object>(CodeStubAssembler(state_).GetArgumentValue(BaseBuiltinsFromDSLAssembler::Arguments{compiler::TNode<RawPtrT>{tmp245}, compiler::TNode<RawPtrT>{tmp246}, compiler::TNode<IntPtrT>{tmp247}}, compiler::TNode<IntPtrT>{tmp257}));
    3904          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 102);
    3905             :     compiler::TNode<Smi> tmp259;
    3906             :     USE(tmp259);
    3907         168 :     tmp259 = ca_.UncheckedCast<Smi>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr5ATSmi17ATconstexpr_int31(1));
    3908             :     compiler::TNode<Smi> tmp260;
    3909             :     USE(tmp260);
    3910         112 :     tmp260 = ca_.UncheckedCast<Smi>(CodeStubAssembler(state_).SmiAdd(compiler::TNode<Smi>{tmp255}, compiler::TNode<Smi>{tmp259}));
    3911             :     compiler::TNode<Object> tmp261;
    3912             :     USE(tmp261);
    3913         168 :     tmp261 = ca_.UncheckedCast<Object>(BaseBuiltinsFromDSLAssembler(state_).UnsafeCast20UT5ATSmi10HeapObject(compiler::TNode<Object>{tmp258}));
    3914         168 :     BaseBuiltinsFromDSLAssembler(state_).StoreFixedArrayDirect(compiler::TNode<FixedArray>{tmp256}, compiler::TNode<Smi>{tmp255}, compiler::TNode<Object>{tmp261});
    3915          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 98);
    3916             :     ca_.Goto(&block20, tmp244, tmp245, tmp246, tmp247, tmp248, tmp249, tmp250, tmp251, tmp252, tmp253, tmp254, tmp260, tmp256, tmp257);
    3917             :   }
    3918             : 
    3919          56 :   if (block20.is_used()) {
    3920             :     compiler::TNode<Context> tmp262;
    3921             :     compiler::TNode<RawPtrT> tmp263;
    3922             :     compiler::TNode<RawPtrT> tmp264;
    3923             :     compiler::TNode<IntPtrT> tmp265;
    3924             :     compiler::TNode<JSArray> tmp266;
    3925             :     compiler::TNode<Smi> tmp267;
    3926             :     compiler::TNode<Smi> tmp268;
    3927             :     compiler::TNode<Smi> tmp269;
    3928             :     compiler::TNode<Smi> tmp270;
    3929             :     compiler::TNode<Smi> tmp271;
    3930             :     compiler::TNode<Smi> tmp272;
    3931             :     compiler::TNode<Smi> tmp273;
    3932             :     compiler::TNode<FixedArray> tmp274;
    3933             :     compiler::TNode<IntPtrT> tmp275;
    3934             :     ca_.Bind(&block20, &tmp262, &tmp263, &tmp264, &tmp265, &tmp266, &tmp267, &tmp268, &tmp269, &tmp270, &tmp271, &tmp272, &tmp273, &tmp274, &tmp275);
    3935             :     compiler::TNode<IntPtrT> tmp276;
    3936             :     USE(tmp276);
    3937         168 :     tmp276 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATintptr17ATconstexpr_int31(1));
    3938             :     compiler::TNode<IntPtrT> tmp277;
    3939             :     USE(tmp277);
    3940         112 :     tmp277 = ca_.UncheckedCast<IntPtrT>(CodeStubAssembler(state_).IntPtrAdd(compiler::TNode<IntPtrT>{tmp275}, compiler::TNode<IntPtrT>{tmp276}));
    3941             :     ca_.Goto(&block19, tmp262, tmp263, tmp264, tmp265, tmp266, tmp267, tmp268, tmp269, tmp270, tmp271, tmp272, tmp273, tmp274, tmp277);
    3942             :   }
    3943             : 
    3944          56 :   if (block18.is_used()) {
    3945             :     compiler::TNode<Context> tmp278;
    3946             :     compiler::TNode<RawPtrT> tmp279;
    3947             :     compiler::TNode<RawPtrT> tmp280;
    3948             :     compiler::TNode<IntPtrT> tmp281;
    3949             :     compiler::TNode<JSArray> tmp282;
    3950             :     compiler::TNode<Smi> tmp283;
    3951             :     compiler::TNode<Smi> tmp284;
    3952             :     compiler::TNode<Smi> tmp285;
    3953             :     compiler::TNode<Smi> tmp286;
    3954             :     compiler::TNode<Smi> tmp287;
    3955             :     compiler::TNode<Smi> tmp288;
    3956             :     compiler::TNode<Smi> tmp289;
    3957             :     compiler::TNode<FixedArray> tmp290;
    3958             :     compiler::TNode<IntPtrT> tmp291;
    3959             :     ca_.Bind(&block18, &tmp278, &tmp279, &tmp280, &tmp281, &tmp282, &tmp283, &tmp284, &tmp285, &tmp286, &tmp287, &tmp288, &tmp289, &tmp290, &tmp291);
    3960          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 95);
    3961             :     ca_.Goto(&block16, tmp278, tmp279, tmp280, tmp281, tmp282, tmp283, tmp284, tmp285, tmp286, tmp287, tmp288, tmp289);
    3962             :   }
    3963             : 
    3964          56 :   if (block16.is_used()) {
    3965             :     compiler::TNode<Context> tmp292;
    3966             :     compiler::TNode<RawPtrT> tmp293;
    3967             :     compiler::TNode<RawPtrT> tmp294;
    3968             :     compiler::TNode<IntPtrT> tmp295;
    3969             :     compiler::TNode<JSArray> tmp296;
    3970             :     compiler::TNode<Smi> tmp297;
    3971             :     compiler::TNode<Smi> tmp298;
    3972             :     compiler::TNode<Smi> tmp299;
    3973             :     compiler::TNode<Smi> tmp300;
    3974             :     compiler::TNode<Smi> tmp301;
    3975             :     compiler::TNode<Smi> tmp302;
    3976             :     compiler::TNode<Smi> tmp303;
    3977             :     ca_.Bind(&block16, &tmp292, &tmp293, &tmp294, &tmp295, &tmp296, &tmp297, &tmp298, &tmp299, &tmp300, &tmp301, &tmp302, &tmp303);
    3978          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 107);
    3979          56 :     compiler::TNode<IntPtrT> tmp304 = ca_.IntPtrConstant(JSArray::kLengthOffset);
    3980             :     USE(tmp304);
    3981         112 :     CodeStubAssembler(state_).StoreReference(CodeStubAssembler::Reference{tmp296, tmp304}, tmp298);
    3982          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 58);
    3983          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 54);
    3984             :     ca_.Goto(&block2, tmp292, tmp293, tmp294, tmp295, tmp296, tmp297, tmp298, tmp299, tmp300, tmp301, tmp302);
    3985             :   }
    3986             : 
    3987          56 :   if (block2.is_used()) {
    3988             :     compiler::TNode<Context> tmp305;
    3989             :     compiler::TNode<RawPtrT> tmp306;
    3990             :     compiler::TNode<RawPtrT> tmp307;
    3991             :     compiler::TNode<IntPtrT> tmp308;
    3992             :     compiler::TNode<JSArray> tmp309;
    3993             :     compiler::TNode<Smi> tmp310;
    3994             :     compiler::TNode<Smi> tmp311;
    3995             :     compiler::TNode<Smi> tmp312;
    3996             :     compiler::TNode<Smi> tmp313;
    3997             :     compiler::TNode<Smi> tmp314;
    3998             :     compiler::TNode<Smi> tmp315;
    3999             :     ca_.Bind(&block2, &tmp305, &tmp306, &tmp307, &tmp308, &tmp309, &tmp310, &tmp311, &tmp312, &tmp313, &tmp314, &tmp315);
    4000             :     ca_.Goto(&block21, tmp305, tmp306, tmp307, tmp308, tmp309, tmp310, tmp311, tmp312, tmp313, tmp314, tmp315);
    4001             :   }
    4002             : 
    4003          56 :   if (block1.is_used()) {
    4004             :     ca_.Bind(&block1);
    4005           0 :     ca_.Goto(label_Bailout);
    4006             :   }
    4007             : 
    4008             :     compiler::TNode<Context> tmp316;
    4009             :     compiler::TNode<RawPtrT> tmp317;
    4010             :     compiler::TNode<RawPtrT> tmp318;
    4011             :     compiler::TNode<IntPtrT> tmp319;
    4012             :     compiler::TNode<JSArray> tmp320;
    4013             :     compiler::TNode<Smi> tmp321;
    4014             :     compiler::TNode<Smi> tmp322;
    4015             :     compiler::TNode<Smi> tmp323;
    4016             :     compiler::TNode<Smi> tmp324;
    4017             :     compiler::TNode<Smi> tmp325;
    4018             :     compiler::TNode<Smi> tmp326;
    4019             :     ca_.Bind(&block21, &tmp316, &tmp317, &tmp318, &tmp319, &tmp320, &tmp321, &tmp322, &tmp323, &tmp324, &tmp325, &tmp326);
    4020          56 : }
    4021             : 
    4022          56 : void ArraySpliceBuiltinsFromDSLAssembler::FastSplice16FixedDoubleArray20UT5ATSmi10HeapNumber(compiler::TNode<Context> p_context, BaseBuiltinsFromDSLAssembler::Arguments p_args, compiler::TNode<JSArray> p_a, compiler::TNode<Smi> p_length, compiler::TNode<Smi> p_newLength, compiler::TNode<Smi> p_lengthDelta, compiler::TNode<Smi> p_actualStart, compiler::TNode<Smi> p_insertCount, compiler::TNode<Smi> p_actualDeleteCount, compiler::CodeAssemblerLabel* label_Bailout) {
    4023          56 :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSArray, Smi, Smi, Smi, Smi, Smi, Smi> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    4024             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSArray, Smi, Smi, Smi, Smi, Smi, Smi> block3(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    4025             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSArray, Smi, Smi, Smi, Smi, Smi, Smi, FixedArrayBase, Smi, Smi, Smi> block5(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    4026             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSArray, Smi, Smi, Smi, Smi, Smi, Smi, FixedArrayBase, Smi, Smi, Smi> block6(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    4027             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSArray, Smi, Smi, Smi, Smi, Smi, Smi, FixedArrayBase, Smi, Smi, Smi> block8(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    4028             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSArray, Smi, Smi, Smi, Smi, Smi, Smi, FixedArrayBase, Smi, Smi, Smi> block10(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    4029             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSArray, Smi, Smi, Smi, Smi, Smi, Smi, FixedArrayBase, Smi, Smi, Smi> block11(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    4030             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSArray, Smi, Smi, Smi, Smi, Smi, Smi, FixedArrayBase, Smi, Smi, Smi, Smi, FixedDoubleArray> block13(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    4031             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSArray, Smi, Smi, Smi, Smi, Smi, Smi, FixedArrayBase, Smi, Smi, Smi, Smi, FixedDoubleArray> block14(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    4032             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSArray, Smi, Smi, Smi, Smi, Smi, Smi, FixedArrayBase, Smi, Smi, Smi> block12(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    4033             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSArray, Smi, Smi, Smi, Smi, Smi, Smi, FixedArrayBase, Smi, Smi, Smi> block9(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    4034             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSArray, Smi, Smi, Smi, Smi, Smi, Smi, FixedArrayBase, Smi, Smi, Smi> block7(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    4035             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSArray, Smi, Smi, Smi, Smi, Smi, Smi> block4(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    4036             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSArray, Smi, Smi, Smi, Smi, Smi, Smi, Smi> block15(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    4037             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSArray, Smi, Smi, Smi, Smi, Smi, Smi, Smi, FixedDoubleArray, IntPtrT> block19(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    4038             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSArray, Smi, Smi, Smi, Smi, Smi, Smi, Smi, FixedDoubleArray, IntPtrT> block17(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    4039             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSArray, Smi, Smi, Smi, Smi, Smi, Smi, Smi, FixedDoubleArray, IntPtrT> block20(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    4040             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSArray, Smi, Smi, Smi, Smi, Smi, Smi, Smi, FixedDoubleArray, IntPtrT> block18(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    4041             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSArray, Smi, Smi, Smi, Smi, Smi, Smi, Smi> block16(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    4042             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSArray, Smi, Smi, Smi, Smi, Smi, Smi> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    4043             :   compiler::CodeAssemblerParameterizedLabel<> block1(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    4044             :   compiler::CodeAssemblerParameterizedLabel<Context, RawPtrT, RawPtrT, IntPtrT, JSArray, Smi, Smi, Smi, Smi, Smi, Smi> block21(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    4045             :     ca_.Goto(&block0, p_context, p_args.frame, p_args.base, p_args.length, p_a, p_length, p_newLength, p_lengthDelta, p_actualStart, p_insertCount, p_actualDeleteCount);
    4046             : 
    4047          56 :   if (block0.is_used()) {
    4048             :     compiler::TNode<Context> tmp0;
    4049             :     compiler::TNode<RawPtrT> tmp1;
    4050             :     compiler::TNode<RawPtrT> tmp2;
    4051             :     compiler::TNode<IntPtrT> tmp3;
    4052             :     compiler::TNode<JSArray> tmp4;
    4053             :     compiler::TNode<Smi> tmp5;
    4054             :     compiler::TNode<Smi> tmp6;
    4055             :     compiler::TNode<Smi> tmp7;
    4056             :     compiler::TNode<Smi> tmp8;
    4057             :     compiler::TNode<Smi> tmp9;
    4058             :     compiler::TNode<Smi> tmp10;
    4059             :     ca_.Bind(&block0, &tmp0, &tmp1, &tmp2, &tmp3, &tmp4, &tmp5, &tmp6, &tmp7, &tmp8, &tmp9, &tmp10);
    4060          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 60);
    4061         168 :     ArrayBuiltinsFromDSLAssembler(state_).EnsureWriteableFastElements(compiler::TNode<Context>{tmp0}, compiler::TNode<JSArray>{tmp4});
    4062          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 62);
    4063             :     compiler::TNode<BoolT> tmp11;
    4064             :     USE(tmp11);
    4065         112 :     tmp11 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).SmiNotEqual(compiler::TNode<Smi>{tmp9}, compiler::TNode<Smi>{tmp10}));
    4066          56 :     ca_.Branch(tmp11, &block3, &block4, tmp0, tmp1, tmp2, tmp3, tmp4, tmp5, tmp6, tmp7, tmp8, tmp9, tmp10);
    4067             :   }
    4068             : 
    4069          56 :   if (block3.is_used()) {
    4070             :     compiler::TNode<Context> tmp12;
    4071             :     compiler::TNode<RawPtrT> tmp13;
    4072             :     compiler::TNode<RawPtrT> tmp14;
    4073             :     compiler::TNode<IntPtrT> tmp15;
    4074             :     compiler::TNode<JSArray> tmp16;
    4075             :     compiler::TNode<Smi> tmp17;
    4076             :     compiler::TNode<Smi> tmp18;
    4077             :     compiler::TNode<Smi> tmp19;
    4078             :     compiler::TNode<Smi> tmp20;
    4079             :     compiler::TNode<Smi> tmp21;
    4080             :     compiler::TNode<Smi> tmp22;
    4081             :     ca_.Bind(&block3, &tmp12, &tmp13, &tmp14, &tmp15, &tmp16, &tmp17, &tmp18, &tmp19, &tmp20, &tmp21, &tmp22);
    4082          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 63);
    4083          56 :     compiler::TNode<IntPtrT> tmp23 = ca_.IntPtrConstant(JSObject::kElementsOffset);
    4084             :     USE(tmp23);
    4085         168 :     compiler::TNode<FixedArrayBase>tmp24 = CodeStubAssembler(state_).LoadReference<FixedArrayBase>(CodeStubAssembler::Reference{tmp16, tmp23});
    4086          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 64);
    4087             :     compiler::TNode<Smi> tmp25;
    4088             :     USE(tmp25);
    4089         112 :     tmp25 = ca_.UncheckedCast<Smi>(CodeStubAssembler(state_).SmiAdd(compiler::TNode<Smi>{tmp20}, compiler::TNode<Smi>{tmp21}));
    4090          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 65);
    4091             :     compiler::TNode<Smi> tmp26;
    4092             :     USE(tmp26);
    4093         112 :     tmp26 = ca_.UncheckedCast<Smi>(CodeStubAssembler(state_).SmiAdd(compiler::TNode<Smi>{tmp20}, compiler::TNode<Smi>{tmp22}));
    4094          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 66);
    4095             :     compiler::TNode<Smi> tmp27;
    4096             :     USE(tmp27);
    4097         112 :     tmp27 = ca_.UncheckedCast<Smi>(CodeStubAssembler(state_).SmiSub(compiler::TNode<Smi>{tmp17}, compiler::TNode<Smi>{tmp22}));
    4098             :     compiler::TNode<Smi> tmp28;
    4099             :     USE(tmp28);
    4100         112 :     tmp28 = ca_.UncheckedCast<Smi>(CodeStubAssembler(state_).SmiSub(compiler::TNode<Smi>{tmp27}, compiler::TNode<Smi>{tmp20}));
    4101          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 67);
    4102             :     compiler::TNode<BoolT> tmp29;
    4103             :     USE(tmp29);
    4104         112 :     tmp29 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).SmiLessThan(compiler::TNode<Smi>{tmp21}, compiler::TNode<Smi>{tmp22}));
    4105          56 :     ca_.Branch(tmp29, &block5, &block6, tmp12, tmp13, tmp14, tmp15, tmp16, tmp17, tmp18, tmp19, tmp20, tmp21, tmp22, tmp24, tmp25, tmp26, tmp28);
    4106             :   }
    4107             : 
    4108          56 :   if (block5.is_used()) {
    4109             :     compiler::TNode<Context> tmp30;
    4110             :     compiler::TNode<RawPtrT> tmp31;
    4111             :     compiler::TNode<RawPtrT> tmp32;
    4112             :     compiler::TNode<IntPtrT> tmp33;
    4113             :     compiler::TNode<JSArray> tmp34;
    4114             :     compiler::TNode<Smi> tmp35;
    4115             :     compiler::TNode<Smi> tmp36;
    4116             :     compiler::TNode<Smi> tmp37;
    4117             :     compiler::TNode<Smi> tmp38;
    4118             :     compiler::TNode<Smi> tmp39;
    4119             :     compiler::TNode<Smi> tmp40;
    4120             :     compiler::TNode<FixedArrayBase> tmp41;
    4121             :     compiler::TNode<Smi> tmp42;
    4122             :     compiler::TNode<Smi> tmp43;
    4123             :     compiler::TNode<Smi> tmp44;
    4124             :     ca_.Bind(&block5, &tmp30, &tmp31, &tmp32, &tmp33, &tmp34, &tmp35, &tmp36, &tmp37, &tmp38, &tmp39, &tmp40, &tmp41, &tmp42, &tmp43, &tmp44);
    4125          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 70);
    4126             :     compiler::TNode<FixedDoubleArray> tmp45;
    4127             :     USE(tmp45);
    4128         168 :     tmp45 = ca_.UncheckedCast<FixedDoubleArray>(BaseBuiltinsFromDSLAssembler(state_).UnsafeCast16FixedDoubleArray(compiler::TNode<Context>{tmp30}, compiler::TNode<Object>{tmp41}));
    4129          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 69);
    4130         168 :     ArraySpliceBuiltinsFromDSLAssembler(state_).DoMoveElements16FixedDoubleArray(compiler::TNode<FixedDoubleArray>{tmp45}, compiler::TNode<Smi>{tmp42}, compiler::TNode<Smi>{tmp43}, compiler::TNode<Smi>{tmp44});
    4131          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 72);
    4132             :     compiler::TNode<FixedDoubleArray> tmp46;
    4133             :     USE(tmp46);
    4134         168 :     tmp46 = ca_.UncheckedCast<FixedDoubleArray>(BaseBuiltinsFromDSLAssembler(state_).UnsafeCast16FixedDoubleArray(compiler::TNode<Context>{tmp30}, compiler::TNode<Object>{tmp41}));
    4135          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 71);
    4136         168 :     ArraySpliceBuiltinsFromDSLAssembler(state_).StoreHoles16FixedDoubleArray(compiler::TNode<FixedDoubleArray>{tmp46}, compiler::TNode<Smi>{tmp36}, compiler::TNode<Smi>{tmp35});
    4137          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 67);
    4138             :     ca_.Goto(&block7, tmp30, tmp31, tmp32, tmp33, tmp34, tmp35, tmp36, tmp37, tmp38, tmp39, tmp40, tmp41, tmp42, tmp43, tmp44);
    4139             :   }
    4140             : 
    4141          56 :   if (block6.is_used()) {
    4142             :     compiler::TNode<Context> tmp47;
    4143             :     compiler::TNode<RawPtrT> tmp48;
    4144             :     compiler::TNode<RawPtrT> tmp49;
    4145             :     compiler::TNode<IntPtrT> tmp50;
    4146             :     compiler::TNode<JSArray> tmp51;
    4147             :     compiler::TNode<Smi> tmp52;
    4148             :     compiler::TNode<Smi> tmp53;
    4149             :     compiler::TNode<Smi> tmp54;
    4150             :     compiler::TNode<Smi> tmp55;
    4151             :     compiler::TNode<Smi> tmp56;
    4152             :     compiler::TNode<Smi> tmp57;
    4153             :     compiler::TNode<FixedArrayBase> tmp58;
    4154             :     compiler::TNode<Smi> tmp59;
    4155             :     compiler::TNode<Smi> tmp60;
    4156             :     compiler::TNode<Smi> tmp61;
    4157             :     ca_.Bind(&block6, &tmp47, &tmp48, &tmp49, &tmp50, &tmp51, &tmp52, &tmp53, &tmp54, &tmp55, &tmp56, &tmp57, &tmp58, &tmp59, &tmp60, &tmp61);
    4158          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 73);
    4159             :     compiler::TNode<BoolT> tmp62;
    4160             :     USE(tmp62);
    4161         112 :     tmp62 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).SmiGreaterThan(compiler::TNode<Smi>{tmp56}, compiler::TNode<Smi>{tmp57}));
    4162          56 :     ca_.Branch(tmp62, &block8, &block9, tmp47, tmp48, tmp49, tmp50, tmp51, tmp52, tmp53, tmp54, tmp55, tmp56, tmp57, tmp58, tmp59, tmp60, tmp61);
    4163             :   }
    4164             : 
    4165          56 :   if (block8.is_used()) {
    4166             :     compiler::TNode<Context> tmp63;
    4167             :     compiler::TNode<RawPtrT> tmp64;
    4168             :     compiler::TNode<RawPtrT> tmp65;
    4169             :     compiler::TNode<IntPtrT> tmp66;
    4170             :     compiler::TNode<JSArray> tmp67;
    4171             :     compiler::TNode<Smi> tmp68;
    4172             :     compiler::TNode<Smi> tmp69;
    4173             :     compiler::TNode<Smi> tmp70;
    4174             :     compiler::TNode<Smi> tmp71;
    4175             :     compiler::TNode<Smi> tmp72;
    4176             :     compiler::TNode<Smi> tmp73;
    4177             :     compiler::TNode<FixedArrayBase> tmp74;
    4178             :     compiler::TNode<Smi> tmp75;
    4179             :     compiler::TNode<Smi> tmp76;
    4180             :     compiler::TNode<Smi> tmp77;
    4181             :     ca_.Bind(&block8, &tmp63, &tmp64, &tmp65, &tmp66, &tmp67, &tmp68, &tmp69, &tmp70, &tmp71, &tmp72, &tmp73, &tmp74, &tmp75, &tmp76, &tmp77);
    4182          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 75);
    4183          56 :     compiler::TNode<IntPtrT> tmp78 = ca_.IntPtrConstant(FixedArrayBase::kLengthOffset);
    4184             :     USE(tmp78);
    4185         168 :     compiler::TNode<Smi>tmp79 = CodeStubAssembler(state_).LoadReference<Smi>(CodeStubAssembler::Reference{tmp74, tmp78});
    4186             :     compiler::TNode<BoolT> tmp80;
    4187             :     USE(tmp80);
    4188         112 :     tmp80 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).SmiLessThanOrEqual(compiler::TNode<Smi>{tmp69}, compiler::TNode<Smi>{tmp79}));
    4189          56 :     ca_.Branch(tmp80, &block10, &block11, tmp63, tmp64, tmp65, tmp66, tmp67, tmp68, tmp69, tmp70, tmp71, tmp72, tmp73, tmp74, tmp75, tmp76, tmp77);
    4190             :   }
    4191             : 
    4192          56 :   if (block10.is_used()) {
    4193             :     compiler::TNode<Context> tmp81;
    4194             :     compiler::TNode<RawPtrT> tmp82;
    4195             :     compiler::TNode<RawPtrT> tmp83;
    4196             :     compiler::TNode<IntPtrT> tmp84;
    4197             :     compiler::TNode<JSArray> tmp85;
    4198             :     compiler::TNode<Smi> tmp86;
    4199             :     compiler::TNode<Smi> tmp87;
    4200             :     compiler::TNode<Smi> tmp88;
    4201             :     compiler::TNode<Smi> tmp89;
    4202             :     compiler::TNode<Smi> tmp90;
    4203             :     compiler::TNode<Smi> tmp91;
    4204             :     compiler::TNode<FixedArrayBase> tmp92;
    4205             :     compiler::TNode<Smi> tmp93;
    4206             :     compiler::TNode<Smi> tmp94;
    4207             :     compiler::TNode<Smi> tmp95;
    4208             :     ca_.Bind(&block10, &tmp81, &tmp82, &tmp83, &tmp84, &tmp85, &tmp86, &tmp87, &tmp88, &tmp89, &tmp90, &tmp91, &tmp92, &tmp93, &tmp94, &tmp95);
    4209          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 77);
    4210             :     compiler::TNode<FixedDoubleArray> tmp96;
    4211             :     USE(tmp96);
    4212         168 :     tmp96 = ca_.UncheckedCast<FixedDoubleArray>(BaseBuiltinsFromDSLAssembler(state_).UnsafeCast16FixedDoubleArray(compiler::TNode<Context>{tmp81}, compiler::TNode<Object>{tmp92}));
    4213          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 76);
    4214         168 :     ArraySpliceBuiltinsFromDSLAssembler(state_).DoMoveElements16FixedDoubleArray(compiler::TNode<FixedDoubleArray>{tmp96}, compiler::TNode<Smi>{tmp93}, compiler::TNode<Smi>{tmp94}, compiler::TNode<Smi>{tmp95});
    4215          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 75);
    4216             :     ca_.Goto(&block12, tmp81, tmp82, tmp83, tmp84, tmp85, tmp86, tmp87, tmp88, tmp89, tmp90, tmp91, tmp92, tmp93, tmp94, tmp95);
    4217             :   }
    4218             : 
    4219          56 :   if (block11.is_used()) {
    4220             :     compiler::TNode<Context> tmp97;
    4221             :     compiler::TNode<RawPtrT> tmp98;
    4222             :     compiler::TNode<RawPtrT> tmp99;
    4223             :     compiler::TNode<IntPtrT> tmp100;
    4224             :     compiler::TNode<JSArray> tmp101;
    4225             :     compiler::TNode<Smi> tmp102;
    4226             :     compiler::TNode<Smi> tmp103;
    4227             :     compiler::TNode<Smi> tmp104;
    4228             :     compiler::TNode<Smi> tmp105;
    4229             :     compiler::TNode<Smi> tmp106;
    4230             :     compiler::TNode<Smi> tmp107;
    4231             :     compiler::TNode<FixedArrayBase> tmp108;
    4232             :     compiler::TNode<Smi> tmp109;
    4233             :     compiler::TNode<Smi> tmp110;
    4234             :     compiler::TNode<Smi> tmp111;
    4235             :     ca_.Bind(&block11, &tmp97, &tmp98, &tmp99, &tmp100, &tmp101, &tmp102, &tmp103, &tmp104, &tmp105, &tmp106, &tmp107, &tmp108, &tmp109, &tmp110, &tmp111);
    4236          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 80);
    4237             :     compiler::TNode<Smi> tmp112;
    4238             :     USE(tmp112);
    4239         112 :     tmp112 = ca_.UncheckedCast<Smi>(CodeStubAssembler(state_).CalculateNewElementsCapacity(compiler::TNode<Smi>{tmp103}));
    4240          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 82);
    4241             :     compiler::TNode<Smi> tmp113;
    4242             :     USE(tmp113);
    4243         168 :     tmp113 = ca_.UncheckedCast<Smi>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr5ATSmi17ATconstexpr_int31(0));
    4244             :     compiler::TNode<FixedDoubleArray> tmp114;
    4245             :     USE(tmp114);
    4246         168 :     tmp114 = ca_.UncheckedCast<FixedDoubleArray>(ArraySpliceBuiltinsFromDSLAssembler(state_).Extract16FixedDoubleArray(compiler::TNode<Context>{tmp97}, compiler::TNode<FixedArrayBase>{tmp108}, compiler::TNode<Smi>{tmp113}, compiler::TNode<Smi>{tmp105}, compiler::TNode<Smi>{tmp112}));
    4247          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 81);
    4248          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 83);
    4249          56 :     compiler::TNode<IntPtrT> tmp115 = ca_.IntPtrConstant(JSObject::kElementsOffset);
    4250             :     USE(tmp115);
    4251         112 :     CodeStubAssembler(state_).StoreReference(CodeStubAssembler::Reference{tmp101, tmp115}, tmp114);
    4252          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 84);
    4253          56 :     compiler::TNode<IntPtrT> tmp116 = ca_.IntPtrConstant(FixedArrayBase::kLengthOffset);
    4254             :     USE(tmp116);
    4255         168 :     compiler::TNode<Smi>tmp117 = CodeStubAssembler(state_).LoadReference<Smi>(CodeStubAssembler::Reference{tmp108, tmp116});
    4256             :     compiler::TNode<Smi> tmp118;
    4257             :     USE(tmp118);
    4258         168 :     tmp118 = ca_.UncheckedCast<Smi>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr5ATSmi17ATconstexpr_int31(0));
    4259             :     compiler::TNode<BoolT> tmp119;
    4260             :     USE(tmp119);
    4261         112 :     tmp119 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).SmiGreaterThan(compiler::TNode<Smi>{tmp117}, compiler::TNode<Smi>{tmp118}));
    4262          56 :     ca_.Branch(tmp119, &block13, &block14, tmp97, tmp98, tmp99, tmp100, tmp101, tmp102, tmp103, tmp104, tmp105, tmp106, tmp107, tmp108, tmp109, tmp110, tmp111, tmp112, tmp114);
    4263             :   }
    4264             : 
    4265          56 :   if (block13.is_used()) {
    4266             :     compiler::TNode<Context> tmp120;
    4267             :     compiler::TNode<RawPtrT> tmp121;
    4268             :     compiler::TNode<RawPtrT> tmp122;
    4269             :     compiler::TNode<IntPtrT> tmp123;
    4270             :     compiler::TNode<JSArray> tmp124;
    4271             :     compiler::TNode<Smi> tmp125;
    4272             :     compiler::TNode<Smi> tmp126;
    4273             :     compiler::TNode<Smi> tmp127;
    4274             :     compiler::TNode<Smi> tmp128;
    4275             :     compiler::TNode<Smi> tmp129;
    4276             :     compiler::TNode<Smi> tmp130;
    4277             :     compiler::TNode<FixedArrayBase> tmp131;
    4278             :     compiler::TNode<Smi> tmp132;
    4279             :     compiler::TNode<Smi> tmp133;
    4280             :     compiler::TNode<Smi> tmp134;
    4281             :     compiler::TNode<Smi> tmp135;
    4282             :     compiler::TNode<FixedDoubleArray> tmp136;
    4283             :     ca_.Bind(&block13, &tmp120, &tmp121, &tmp122, &tmp123, &tmp124, &tmp125, &tmp126, &tmp127, &tmp128, &tmp129, &tmp130, &tmp131, &tmp132, &tmp133, &tmp134, &tmp135, &tmp136);
    4284          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 86);
    4285             :     compiler::TNode<FixedDoubleArray> tmp137;
    4286             :     USE(tmp137);
    4287         168 :     tmp137 = ca_.UncheckedCast<FixedDoubleArray>(BaseBuiltinsFromDSLAssembler(state_).UnsafeCast16FixedDoubleArray(compiler::TNode<Context>{tmp120}, compiler::TNode<Object>{tmp131}));
    4288          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 87);
    4289          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 85);
    4290         168 :     ArraySpliceBuiltinsFromDSLAssembler(state_).DoCopyElements16FixedDoubleArray(compiler::TNode<FixedDoubleArray>{tmp136}, compiler::TNode<Smi>{tmp132}, compiler::TNode<FixedDoubleArray>{tmp137}, compiler::TNode<Smi>{tmp133}, compiler::TNode<Smi>{tmp134});
    4291          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 84);
    4292             :     ca_.Goto(&block14, tmp120, tmp121, tmp122, tmp123, tmp124, tmp125, tmp126, tmp127, tmp128, tmp129, tmp130, tmp131, tmp132, tmp133, tmp134, tmp135, tmp136);
    4293             :   }
    4294             : 
    4295          56 :   if (block14.is_used()) {
    4296             :     compiler::TNode<Context> tmp138;
    4297             :     compiler::TNode<RawPtrT> tmp139;
    4298             :     compiler::TNode<RawPtrT> tmp140;
    4299             :     compiler::TNode<IntPtrT> tmp141;
    4300             :     compiler::TNode<JSArray> tmp142;
    4301             :     compiler::TNode<Smi> tmp143;
    4302             :     compiler::TNode<Smi> tmp144;
    4303             :     compiler::TNode<Smi> tmp145;
    4304             :     compiler::TNode<Smi> tmp146;
    4305             :     compiler::TNode<Smi> tmp147;
    4306             :     compiler::TNode<Smi> tmp148;
    4307             :     compiler::TNode<FixedArrayBase> tmp149;
    4308             :     compiler::TNode<Smi> tmp150;
    4309             :     compiler::TNode<Smi> tmp151;
    4310             :     compiler::TNode<Smi> tmp152;
    4311             :     compiler::TNode<Smi> tmp153;
    4312             :     compiler::TNode<FixedDoubleArray> tmp154;
    4313             :     ca_.Bind(&block14, &tmp138, &tmp139, &tmp140, &tmp141, &tmp142, &tmp143, &tmp144, &tmp145, &tmp146, &tmp147, &tmp148, &tmp149, &tmp150, &tmp151, &tmp152, &tmp153, &tmp154);
    4314          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 78);
    4315          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 75);
    4316             :     ca_.Goto(&block12, tmp138, tmp139, tmp140, tmp141, tmp142, tmp143, tmp144, tmp145, tmp146, tmp147, tmp148, tmp149, tmp150, tmp151, tmp152);
    4317             :   }
    4318             : 
    4319          56 :   if (block12.is_used()) {
    4320             :     compiler::TNode<Context> tmp155;
    4321             :     compiler::TNode<RawPtrT> tmp156;
    4322             :     compiler::TNode<RawPtrT> tmp157;
    4323             :     compiler::TNode<IntPtrT> tmp158;
    4324             :     compiler::TNode<JSArray> tmp159;
    4325             :     compiler::TNode<Smi> tmp160;
    4326             :     compiler::TNode<Smi> tmp161;
    4327             :     compiler::TNode<Smi> tmp162;
    4328             :     compiler::TNode<Smi> tmp163;
    4329             :     compiler::TNode<Smi> tmp164;
    4330             :     compiler::TNode<Smi> tmp165;
    4331             :     compiler::TNode<FixedArrayBase> tmp166;
    4332             :     compiler::TNode<Smi> tmp167;
    4333             :     compiler::TNode<Smi> tmp168;
    4334             :     compiler::TNode<Smi> tmp169;
    4335             :     ca_.Bind(&block12, &tmp155, &tmp156, &tmp157, &tmp158, &tmp159, &tmp160, &tmp161, &tmp162, &tmp163, &tmp164, &tmp165, &tmp166, &tmp167, &tmp168, &tmp169);
    4336          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 73);
    4337             :     ca_.Goto(&block9, tmp155, tmp156, tmp157, tmp158, tmp159, tmp160, tmp161, tmp162, tmp163, tmp164, tmp165, tmp166, tmp167, tmp168, tmp169);
    4338             :   }
    4339             : 
    4340          56 :   if (block9.is_used()) {
    4341             :     compiler::TNode<Context> tmp170;
    4342             :     compiler::TNode<RawPtrT> tmp171;
    4343             :     compiler::TNode<RawPtrT> tmp172;
    4344             :     compiler::TNode<IntPtrT> tmp173;
    4345             :     compiler::TNode<JSArray> tmp174;
    4346             :     compiler::TNode<Smi> tmp175;
    4347             :     compiler::TNode<Smi> tmp176;
    4348             :     compiler::TNode<Smi> tmp177;
    4349             :     compiler::TNode<Smi> tmp178;
    4350             :     compiler::TNode<Smi> tmp179;
    4351             :     compiler::TNode<Smi> tmp180;
    4352             :     compiler::TNode<FixedArrayBase> tmp181;
    4353             :     compiler::TNode<Smi> tmp182;
    4354             :     compiler::TNode<Smi> tmp183;
    4355             :     compiler::TNode<Smi> tmp184;
    4356             :     ca_.Bind(&block9, &tmp170, &tmp171, &tmp172, &tmp173, &tmp174, &tmp175, &tmp176, &tmp177, &tmp178, &tmp179, &tmp180, &tmp181, &tmp182, &tmp183, &tmp184);
    4357          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 67);
    4358             :     ca_.Goto(&block7, tmp170, tmp171, tmp172, tmp173, tmp174, tmp175, tmp176, tmp177, tmp178, tmp179, tmp180, tmp181, tmp182, tmp183, tmp184);
    4359             :   }
    4360             : 
    4361          56 :   if (block7.is_used()) {
    4362             :     compiler::TNode<Context> tmp185;
    4363             :     compiler::TNode<RawPtrT> tmp186;
    4364             :     compiler::TNode<RawPtrT> tmp187;
    4365             :     compiler::TNode<IntPtrT> tmp188;
    4366             :     compiler::TNode<JSArray> tmp189;
    4367             :     compiler::TNode<Smi> tmp190;
    4368             :     compiler::TNode<Smi> tmp191;
    4369             :     compiler::TNode<Smi> tmp192;
    4370             :     compiler::TNode<Smi> tmp193;
    4371             :     compiler::TNode<Smi> tmp194;
    4372             :     compiler::TNode<Smi> tmp195;
    4373             :     compiler::TNode<FixedArrayBase> tmp196;
    4374             :     compiler::TNode<Smi> tmp197;
    4375             :     compiler::TNode<Smi> tmp198;
    4376             :     compiler::TNode<Smi> tmp199;
    4377             :     ca_.Bind(&block7, &tmp185, &tmp186, &tmp187, &tmp188, &tmp189, &tmp190, &tmp191, &tmp192, &tmp193, &tmp194, &tmp195, &tmp196, &tmp197, &tmp198, &tmp199);
    4378          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 62);
    4379             :     ca_.Goto(&block4, tmp185, tmp186, tmp187, tmp188, tmp189, tmp190, tmp191, tmp192, tmp193, tmp194, tmp195);
    4380             :   }
    4381             : 
    4382          56 :   if (block4.is_used()) {
    4383             :     compiler::TNode<Context> tmp200;
    4384             :     compiler::TNode<RawPtrT> tmp201;
    4385             :     compiler::TNode<RawPtrT> tmp202;
    4386             :     compiler::TNode<IntPtrT> tmp203;
    4387             :     compiler::TNode<JSArray> tmp204;
    4388             :     compiler::TNode<Smi> tmp205;
    4389             :     compiler::TNode<Smi> tmp206;
    4390             :     compiler::TNode<Smi> tmp207;
    4391             :     compiler::TNode<Smi> tmp208;
    4392             :     compiler::TNode<Smi> tmp209;
    4393             :     compiler::TNode<Smi> tmp210;
    4394             :     ca_.Bind(&block4, &tmp200, &tmp201, &tmp202, &tmp203, &tmp204, &tmp205, &tmp206, &tmp207, &tmp208, &tmp209, &tmp210);
    4395          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 94);
    4396          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 95);
    4397             :     compiler::TNode<Smi> tmp211;
    4398             :     USE(tmp211);
    4399         168 :     tmp211 = ca_.UncheckedCast<Smi>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr5ATSmi17ATconstexpr_int31(0));
    4400             :     compiler::TNode<BoolT> tmp212;
    4401             :     USE(tmp212);
    4402         112 :     tmp212 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).SmiGreaterThan(compiler::TNode<Smi>{tmp209}, compiler::TNode<Smi>{tmp211}));
    4403          56 :     ca_.Branch(tmp212, &block15, &block16, tmp200, tmp201, tmp202, tmp203, tmp204, tmp205, tmp206, tmp207, tmp208, tmp209, tmp210, tmp208);
    4404             :   }
    4405             : 
    4406          56 :   if (block15.is_used()) {
    4407             :     compiler::TNode<Context> tmp213;
    4408             :     compiler::TNode<RawPtrT> tmp214;
    4409             :     compiler::TNode<RawPtrT> tmp215;
    4410             :     compiler::TNode<IntPtrT> tmp216;
    4411             :     compiler::TNode<JSArray> tmp217;
    4412             :     compiler::TNode<Smi> tmp218;
    4413             :     compiler::TNode<Smi> tmp219;
    4414             :     compiler::TNode<Smi> tmp220;
    4415             :     compiler::TNode<Smi> tmp221;
    4416             :     compiler::TNode<Smi> tmp222;
    4417             :     compiler::TNode<Smi> tmp223;
    4418             :     compiler::TNode<Smi> tmp224;
    4419             :     ca_.Bind(&block15, &tmp213, &tmp214, &tmp215, &tmp216, &tmp217, &tmp218, &tmp219, &tmp220, &tmp221, &tmp222, &tmp223, &tmp224);
    4420          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 97);
    4421          56 :     compiler::TNode<IntPtrT> tmp225 = ca_.IntPtrConstant(JSObject::kElementsOffset);
    4422             :     USE(tmp225);
    4423         112 :     compiler::TNode<FixedArrayBase>tmp226 = CodeStubAssembler(state_).LoadReference<FixedArrayBase>(CodeStubAssembler::Reference{tmp217, tmp225});
    4424             :     compiler::TNode<FixedDoubleArray> tmp227;
    4425             :     USE(tmp227);
    4426         168 :     tmp227 = ca_.UncheckedCast<FixedDoubleArray>(BaseBuiltinsFromDSLAssembler(state_).UnsafeCast16FixedDoubleArray(compiler::TNode<Context>{tmp213}, compiler::TNode<Object>{tmp226}));
    4427          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 96);
    4428          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 98);
    4429             :     compiler::TNode<IntPtrT> tmp228;
    4430             :     USE(tmp228);
    4431         168 :     tmp228 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATintptr17ATconstexpr_int31(2));
    4432             :     ca_.Goto(&block19, tmp213, tmp214, tmp215, tmp216, tmp217, tmp218, tmp219, tmp220, tmp221, tmp222, tmp223, tmp224, tmp227, tmp228);
    4433             :   }
    4434             : 
    4435          56 :   if (block19.is_used()) {
    4436             :     compiler::TNode<Context> tmp229;
    4437             :     compiler::TNode<RawPtrT> tmp230;
    4438             :     compiler::TNode<RawPtrT> tmp231;
    4439             :     compiler::TNode<IntPtrT> tmp232;
    4440             :     compiler::TNode<JSArray> tmp233;
    4441             :     compiler::TNode<Smi> tmp234;
    4442             :     compiler::TNode<Smi> tmp235;
    4443             :     compiler::TNode<Smi> tmp236;
    4444             :     compiler::TNode<Smi> tmp237;
    4445             :     compiler::TNode<Smi> tmp238;
    4446             :     compiler::TNode<Smi> tmp239;
    4447             :     compiler::TNode<Smi> tmp240;
    4448             :     compiler::TNode<FixedDoubleArray> tmp241;
    4449             :     compiler::TNode<IntPtrT> tmp242;
    4450             :     ca_.Bind(&block19, &tmp229, &tmp230, &tmp231, &tmp232, &tmp233, &tmp234, &tmp235, &tmp236, &tmp237, &tmp238, &tmp239, &tmp240, &tmp241, &tmp242);
    4451             :     compiler::TNode<BoolT> tmp243;
    4452             :     USE(tmp243);
    4453         224 :     tmp243 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).IntPtrLessThan(compiler::TNode<IntPtrT>{tmp242}, compiler::TNode<IntPtrT>{tmp232}));
    4454          56 :     ca_.Branch(tmp243, &block17, &block18, tmp229, tmp230, tmp231, tmp232, tmp233, tmp234, tmp235, tmp236, tmp237, tmp238, tmp239, tmp240, tmp241, tmp242);
    4455             :   }
    4456             : 
    4457          56 :   if (block17.is_used()) {
    4458             :     compiler::TNode<Context> tmp244;
    4459             :     compiler::TNode<RawPtrT> tmp245;
    4460             :     compiler::TNode<RawPtrT> tmp246;
    4461             :     compiler::TNode<IntPtrT> tmp247;
    4462             :     compiler::TNode<JSArray> tmp248;
    4463             :     compiler::TNode<Smi> tmp249;
    4464             :     compiler::TNode<Smi> tmp250;
    4465             :     compiler::TNode<Smi> tmp251;
    4466             :     compiler::TNode<Smi> tmp252;
    4467             :     compiler::TNode<Smi> tmp253;
    4468             :     compiler::TNode<Smi> tmp254;
    4469             :     compiler::TNode<Smi> tmp255;
    4470             :     compiler::TNode<FixedDoubleArray> tmp256;
    4471             :     compiler::TNode<IntPtrT> tmp257;
    4472             :     ca_.Bind(&block17, &tmp244, &tmp245, &tmp246, &tmp247, &tmp248, &tmp249, &tmp250, &tmp251, &tmp252, &tmp253, &tmp254, &tmp255, &tmp256, &tmp257);
    4473          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 99);
    4474             :     compiler::TNode<Object> tmp258;
    4475             :     USE(tmp258);
    4476         112 :     tmp258 = ca_.UncheckedCast<Object>(CodeStubAssembler(state_).GetArgumentValue(BaseBuiltinsFromDSLAssembler::Arguments{compiler::TNode<RawPtrT>{tmp245}, compiler::TNode<RawPtrT>{tmp246}, compiler::TNode<IntPtrT>{tmp247}}, compiler::TNode<IntPtrT>{tmp257}));
    4477          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 102);
    4478             :     compiler::TNode<Smi> tmp259;
    4479             :     USE(tmp259);
    4480         168 :     tmp259 = ca_.UncheckedCast<Smi>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr5ATSmi17ATconstexpr_int31(1));
    4481             :     compiler::TNode<Smi> tmp260;
    4482             :     USE(tmp260);
    4483         112 :     tmp260 = ca_.UncheckedCast<Smi>(CodeStubAssembler(state_).SmiAdd(compiler::TNode<Smi>{tmp255}, compiler::TNode<Smi>{tmp259}));
    4484             :     compiler::TNode<Number> tmp261;
    4485             :     USE(tmp261);
    4486         168 :     tmp261 = ca_.UncheckedCast<Number>(BaseBuiltinsFromDSLAssembler(state_).UnsafeCast20UT5ATSmi10HeapNumber(compiler::TNode<Context>{tmp244}, compiler::TNode<Object>{tmp258}));
    4487         168 :     BaseBuiltinsFromDSLAssembler(state_).StoreFixedDoubleArrayDirect(compiler::TNode<FixedDoubleArray>{tmp256}, compiler::TNode<Smi>{tmp255}, compiler::TNode<Number>{tmp261});
    4488          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 98);
    4489             :     ca_.Goto(&block20, tmp244, tmp245, tmp246, tmp247, tmp248, tmp249, tmp250, tmp251, tmp252, tmp253, tmp254, tmp260, tmp256, tmp257);
    4490             :   }
    4491             : 
    4492          56 :   if (block20.is_used()) {
    4493             :     compiler::TNode<Context> tmp262;
    4494             :     compiler::TNode<RawPtrT> tmp263;
    4495             :     compiler::TNode<RawPtrT> tmp264;
    4496             :     compiler::TNode<IntPtrT> tmp265;
    4497             :     compiler::TNode<JSArray> tmp266;
    4498             :     compiler::TNode<Smi> tmp267;
    4499             :     compiler::TNode<Smi> tmp268;
    4500             :     compiler::TNode<Smi> tmp269;
    4501             :     compiler::TNode<Smi> tmp270;
    4502             :     compiler::TNode<Smi> tmp271;
    4503             :     compiler::TNode<Smi> tmp272;
    4504             :     compiler::TNode<Smi> tmp273;
    4505             :     compiler::TNode<FixedDoubleArray> tmp274;
    4506             :     compiler::TNode<IntPtrT> tmp275;
    4507             :     ca_.Bind(&block20, &tmp262, &tmp263, &tmp264, &tmp265, &tmp266, &tmp267, &tmp268, &tmp269, &tmp270, &tmp271, &tmp272, &tmp273, &tmp274, &tmp275);
    4508             :     compiler::TNode<IntPtrT> tmp276;
    4509             :     USE(tmp276);
    4510         168 :     tmp276 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr8ATintptr17ATconstexpr_int31(1));
    4511             :     compiler::TNode<IntPtrT> tmp277;
    4512             :     USE(tmp277);
    4513         112 :     tmp277 = ca_.UncheckedCast<IntPtrT>(CodeStubAssembler(state_).IntPtrAdd(compiler::TNode<IntPtrT>{tmp275}, compiler::TNode<IntPtrT>{tmp276}));
    4514             :     ca_.Goto(&block19, tmp262, tmp263, tmp264, tmp265, tmp266, tmp267, tmp268, tmp269, tmp270, tmp271, tmp272, tmp273, tmp274, tmp277);
    4515             :   }
    4516             : 
    4517          56 :   if (block18.is_used()) {
    4518             :     compiler::TNode<Context> tmp278;
    4519             :     compiler::TNode<RawPtrT> tmp279;
    4520             :     compiler::TNode<RawPtrT> tmp280;
    4521             :     compiler::TNode<IntPtrT> tmp281;
    4522             :     compiler::TNode<JSArray> tmp282;
    4523             :     compiler::TNode<Smi> tmp283;
    4524             :     compiler::TNode<Smi> tmp284;
    4525             :     compiler::TNode<Smi> tmp285;
    4526             :     compiler::TNode<Smi> tmp286;
    4527             :     compiler::TNode<Smi> tmp287;
    4528             :     compiler::TNode<Smi> tmp288;
    4529             :     compiler::TNode<Smi> tmp289;
    4530             :     compiler::TNode<FixedDoubleArray> tmp290;
    4531             :     compiler::TNode<IntPtrT> tmp291;
    4532             :     ca_.Bind(&block18, &tmp278, &tmp279, &tmp280, &tmp281, &tmp282, &tmp283, &tmp284, &tmp285, &tmp286, &tmp287, &tmp288, &tmp289, &tmp290, &tmp291);
    4533          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 95);
    4534             :     ca_.Goto(&block16, tmp278, tmp279, tmp280, tmp281, tmp282, tmp283, tmp284, tmp285, tmp286, tmp287, tmp288, tmp289);
    4535             :   }
    4536             : 
    4537          56 :   if (block16.is_used()) {
    4538             :     compiler::TNode<Context> tmp292;
    4539             :     compiler::TNode<RawPtrT> tmp293;
    4540             :     compiler::TNode<RawPtrT> tmp294;
    4541             :     compiler::TNode<IntPtrT> tmp295;
    4542             :     compiler::TNode<JSArray> tmp296;
    4543             :     compiler::TNode<Smi> tmp297;
    4544             :     compiler::TNode<Smi> tmp298;
    4545             :     compiler::TNode<Smi> tmp299;
    4546             :     compiler::TNode<Smi> tmp300;
    4547             :     compiler::TNode<Smi> tmp301;
    4548             :     compiler::TNode<Smi> tmp302;
    4549             :     compiler::TNode<Smi> tmp303;
    4550             :     ca_.Bind(&block16, &tmp292, &tmp293, &tmp294, &tmp295, &tmp296, &tmp297, &tmp298, &tmp299, &tmp300, &tmp301, &tmp302, &tmp303);
    4551          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 107);
    4552          56 :     compiler::TNode<IntPtrT> tmp304 = ca_.IntPtrConstant(JSArray::kLengthOffset);
    4553             :     USE(tmp304);
    4554         112 :     CodeStubAssembler(state_).StoreReference(CodeStubAssembler::Reference{tmp296, tmp304}, tmp298);
    4555          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 58);
    4556          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 54);
    4557             :     ca_.Goto(&block2, tmp292, tmp293, tmp294, tmp295, tmp296, tmp297, tmp298, tmp299, tmp300, tmp301, tmp302);
    4558             :   }
    4559             : 
    4560          56 :   if (block2.is_used()) {
    4561             :     compiler::TNode<Context> tmp305;
    4562             :     compiler::TNode<RawPtrT> tmp306;
    4563             :     compiler::TNode<RawPtrT> tmp307;
    4564             :     compiler::TNode<IntPtrT> tmp308;
    4565             :     compiler::TNode<JSArray> tmp309;
    4566             :     compiler::TNode<Smi> tmp310;
    4567             :     compiler::TNode<Smi> tmp311;
    4568             :     compiler::TNode<Smi> tmp312;
    4569             :     compiler::TNode<Smi> tmp313;
    4570             :     compiler::TNode<Smi> tmp314;
    4571             :     compiler::TNode<Smi> tmp315;
    4572             :     ca_.Bind(&block2, &tmp305, &tmp306, &tmp307, &tmp308, &tmp309, &tmp310, &tmp311, &tmp312, &tmp313, &tmp314, &tmp315);
    4573             :     ca_.Goto(&block21, tmp305, tmp306, tmp307, tmp308, tmp309, tmp310, tmp311, tmp312, tmp313, tmp314, tmp315);
    4574             :   }
    4575             : 
    4576          56 :   if (block1.is_used()) {
    4577             :     ca_.Bind(&block1);
    4578           0 :     ca_.Goto(label_Bailout);
    4579             :   }
    4580             : 
    4581             :     compiler::TNode<Context> tmp316;
    4582             :     compiler::TNode<RawPtrT> tmp317;
    4583             :     compiler::TNode<RawPtrT> tmp318;
    4584             :     compiler::TNode<IntPtrT> tmp319;
    4585             :     compiler::TNode<JSArray> tmp320;
    4586             :     compiler::TNode<Smi> tmp321;
    4587             :     compiler::TNode<Smi> tmp322;
    4588             :     compiler::TNode<Smi> tmp323;
    4589             :     compiler::TNode<Smi> tmp324;
    4590             :     compiler::TNode<Smi> tmp325;
    4591             :     compiler::TNode<Smi> tmp326;
    4592             :     ca_.Bind(&block21, &tmp316, &tmp317, &tmp318, &tmp319, &tmp320, &tmp321, &tmp322, &tmp323, &tmp324, &tmp325, &tmp326);
    4593          56 : }
    4594             : 
    4595         112 : void ArraySpliceBuiltinsFromDSLAssembler::DoMoveElements10FixedArray(compiler::TNode<FixedArray> p_elements, compiler::TNode<Smi> p_dstIndex, compiler::TNode<Smi> p_srcIndex, compiler::TNode<Smi> p_count) {
    4596         112 :   compiler::CodeAssemblerParameterizedLabel<FixedArray, Smi, Smi, Smi> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    4597             :   compiler::CodeAssemblerParameterizedLabel<FixedArray, Smi, Smi, Smi> block1(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    4598             :   compiler::CodeAssemblerParameterizedLabel<FixedArray, Smi, Smi, Smi> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    4599             :     ca_.Goto(&block0, p_elements, p_dstIndex, p_srcIndex, p_count);
    4600             : 
    4601         112 :   if (block0.is_used()) {
    4602             :     compiler::TNode<FixedArray> tmp0;
    4603             :     compiler::TNode<Smi> tmp1;
    4604             :     compiler::TNode<Smi> tmp2;
    4605             :     compiler::TNode<Smi> tmp3;
    4606             :     ca_.Bind(&block0, &tmp0, &tmp1, &tmp2, &tmp3);
    4607         112 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 35);
    4608             :     compiler::TNode<IntPtrT> tmp4;
    4609             :     USE(tmp4);
    4610         336 :     tmp4 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).Convert8ATintptr5ATSmi(compiler::TNode<Smi>{tmp1}));
    4611             :     compiler::TNode<IntPtrT> tmp5;
    4612             :     USE(tmp5);
    4613         336 :     tmp5 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).Convert8ATintptr5ATSmi(compiler::TNode<Smi>{tmp2}));
    4614         112 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 36);
    4615             :     compiler::TNode<IntPtrT> tmp6;
    4616             :     USE(tmp6);
    4617         336 :     tmp6 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).Convert8ATintptr5ATSmi(compiler::TNode<Smi>{tmp3}));
    4618         112 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 34);
    4619         336 :     BaseBuiltinsFromDSLAssembler(state_).TorqueMoveElements(compiler::TNode<FixedArray>{tmp0}, compiler::TNode<IntPtrT>{tmp4}, compiler::TNode<IntPtrT>{tmp5}, compiler::TNode<IntPtrT>{tmp6});
    4620         112 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 31);
    4621             :     ca_.Goto(&block1, tmp0, tmp1, tmp2, tmp3);
    4622             :   }
    4623             : 
    4624         112 :   if (block1.is_used()) {
    4625             :     compiler::TNode<FixedArray> tmp7;
    4626             :     compiler::TNode<Smi> tmp8;
    4627             :     compiler::TNode<Smi> tmp9;
    4628             :     compiler::TNode<Smi> tmp10;
    4629             :     ca_.Bind(&block1, &tmp7, &tmp8, &tmp9, &tmp10);
    4630             :     ca_.Goto(&block2, tmp7, tmp8, tmp9, tmp10);
    4631             :   }
    4632             : 
    4633             :     compiler::TNode<FixedArray> tmp11;
    4634             :     compiler::TNode<Smi> tmp12;
    4635             :     compiler::TNode<Smi> tmp13;
    4636             :     compiler::TNode<Smi> tmp14;
    4637             :     ca_.Bind(&block2, &tmp11, &tmp12, &tmp13, &tmp14);
    4638         112 : }
    4639             : 
    4640          56 : void ArraySpliceBuiltinsFromDSLAssembler::StoreHoles10FixedArray(compiler::TNode<FixedArray> p_elements, compiler::TNode<Smi> p_holeStartIndex, compiler::TNode<Smi> p_holeEndIndex) {
    4641          56 :   compiler::CodeAssemblerParameterizedLabel<FixedArray, Smi, Smi> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    4642             :   compiler::CodeAssemblerParameterizedLabel<FixedArray, Smi, Smi, Smi> block4(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    4643             :   compiler::CodeAssemblerParameterizedLabel<FixedArray, Smi, Smi, Smi> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    4644             :   compiler::CodeAssemblerParameterizedLabel<FixedArray, Smi, Smi, Smi> block5(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    4645             :   compiler::CodeAssemblerParameterizedLabel<FixedArray, Smi, Smi, Smi> block3(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    4646             :   compiler::CodeAssemblerParameterizedLabel<FixedArray, Smi, Smi> block1(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    4647             :   compiler::CodeAssemblerParameterizedLabel<FixedArray, Smi, Smi> block6(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    4648             :     ca_.Goto(&block0, p_elements, p_holeStartIndex, p_holeEndIndex);
    4649             : 
    4650          56 :   if (block0.is_used()) {
    4651             :     compiler::TNode<FixedArray> tmp0;
    4652             :     compiler::TNode<Smi> tmp1;
    4653             :     compiler::TNode<Smi> tmp2;
    4654             :     ca_.Bind(&block0, &tmp0, &tmp1, &tmp2);
    4655          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 41);
    4656             :     ca_.Goto(&block4, tmp0, tmp1, tmp2, tmp1);
    4657             :   }
    4658             : 
    4659          56 :   if (block4.is_used()) {
    4660             :     compiler::TNode<FixedArray> tmp3;
    4661             :     compiler::TNode<Smi> tmp4;
    4662             :     compiler::TNode<Smi> tmp5;
    4663             :     compiler::TNode<Smi> tmp6;
    4664             :     ca_.Bind(&block4, &tmp3, &tmp4, &tmp5, &tmp6);
    4665             :     compiler::TNode<BoolT> tmp7;
    4666             :     USE(tmp7);
    4667         112 :     tmp7 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).SmiLessThan(compiler::TNode<Smi>{tmp6}, compiler::TNode<Smi>{tmp5}));
    4668          56 :     ca_.Branch(tmp7, &block2, &block3, tmp3, tmp4, tmp5, tmp6);
    4669             :   }
    4670             : 
    4671          56 :   if (block2.is_used()) {
    4672             :     compiler::TNode<FixedArray> tmp8;
    4673             :     compiler::TNode<Smi> tmp9;
    4674             :     compiler::TNode<Smi> tmp10;
    4675             :     compiler::TNode<Smi> tmp11;
    4676             :     ca_.Bind(&block2, &tmp8, &tmp9, &tmp10, &tmp11);
    4677          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 42);
    4678         168 :     ArrayBuiltinsFromDSLAssembler(state_).StoreArrayHole(compiler::TNode<FixedArray>{tmp8}, compiler::TNode<Smi>{tmp11});
    4679          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 41);
    4680             :     ca_.Goto(&block5, tmp8, tmp9, tmp10, tmp11);
    4681             :   }
    4682             : 
    4683          56 :   if (block5.is_used()) {
    4684             :     compiler::TNode<FixedArray> tmp12;
    4685             :     compiler::TNode<Smi> tmp13;
    4686             :     compiler::TNode<Smi> tmp14;
    4687             :     compiler::TNode<Smi> tmp15;
    4688             :     ca_.Bind(&block5, &tmp12, &tmp13, &tmp14, &tmp15);
    4689             :     compiler::TNode<Smi> tmp16;
    4690             :     USE(tmp16);
    4691         168 :     tmp16 = ca_.UncheckedCast<Smi>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr5ATSmi17ATconstexpr_int31(1));
    4692             :     compiler::TNode<Smi> tmp17;
    4693             :     USE(tmp17);
    4694         112 :     tmp17 = ca_.UncheckedCast<Smi>(CodeStubAssembler(state_).SmiAdd(compiler::TNode<Smi>{tmp15}, compiler::TNode<Smi>{tmp16}));
    4695             :     ca_.Goto(&block4, tmp12, tmp13, tmp14, tmp17);
    4696             :   }
    4697             : 
    4698          56 :   if (block3.is_used()) {
    4699             :     compiler::TNode<FixedArray> tmp18;
    4700             :     compiler::TNode<Smi> tmp19;
    4701             :     compiler::TNode<Smi> tmp20;
    4702             :     compiler::TNode<Smi> tmp21;
    4703             :     ca_.Bind(&block3, &tmp18, &tmp19, &tmp20, &tmp21);
    4704          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 39);
    4705             :     ca_.Goto(&block1, tmp18, tmp19, tmp20);
    4706             :   }
    4707             : 
    4708          56 :   if (block1.is_used()) {
    4709             :     compiler::TNode<FixedArray> tmp22;
    4710             :     compiler::TNode<Smi> tmp23;
    4711             :     compiler::TNode<Smi> tmp24;
    4712             :     ca_.Bind(&block1, &tmp22, &tmp23, &tmp24);
    4713             :     ca_.Goto(&block6, tmp22, tmp23, tmp24);
    4714             :   }
    4715             : 
    4716             :     compiler::TNode<FixedArray> tmp25;
    4717             :     compiler::TNode<Smi> tmp26;
    4718             :     compiler::TNode<Smi> tmp27;
    4719             :     ca_.Bind(&block6, &tmp25, &tmp26, &tmp27);
    4720          56 : }
    4721             : 
    4722          56 : void ArraySpliceBuiltinsFromDSLAssembler::DoCopyElements10FixedArray(compiler::TNode<FixedArray> p_dstElements, compiler::TNode<Smi> p_dstIndex, compiler::TNode<FixedArray> p_srcElements, compiler::TNode<Smi> p_srcIndex, compiler::TNode<Smi> p_count) {
    4723          56 :   compiler::CodeAssemblerParameterizedLabel<FixedArray, Smi, FixedArray, Smi, Smi> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    4724             :   compiler::CodeAssemblerParameterizedLabel<FixedArray, Smi, FixedArray, Smi, Smi> block1(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    4725             :   compiler::CodeAssemblerParameterizedLabel<FixedArray, Smi, FixedArray, Smi, Smi> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    4726             :     ca_.Goto(&block0, p_dstElements, p_dstIndex, p_srcElements, p_srcIndex, p_count);
    4727             : 
    4728          56 :   if (block0.is_used()) {
    4729             :     compiler::TNode<FixedArray> tmp0;
    4730             :     compiler::TNode<Smi> tmp1;
    4731             :     compiler::TNode<FixedArray> tmp2;
    4732             :     compiler::TNode<Smi> tmp3;
    4733             :     compiler::TNode<Smi> tmp4;
    4734             :     ca_.Bind(&block0, &tmp0, &tmp1, &tmp2, &tmp3, &tmp4);
    4735          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 50);
    4736             :     compiler::TNode<IntPtrT> tmp5;
    4737             :     USE(tmp5);
    4738         168 :     tmp5 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).Convert8ATintptr5ATSmi(compiler::TNode<Smi>{tmp1}));
    4739          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 51);
    4740             :     compiler::TNode<IntPtrT> tmp6;
    4741             :     USE(tmp6);
    4742         168 :     tmp6 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).Convert8ATintptr5ATSmi(compiler::TNode<Smi>{tmp3}));
    4743             :     compiler::TNode<IntPtrT> tmp7;
    4744             :     USE(tmp7);
    4745         168 :     tmp7 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).Convert8ATintptr5ATSmi(compiler::TNode<Smi>{tmp4}));
    4746          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 49);
    4747         168 :     BaseBuiltinsFromDSLAssembler(state_).TorqueCopyElements(compiler::TNode<FixedArray>{tmp0}, compiler::TNode<IntPtrT>{tmp5}, compiler::TNode<FixedArray>{tmp2}, compiler::TNode<IntPtrT>{tmp6}, compiler::TNode<IntPtrT>{tmp7});
    4748          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 46);
    4749             :     ca_.Goto(&block1, tmp0, tmp1, tmp2, tmp3, tmp4);
    4750             :   }
    4751             : 
    4752          56 :   if (block1.is_used()) {
    4753             :     compiler::TNode<FixedArray> tmp8;
    4754             :     compiler::TNode<Smi> tmp9;
    4755             :     compiler::TNode<FixedArray> tmp10;
    4756             :     compiler::TNode<Smi> tmp11;
    4757             :     compiler::TNode<Smi> tmp12;
    4758             :     ca_.Bind(&block1, &tmp8, &tmp9, &tmp10, &tmp11, &tmp12);
    4759             :     ca_.Goto(&block2, tmp8, tmp9, tmp10, tmp11, tmp12);
    4760             :   }
    4761             : 
    4762             :     compiler::TNode<FixedArray> tmp13;
    4763             :     compiler::TNode<Smi> tmp14;
    4764             :     compiler::TNode<FixedArray> tmp15;
    4765             :     compiler::TNode<Smi> tmp16;
    4766             :     compiler::TNode<Smi> tmp17;
    4767             :     ca_.Bind(&block2, &tmp13, &tmp14, &tmp15, &tmp16, &tmp17);
    4768          56 : }
    4769             : 
    4770         112 : void ArraySpliceBuiltinsFromDSLAssembler::DoMoveElements16FixedDoubleArray(compiler::TNode<FixedDoubleArray> p_elements, compiler::TNode<Smi> p_dstIndex, compiler::TNode<Smi> p_srcIndex, compiler::TNode<Smi> p_count) {
    4771         112 :   compiler::CodeAssemblerParameterizedLabel<FixedDoubleArray, Smi, Smi, Smi> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    4772             :   compiler::CodeAssemblerParameterizedLabel<FixedDoubleArray, Smi, Smi, Smi> block1(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    4773             :   compiler::CodeAssemblerParameterizedLabel<FixedDoubleArray, Smi, Smi, Smi> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    4774             :     ca_.Goto(&block0, p_elements, p_dstIndex, p_srcIndex, p_count);
    4775             : 
    4776         112 :   if (block0.is_used()) {
    4777             :     compiler::TNode<FixedDoubleArray> tmp0;
    4778             :     compiler::TNode<Smi> tmp1;
    4779             :     compiler::TNode<Smi> tmp2;
    4780             :     compiler::TNode<Smi> tmp3;
    4781             :     ca_.Bind(&block0, &tmp0, &tmp1, &tmp2, &tmp3);
    4782         112 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 35);
    4783             :     compiler::TNode<IntPtrT> tmp4;
    4784             :     USE(tmp4);
    4785         336 :     tmp4 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).Convert8ATintptr5ATSmi(compiler::TNode<Smi>{tmp1}));
    4786             :     compiler::TNode<IntPtrT> tmp5;
    4787             :     USE(tmp5);
    4788         336 :     tmp5 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).Convert8ATintptr5ATSmi(compiler::TNode<Smi>{tmp2}));
    4789         112 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 36);
    4790             :     compiler::TNode<IntPtrT> tmp6;
    4791             :     USE(tmp6);
    4792         336 :     tmp6 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).Convert8ATintptr5ATSmi(compiler::TNode<Smi>{tmp3}));
    4793         112 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 34);
    4794         336 :     BaseBuiltinsFromDSLAssembler(state_).TorqueMoveElements(compiler::TNode<FixedDoubleArray>{tmp0}, compiler::TNode<IntPtrT>{tmp4}, compiler::TNode<IntPtrT>{tmp5}, compiler::TNode<IntPtrT>{tmp6});
    4795         112 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 31);
    4796             :     ca_.Goto(&block1, tmp0, tmp1, tmp2, tmp3);
    4797             :   }
    4798             : 
    4799         112 :   if (block1.is_used()) {
    4800             :     compiler::TNode<FixedDoubleArray> tmp7;
    4801             :     compiler::TNode<Smi> tmp8;
    4802             :     compiler::TNode<Smi> tmp9;
    4803             :     compiler::TNode<Smi> tmp10;
    4804             :     ca_.Bind(&block1, &tmp7, &tmp8, &tmp9, &tmp10);
    4805             :     ca_.Goto(&block2, tmp7, tmp8, tmp9, tmp10);
    4806             :   }
    4807             : 
    4808             :     compiler::TNode<FixedDoubleArray> tmp11;
    4809             :     compiler::TNode<Smi> tmp12;
    4810             :     compiler::TNode<Smi> tmp13;
    4811             :     compiler::TNode<Smi> tmp14;
    4812             :     ca_.Bind(&block2, &tmp11, &tmp12, &tmp13, &tmp14);
    4813         112 : }
    4814             : 
    4815          56 : void ArraySpliceBuiltinsFromDSLAssembler::StoreHoles16FixedDoubleArray(compiler::TNode<FixedDoubleArray> p_elements, compiler::TNode<Smi> p_holeStartIndex, compiler::TNode<Smi> p_holeEndIndex) {
    4816          56 :   compiler::CodeAssemblerParameterizedLabel<FixedDoubleArray, Smi, Smi> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    4817             :   compiler::CodeAssemblerParameterizedLabel<FixedDoubleArray, Smi, Smi, Smi> block4(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    4818             :   compiler::CodeAssemblerParameterizedLabel<FixedDoubleArray, Smi, Smi, Smi> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    4819             :   compiler::CodeAssemblerParameterizedLabel<FixedDoubleArray, Smi, Smi, Smi> block5(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    4820             :   compiler::CodeAssemblerParameterizedLabel<FixedDoubleArray, Smi, Smi, Smi> block3(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    4821             :   compiler::CodeAssemblerParameterizedLabel<FixedDoubleArray, Smi, Smi> block1(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    4822             :   compiler::CodeAssemblerParameterizedLabel<FixedDoubleArray, Smi, Smi> block6(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    4823             :     ca_.Goto(&block0, p_elements, p_holeStartIndex, p_holeEndIndex);
    4824             : 
    4825          56 :   if (block0.is_used()) {
    4826             :     compiler::TNode<FixedDoubleArray> tmp0;
    4827             :     compiler::TNode<Smi> tmp1;
    4828             :     compiler::TNode<Smi> tmp2;
    4829             :     ca_.Bind(&block0, &tmp0, &tmp1, &tmp2);
    4830          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 41);
    4831             :     ca_.Goto(&block4, tmp0, tmp1, tmp2, tmp1);
    4832             :   }
    4833             : 
    4834          56 :   if (block4.is_used()) {
    4835             :     compiler::TNode<FixedDoubleArray> tmp3;
    4836             :     compiler::TNode<Smi> tmp4;
    4837             :     compiler::TNode<Smi> tmp5;
    4838             :     compiler::TNode<Smi> tmp6;
    4839             :     ca_.Bind(&block4, &tmp3, &tmp4, &tmp5, &tmp6);
    4840             :     compiler::TNode<BoolT> tmp7;
    4841             :     USE(tmp7);
    4842         112 :     tmp7 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).SmiLessThan(compiler::TNode<Smi>{tmp6}, compiler::TNode<Smi>{tmp5}));
    4843          56 :     ca_.Branch(tmp7, &block2, &block3, tmp3, tmp4, tmp5, tmp6);
    4844             :   }
    4845             : 
    4846          56 :   if (block2.is_used()) {
    4847             :     compiler::TNode<FixedDoubleArray> tmp8;
    4848             :     compiler::TNode<Smi> tmp9;
    4849             :     compiler::TNode<Smi> tmp10;
    4850             :     compiler::TNode<Smi> tmp11;
    4851             :     ca_.Bind(&block2, &tmp8, &tmp9, &tmp10, &tmp11);
    4852          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 42);
    4853         168 :     ArrayBuiltinsFromDSLAssembler(state_).StoreArrayHole(compiler::TNode<FixedDoubleArray>{tmp8}, compiler::TNode<Smi>{tmp11});
    4854          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 41);
    4855             :     ca_.Goto(&block5, tmp8, tmp9, tmp10, tmp11);
    4856             :   }
    4857             : 
    4858          56 :   if (block5.is_used()) {
    4859             :     compiler::TNode<FixedDoubleArray> tmp12;
    4860             :     compiler::TNode<Smi> tmp13;
    4861             :     compiler::TNode<Smi> tmp14;
    4862             :     compiler::TNode<Smi> tmp15;
    4863             :     ca_.Bind(&block5, &tmp12, &tmp13, &tmp14, &tmp15);
    4864             :     compiler::TNode<Smi> tmp16;
    4865             :     USE(tmp16);
    4866         168 :     tmp16 = ca_.UncheckedCast<Smi>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr5ATSmi17ATconstexpr_int31(1));
    4867             :     compiler::TNode<Smi> tmp17;
    4868             :     USE(tmp17);
    4869         112 :     tmp17 = ca_.UncheckedCast<Smi>(CodeStubAssembler(state_).SmiAdd(compiler::TNode<Smi>{tmp15}, compiler::TNode<Smi>{tmp16}));
    4870             :     ca_.Goto(&block4, tmp12, tmp13, tmp14, tmp17);
    4871             :   }
    4872             : 
    4873          56 :   if (block3.is_used()) {
    4874             :     compiler::TNode<FixedDoubleArray> tmp18;
    4875             :     compiler::TNode<Smi> tmp19;
    4876             :     compiler::TNode<Smi> tmp20;
    4877             :     compiler::TNode<Smi> tmp21;
    4878             :     ca_.Bind(&block3, &tmp18, &tmp19, &tmp20, &tmp21);
    4879          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 39);
    4880             :     ca_.Goto(&block1, tmp18, tmp19, tmp20);
    4881             :   }
    4882             : 
    4883          56 :   if (block1.is_used()) {
    4884             :     compiler::TNode<FixedDoubleArray> tmp22;
    4885             :     compiler::TNode<Smi> tmp23;
    4886             :     compiler::TNode<Smi> tmp24;
    4887             :     ca_.Bind(&block1, &tmp22, &tmp23, &tmp24);
    4888             :     ca_.Goto(&block6, tmp22, tmp23, tmp24);
    4889             :   }
    4890             : 
    4891             :     compiler::TNode<FixedDoubleArray> tmp25;
    4892             :     compiler::TNode<Smi> tmp26;
    4893             :     compiler::TNode<Smi> tmp27;
    4894             :     ca_.Bind(&block6, &tmp25, &tmp26, &tmp27);
    4895          56 : }
    4896             : 
    4897          56 : void ArraySpliceBuiltinsFromDSLAssembler::DoCopyElements16FixedDoubleArray(compiler::TNode<FixedDoubleArray> p_dstElements, compiler::TNode<Smi> p_dstIndex, compiler::TNode<FixedDoubleArray> p_srcElements, compiler::TNode<Smi> p_srcIndex, compiler::TNode<Smi> p_count) {
    4898          56 :   compiler::CodeAssemblerParameterizedLabel<FixedDoubleArray, Smi, FixedDoubleArray, Smi, Smi> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    4899             :   compiler::CodeAssemblerParameterizedLabel<FixedDoubleArray, Smi, FixedDoubleArray, Smi, Smi> block1(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    4900             :   compiler::CodeAssemblerParameterizedLabel<FixedDoubleArray, Smi, FixedDoubleArray, Smi, Smi> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
    4901             :     ca_.Goto(&block0, p_dstElements, p_dstIndex, p_srcElements, p_srcIndex, p_count);
    4902             : 
    4903          56 :   if (block0.is_used()) {
    4904             :     compiler::TNode<FixedDoubleArray> tmp0;
    4905             :     compiler::TNode<Smi> tmp1;
    4906             :     compiler::TNode<FixedDoubleArray> tmp2;
    4907             :     compiler::TNode<Smi> tmp3;
    4908             :     compiler::TNode<Smi> tmp4;
    4909             :     ca_.Bind(&block0, &tmp0, &tmp1, &tmp2, &tmp3, &tmp4);
    4910          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 50);
    4911             :     compiler::TNode<IntPtrT> tmp5;
    4912             :     USE(tmp5);
    4913         168 :     tmp5 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).Convert8ATintptr5ATSmi(compiler::TNode<Smi>{tmp1}));
    4914          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 51);
    4915             :     compiler::TNode<IntPtrT> tmp6;
    4916             :     USE(tmp6);
    4917         168 :     tmp6 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).Convert8ATintptr5ATSmi(compiler::TNode<Smi>{tmp3}));
    4918             :     compiler::TNode<IntPtrT> tmp7;
    4919             :     USE(tmp7);
    4920         168 :     tmp7 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).Convert8ATintptr5ATSmi(compiler::TNode<Smi>{tmp4}));
    4921          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 49);
    4922         168 :     BaseBuiltinsFromDSLAssembler(state_).TorqueCopyElements(compiler::TNode<FixedDoubleArray>{tmp0}, compiler::TNode<IntPtrT>{tmp5}, compiler::TNode<FixedDoubleArray>{tmp2}, compiler::TNode<IntPtrT>{tmp6}, compiler::TNode<IntPtrT>{tmp7});
    4923          56 :     ca_.SetSourcePosition("../../src/builtins/array-splice.tq", 46);
    4924             :     ca_.Goto(&block1, tmp0, tmp1, tmp2, tmp3, tmp4);
    4925             :   }
    4926             : 
    4927          56 :   if (block1.is_used()) {
    4928             :     compiler::TNode<FixedDoubleArray> tmp8;
    4929             :     compiler::TNode<Smi> tmp9;
    4930             :     compiler::TNode<FixedDoubleArray> tmp10;
    4931             :     compiler::TNode<Smi> tmp11;
    4932             :     compiler::TNode<Smi> tmp12;
    4933             :     ca_.Bind(&block1, &tmp8, &tmp9, &tmp10, &tmp11, &tmp12);
    4934             :     ca_.Goto(&block2, tmp8, tmp9, tmp10, tmp11, tmp12);
    4935             :   }
    4936             : 
    4937             :     compiler::TNode<FixedDoubleArray> tmp13;
    4938             :     compiler::TNode<Smi> tmp14;
    4939             :     compiler::TNode<FixedDoubleArray> tmp15;
    4940             :     compiler::TNode<Smi> tmp16;
    4941             :     compiler::TNode<Smi> tmp17;
    4942             :     ca_.Bind(&block2, &tmp13, &tmp14, &tmp15, &tmp16, &tmp17);
    4943          56 : }
    4944             : 
    4945             : }  // namespace internal
    4946       59456 : }  // namespace v8
    4947             : 

Generated by: LCOV version 1.10