LCOV - code coverage report
Current view: top level - out/Release/gen/torque-generated - builtins-array-of-from-dsl-gen.cc (source / functions) Hit Total Coverage
Test: app.info Lines: 152 152 100.0 %
Date: 2019-03-21 Functions: 7 7 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/js-generator.h"
      10             : #include "src/objects/js-promise.h"
      11             : #include "src/objects/js-regexp-string-iterator.h"
      12             : #include "src/objects/module.h"
      13             : #include "src/objects/stack-frame-info.h"
      14             : #include "src/builtins/builtins-array-gen.h"
      15             : #include "src/builtins/builtins-collections-gen.h"
      16             : #include "src/builtins/builtins-data-view-gen.h"
      17             : #include "src/builtins/builtins-iterator-gen.h"
      18             : #include "src/builtins/builtins-proxy-gen.h"
      19             : #include "src/builtins/builtins-regexp-gen.h"
      20             : #include "src/builtins/builtins-typed-array-gen.h"
      21             : #include "src/builtins/builtins-constructor-gen.h"
      22             : #include "src/builtins/builtins-typed-array-gen.h"
      23             : #include "src/builtins/builtins-typed-array-gen.h"
      24             : #include "src/builtins/builtins-typed-array-gen.h"
      25             : #include "src/builtins/builtins-typed-array-gen.h"
      26             : #include "src/builtins/builtins-typed-array-gen.h"
      27             : #include "src/builtins/builtins-typed-array-gen.h"
      28             : #include "src/builtins/builtins-typed-array-gen.h"
      29             : #include "src/builtins/builtins-typed-array-gen.h"
      30             : #include "torque-generated/builtins-base-from-dsl-gen.h"
      31             : #include "torque-generated/builtins-growable-fixed-array-from-dsl-gen.h"
      32             : #include "torque-generated/builtins-arguments-from-dsl-gen.h"
      33             : #include "torque-generated/builtins-array-from-dsl-gen.h"
      34             : #include "torque-generated/builtins-array-copywithin-from-dsl-gen.h"
      35             : #include "torque-generated/builtins-array-filter-from-dsl-gen.h"
      36             : #include "torque-generated/builtins-array-find-from-dsl-gen.h"
      37             : #include "torque-generated/builtins-array-findindex-from-dsl-gen.h"
      38             : #include "torque-generated/builtins-array-foreach-from-dsl-gen.h"
      39             : #include "torque-generated/builtins-array-join-from-dsl-gen.h"
      40             : #include "torque-generated/builtins-array-lastindexof-from-dsl-gen.h"
      41             : #include "torque-generated/builtins-array-of-from-dsl-gen.h"
      42             : #include "torque-generated/builtins-array-map-from-dsl-gen.h"
      43             : #include "torque-generated/builtins-array-reverse-from-dsl-gen.h"
      44             : #include "torque-generated/builtins-array-shift-from-dsl-gen.h"
      45             : #include "torque-generated/builtins-array-slice-from-dsl-gen.h"
      46             : #include "torque-generated/builtins-array-splice-from-dsl-gen.h"
      47             : #include "torque-generated/builtins-array-unshift-from-dsl-gen.h"
      48             : #include "torque-generated/builtins-collections-from-dsl-gen.h"
      49             : #include "torque-generated/builtins-data-view-from-dsl-gen.h"
      50             : #include "torque-generated/builtins-extras-utils-from-dsl-gen.h"
      51             : #include "torque-generated/builtins-iterator-from-dsl-gen.h"
      52             : #include "torque-generated/builtins-object-from-dsl-gen.h"
      53             : #include "torque-generated/builtins-proxy-from-dsl-gen.h"
      54             : #include "torque-generated/builtins-string-from-dsl-gen.h"
      55             : #include "torque-generated/builtins-string-html-from-dsl-gen.h"
      56             : #include "torque-generated/builtins-string-repeat-from-dsl-gen.h"
      57             : #include "torque-generated/builtins-typed-array-from-dsl-gen.h"
      58             : #include "torque-generated/builtins-typed-array-createtypedarray-from-dsl-gen.h"
      59             : #include "torque-generated/builtins-typed-array-every-from-dsl-gen.h"
      60             : #include "torque-generated/builtins-typed-array-filter-from-dsl-gen.h"
      61             : #include "torque-generated/builtins-typed-array-find-from-dsl-gen.h"
      62             : #include "torque-generated/builtins-typed-array-findindex-from-dsl-gen.h"
      63             : #include "torque-generated/builtins-typed-array-foreach-from-dsl-gen.h"
      64             : #include "torque-generated/builtins-typed-array-reduce-from-dsl-gen.h"
      65             : #include "torque-generated/builtins-typed-array-reduceright-from-dsl-gen.h"
      66             : #include "torque-generated/builtins-typed-array-slice-from-dsl-gen.h"
      67             : #include "torque-generated/builtins-typed-array-some-from-dsl-gen.h"
      68             : #include "torque-generated/builtins-typed-array-subarray-from-dsl-gen.h"
      69             : #include "torque-generated/builtins-test-from-dsl-gen.h"
      70             : 
      71             : namespace v8 {
      72             : namespace internal {
      73             : 
      74         336 : TF_BUILTIN(ArrayOf, CodeStubAssembler) {
      75         112 :   compiler::CodeAssemblerState* state_ = state();  compiler::CodeAssembler ca_(state());
      76          56 :   TNode<Context> parameter0 = UncheckedCast<Context>(Parameter(Descriptor::kContext));
      77          56 :   USE(parameter0);
      78          56 :   Node* argc = Parameter(Descriptor::kJSActualArgumentsCount);
      79          56 :   CodeStubArguments arguments_impl(this, ChangeInt32ToIntPtr(argc));
      80          56 :   TNode<Object> parameter1 = arguments_impl.GetReceiver();
      81          56 : auto arguments = &arguments_impl;
      82          56 : USE(arguments);
      83          56 : USE(parameter1);
      84         112 :   compiler::CodeAssemblerParameterizedLabel<Context, Object> block0(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
      85         112 :   compiler::CodeAssemblerParameterizedLabel<Context, Object, Smi, Object, JSReceiver, Object, Object> block4(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
      86         112 :   compiler::CodeAssemblerParameterizedLabel<Context, Object, Smi, Object, JSReceiver, Object, Object, JSReceiver> block3(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
      87         112 :   compiler::CodeAssemblerParameterizedLabel<Context, Object, Smi, Object, JSReceiver, Object> block2(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
      88         112 :   compiler::CodeAssemblerParameterizedLabel<Context, Object, Smi, Object, JSReceiver, Object> block1(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
      89         112 :   compiler::CodeAssemblerParameterizedLabel<Context, Object, Smi, Object, JSReceiver, Smi> block7(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
      90         112 :   compiler::CodeAssemblerParameterizedLabel<Context, Object, Smi, Object, JSReceiver, Smi> block5(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
      91         112 :   compiler::CodeAssemblerParameterizedLabel<Context, Object, Smi, Object, JSReceiver, Smi> block6(&ca_, compiler::CodeAssemblerLabel::kNonDeferred);
      92          56 :     ca_.Goto(&block0, parameter0, parameter1);
      93             : 
      94          56 :   if (block0.is_used()) {
      95          56 :     compiler::TNode<Context> tmp0;
      96          56 :     compiler::TNode<Object> tmp1;
      97          56 :     ca_.Bind(&block0, &tmp0, &tmp1);
      98          56 :     ca_.SetSourcePosition("../../src/builtins/array-of.tq", 10);
      99          56 :     compiler::TNode<IntPtrT> tmp2;
     100          56 :     USE(tmp2);
     101          56 :     tmp2 = ca_.UncheckedCast<IntPtrT>(CodeStubAssembler(state_).GetArgumentsLength(arguments));
     102          56 :     compiler::TNode<Smi> tmp3;
     103          56 :     USE(tmp3);
     104          56 :     tmp3 = ca_.UncheckedCast<Smi>(BaseBuiltinsFromDSLAssembler(state_).Convert5ATSmi8ATintptr(compiler::TNode<IntPtrT>{tmp2}));
     105          56 :     ca_.SetSourcePosition("../../src/builtins/array-of.tq", 16);
     106          56 :     ca_.SetSourcePosition("../../src/builtins/array-of.tq", 18);
     107          56 :     ca_.SetSourcePosition("../../src/builtins/array-of.tq", 21);
     108          56 :     ca_.SetSourcePosition("../../src/builtins/array-of.tq", 22);
     109          56 :     compiler::TNode<JSReceiver> tmp4;
     110          56 :     USE(tmp4);
     111         112 :     compiler::CodeAssemblerLabel label0(&ca_);
     112          56 :     tmp4 = BaseBuiltinsFromDSLAssembler(state_).Cast13ATConstructor(compiler::TNode<Context>{tmp0}, compiler::TNode<Object>{tmp1}, &label0);
     113          56 :     ca_.Goto(&block3, tmp0, tmp1, tmp3, tmp1, ca_.Uninitialized<JSReceiver>(), tmp1, tmp1, tmp4);
     114          56 :     if (label0.is_used()) {
     115          56 :       ca_.Bind(&label0);
     116          56 :       ca_.Goto(&block4, tmp0, tmp1, tmp3, tmp1, ca_.Uninitialized<JSReceiver>(), tmp1, tmp1);
     117             :     }
     118             :   }
     119             : 
     120          56 :   if (block4.is_used()) {
     121          56 :     compiler::TNode<Context> tmp5;
     122          56 :     compiler::TNode<Object> tmp6;
     123          56 :     compiler::TNode<Smi> tmp7;
     124          56 :     compiler::TNode<Object> tmp8;
     125          56 :     compiler::TNode<JSReceiver> tmp9;
     126          56 :     compiler::TNode<Object> tmp10;
     127          56 :     compiler::TNode<Object> tmp11;
     128          56 :     ca_.Bind(&block4, &tmp5, &tmp6, &tmp7, &tmp8, &tmp9, &tmp10, &tmp11);
     129          56 :     ca_.Goto(&block2, tmp5, tmp6, tmp7, tmp8, tmp9, tmp10);
     130             :   }
     131             : 
     132          56 :   if (block3.is_used()) {
     133          56 :     compiler::TNode<Context> tmp12;
     134          56 :     compiler::TNode<Object> tmp13;
     135          56 :     compiler::TNode<Smi> tmp14;
     136          56 :     compiler::TNode<Object> tmp15;
     137          56 :     compiler::TNode<JSReceiver> tmp16;
     138          56 :     compiler::TNode<Object> tmp17;
     139          56 :     compiler::TNode<Object> tmp18;
     140          56 :     compiler::TNode<JSReceiver> tmp19;
     141          56 :     ca_.Bind(&block3, &tmp12, &tmp13, &tmp14, &tmp15, &tmp16, &tmp17, &tmp18, &tmp19);
     142          56 :     ca_.SetSourcePosition("../../src/builtins/array-of.tq", 24);
     143          56 :     compiler::TNode<JSReceiver> tmp20;
     144          56 :     USE(tmp20);
     145          56 :     tmp20 = ca_.UncheckedCast<JSReceiver>(CodeStubAssembler(state_).Construct(compiler::TNode<Context>{tmp12}, compiler::TNode<JSReceiver>{tmp19}, compiler::TNode<Object>{tmp14}));
     146          56 :     ca_.SetSourcePosition("../../src/builtins/array-of.tq", 22);
     147          56 :     ca_.Goto(&block1, tmp12, tmp13, tmp14, tmp15, tmp20, tmp17);
     148             :   }
     149             : 
     150          56 :   if (block2.is_used()) {
     151          56 :     compiler::TNode<Context> tmp21;
     152          56 :     compiler::TNode<Object> tmp22;
     153          56 :     compiler::TNode<Smi> tmp23;
     154          56 :     compiler::TNode<Object> tmp24;
     155          56 :     compiler::TNode<JSReceiver> tmp25;
     156          56 :     compiler::TNode<Object> tmp26;
     157          56 :     ca_.Bind(&block2, &tmp21, &tmp22, &tmp23, &tmp24, &tmp25, &tmp26);
     158          56 :     ca_.SetSourcePosition("../../src/builtins/array-of.tq", 26);
     159          56 :     ca_.SetSourcePosition("../../src/builtins/array-of.tq", 28);
     160          56 :     compiler::TNode<JSArray> tmp27;
     161          56 :     USE(tmp27);
     162          56 :     tmp27 = ca_.UncheckedCast<JSArray>(CodeStubAssembler(state_).ArrayCreate(compiler::TNode<Context>{tmp21}, compiler::TNode<Number>{tmp23}));
     163          56 :     ca_.SetSourcePosition("../../src/builtins/array-of.tq", 22);
     164          56 :     ca_.Goto(&block1, tmp21, tmp22, tmp23, tmp24, tmp27, tmp26);
     165             :   }
     166             : 
     167          56 :   if (block1.is_used()) {
     168          56 :     compiler::TNode<Context> tmp28;
     169          56 :     compiler::TNode<Object> tmp29;
     170          56 :     compiler::TNode<Smi> tmp30;
     171          56 :     compiler::TNode<Object> tmp31;
     172          56 :     compiler::TNode<JSReceiver> tmp32;
     173          56 :     compiler::TNode<Object> tmp33;
     174          56 :     ca_.Bind(&block1, &tmp28, &tmp29, &tmp30, &tmp31, &tmp32, &tmp33);
     175          56 :     ca_.SetSourcePosition("../../src/builtins/array-of.tq", 21);
     176          56 :     ca_.SetSourcePosition("../../src/builtins/array-of.tq", 33);
     177          56 :     compiler::TNode<Smi> tmp34;
     178          56 :     USE(tmp34);
     179          56 :     tmp34 = ca_.UncheckedCast<Smi>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr5ATSmi17ATconstexpr_int31(0));
     180          56 :     ca_.SetSourcePosition("../../src/builtins/array-of.tq", 36);
     181          56 :     ca_.Goto(&block7, tmp28, tmp29, tmp30, tmp31, tmp32, tmp34);
     182             :   }
     183             : 
     184          56 :   if (block7.is_used()) {
     185          56 :     compiler::TNode<Context> tmp35;
     186          56 :     compiler::TNode<Object> tmp36;
     187          56 :     compiler::TNode<Smi> tmp37;
     188          56 :     compiler::TNode<Object> tmp38;
     189          56 :     compiler::TNode<JSReceiver> tmp39;
     190          56 :     compiler::TNode<Smi> tmp40;
     191          56 :     ca_.Bind(&block7, &tmp35, &tmp36, &tmp37, &tmp38, &tmp39, &tmp40);
     192          56 :     compiler::TNode<BoolT> tmp41;
     193          56 :     USE(tmp41);
     194          56 :     tmp41 = ca_.UncheckedCast<BoolT>(CodeStubAssembler(state_).SmiLessThan(compiler::TNode<Smi>{tmp40}, compiler::TNode<Smi>{tmp37}));
     195          56 :     ca_.Branch(tmp41, &block5, &block6, tmp35, tmp36, tmp37, tmp38, tmp39, tmp40);
     196             :   }
     197             : 
     198          56 :   if (block5.is_used()) {
     199          56 :     compiler::TNode<Context> tmp42;
     200          56 :     compiler::TNode<Object> tmp43;
     201          56 :     compiler::TNode<Smi> tmp44;
     202          56 :     compiler::TNode<Object> tmp45;
     203          56 :     compiler::TNode<JSReceiver> tmp46;
     204          56 :     compiler::TNode<Smi> tmp47;
     205          56 :     ca_.Bind(&block5, &tmp42, &tmp43, &tmp44, &tmp45, &tmp46, &tmp47);
     206          56 :     ca_.SetSourcePosition("../../src/builtins/array-of.tq", 38);
     207          56 :     compiler::TNode<IntPtrT> tmp48;
     208          56 :     USE(tmp48);
     209          56 :     tmp48 = ca_.UncheckedCast<IntPtrT>(BaseBuiltinsFromDSLAssembler(state_).Convert8ATintptr5ATSmi(compiler::TNode<Smi>{tmp47}));
     210          56 :     compiler::TNode<Object> tmp49;
     211          56 :     USE(tmp49);
     212          56 :     tmp49 = ca_.UncheckedCast<Object>(CodeStubAssembler(state_).GetArgumentValue(arguments, compiler::TNode<IntPtrT>{tmp48}));
     213          56 :     ca_.SetSourcePosition("../../src/builtins/array-of.tq", 42);
     214          56 :     compiler::TNode<Object> tmp50;
     215          56 :     tmp50 = CodeStubAssembler(state_).CallBuiltin(Builtins::kFastCreateDataProperty, tmp42, tmp46, tmp47, tmp49);
     216          56 :     USE(tmp50);
     217          56 :     ca_.SetSourcePosition("../../src/builtins/array-of.tq", 45);
     218          56 :     compiler::TNode<Smi> tmp51;
     219          56 :     USE(tmp51);
     220          56 :     tmp51 = ca_.UncheckedCast<Smi>(BaseBuiltinsFromDSLAssembler(state_).FromConstexpr5ATSmi17ATconstexpr_int31(1));
     221          56 :     compiler::TNode<Smi> tmp52;
     222          56 :     USE(tmp52);
     223          56 :     tmp52 = ca_.UncheckedCast<Smi>(CodeStubAssembler(state_).SmiAdd(compiler::TNode<Smi>{tmp47}, compiler::TNode<Smi>{tmp51}));
     224          56 :     ca_.SetSourcePosition("../../src/builtins/array-of.tq", 36);
     225          56 :     ca_.Goto(&block7, tmp42, tmp43, tmp44, tmp45, tmp46, tmp52);
     226             :   }
     227             : 
     228          56 :   if (block6.is_used()) {
     229          56 :     compiler::TNode<Context> tmp53;
     230          56 :     compiler::TNode<Object> tmp54;
     231          56 :     compiler::TNode<Smi> tmp55;
     232          56 :     compiler::TNode<Object> tmp56;
     233          56 :     compiler::TNode<JSReceiver> tmp57;
     234          56 :     compiler::TNode<Smi> tmp58;
     235          56 :     ca_.Bind(&block6, &tmp53, &tmp54, &tmp55, &tmp56, &tmp57, &tmp58);
     236          56 :     ca_.SetSourcePosition("../../src/builtins/array-of.tq", 49);
     237          56 :     CodeStubAssembler(state_).SetPropertyLength(compiler::TNode<Context>{tmp53}, compiler::TNode<Object>{tmp57}, compiler::TNode<Number>{tmp55});
     238          56 :     ca_.SetSourcePosition("../../src/builtins/array-of.tq", 52);
     239          56 :     arguments->PopAndReturn(tmp57);
     240             :   }
     241          56 : }
     242             : 
     243             : }  // namespace internal
     244       87414 : }  // namespace v8
     245             : 

Generated by: LCOV version 1.10