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

Generated by: LCOV version 1.10