LCOV - code coverage report
Current view: top level - out/Release/gen/torque-generated - builtins-array-from-dsl-gen.h (source / functions) Hit Total Coverage
Test: app.info Lines: 2 2 100.0 %
Date: 2019-03-21 Functions: 2 2 100.0 %

          Line data    Source code
       1             : #ifndef V8_TORQUE_ARRAY_FROM_DSL_BASE_H__
       2             : #define V8_TORQUE_ARRAY_FROM_DSL_BASE_H__
       3             : 
       4             : #include "src/compiler/code-assembler.h"
       5             : #include "src/code-stub-assembler.h"
       6             : #include "src/utils.h"
       7             : #include "torque-generated/class-definitions-from-dsl.h"
       8             : 
       9             : namespace v8 {
      10             : namespace internal {
      11             : 
      12       13496 : class ArrayBuiltinsFromDSLAssembler {
      13             :  public:
      14       13496 :   explicit ArrayBuiltinsFromDSLAssembler(compiler::CodeAssemblerState* state) : state_(state), ca_(state) { USE(state_, ca_); }
      15             :   void EnsureWriteableFastElements(compiler::TNode<Context> p_context, compiler::TNode<JSArray> p_array);
      16             :   compiler::TNode<BoolT> IsJSArray(compiler::TNode<Context> p_context, compiler::TNode<Object> p_o);
      17             :   compiler::TNode<Object> LoadElementOrUndefined(compiler::TNode<FixedArray> p_a, compiler::TNode<Smi> p_i);
      18             :   compiler::TNode<Object> LoadElementOrUndefined(compiler::TNode<FixedDoubleArray> p_a, compiler::TNode<Smi> p_i);
      19             :   void StoreArrayHole(compiler::TNode<FixedDoubleArray> p_elements, compiler::TNode<Smi> p_k);
      20             :   void StoreArrayHole(compiler::TNode<FixedArray> p_elements, compiler::TNode<Smi> p_k);
      21             :   void CopyArrayElement(compiler::TNode<FixedArray> p_elements, compiler::TNode<FixedArray> p_newElements, compiler::TNode<Smi> p_from, compiler::TNode<Smi> p_to);
      22             :   void CopyArrayElement(compiler::TNode<FixedDoubleArray> p_elements, compiler::TNode<FixedDoubleArray> p_newElements, compiler::TNode<Smi> p_from, compiler::TNode<Smi> p_to);
      23             :   compiler::TNode<Object> FastArrayEvery(compiler::TNode<Context> p_context, compiler::TNode<JSReceiver> p_o, compiler::TNode<Number> p_len, compiler::TNode<JSReceiver> p_callbackfn, compiler::TNode<Object> p_thisArg, compiler::CodeAssemblerLabel* label_Bailout, compiler::TypedCodeAssemblerVariable<Smi>* label_Bailout_parameter_0);
      24             :   compiler::TNode<Object> FastArrayReduce(compiler::TNode<Context> p_context, compiler::TNode<JSReceiver> p_o, compiler::TNode<Number> p_len, compiler::TNode<JSReceiver> p_callbackfn, compiler::TNode<Object> p_initialAccumulator, compiler::CodeAssemblerLabel* label_Bailout, compiler::TypedCodeAssemblerVariable<Number>* label_Bailout_parameter_0, compiler::TypedCodeAssemblerVariable<Object>* label_Bailout_parameter_1);
      25             :   compiler::TNode<Object> FastArrayReduceRight(compiler::TNode<Context> p_context, compiler::TNode<JSReceiver> p_o, compiler::TNode<Number> p_len, compiler::TNode<JSReceiver> p_callbackfn, compiler::TNode<Object> p_initialAccumulator, compiler::CodeAssemblerLabel* label_Bailout, compiler::TypedCodeAssemblerVariable<Number>* label_Bailout_parameter_0, compiler::TypedCodeAssemblerVariable<Object>* label_Bailout_parameter_1);
      26             :   compiler::TNode<Object> FastArraySome(compiler::TNode<Context> p_context, compiler::TNode<JSReceiver> p_o, compiler::TNode<Number> p_len, compiler::TNode<JSReceiver> p_callbackfn, compiler::TNode<Object> p_thisArg, compiler::CodeAssemblerLabel* label_Bailout, compiler::TypedCodeAssemblerVariable<Smi>* label_Bailout_parameter_0);
      27             :   compiler::TNode<FixedArray> NewSortState(compiler::TNode<Context> p_context, compiler::TNode<JSReceiver> p_receiver, compiler::TNode<HeapObject> p_comparefn, compiler::TNode<Number> p_initialReceiverLength, compiler::TNode<Smi> p_sortLength, bool p_forceGeneric);
      28             :   compiler::TNode<Smi> kFailure();
      29             :   compiler::TNode<Smi> kSuccess();
      30             :   int31_t kMaxMergePending();
      31             :   int31_t kMinGallopWins();
      32             :   compiler::TNode<Smi> kSortStateTempSize();
      33             :   compiler::TNode<Smi> GetPendingRunsSize(compiler::TNode<Context> p_context, compiler::TNode<FixedArray> p_sortState);
      34             :   compiler::TNode<Smi> GetPendingRunBase(compiler::TNode<Context> p_context, compiler::TNode<FixedArray> p_pendingRuns, compiler::TNode<Smi> p_run);
      35             :   void SetPendingRunBase(compiler::TNode<FixedArray> p_pendingRuns, compiler::TNode<Smi> p_run, compiler::TNode<Smi> p_value);
      36             :   compiler::TNode<Smi> GetPendingRunLength(compiler::TNode<Context> p_context, compiler::TNode<FixedArray> p_pendingRuns, compiler::TNode<Smi> p_run);
      37             :   void SetPendingRunLength(compiler::TNode<FixedArray> p_pendingRuns, compiler::TNode<Smi> p_run, compiler::TNode<Smi> p_value);
      38             :   void PushRun(compiler::TNode<Context> p_context, compiler::TNode<FixedArray> p_sortState, compiler::TNode<Smi> p_base, compiler::TNode<Smi> p_length);
      39             :   compiler::TNode<FixedArray> GetTempArray(compiler::TNode<Context> p_context, compiler::TNode<FixedArray> p_sortState, compiler::TNode<Smi> p_requestedSize);
      40             :   void EnsureSuccess(compiler::TNode<Context> p_context, compiler::TNode<FixedArray> p_sortState, compiler::CodeAssemblerLabel* label_Bailout);
      41             :   compiler::TNode<Smi> Failure(compiler::TNode<FixedArray> p_sortState);
      42             :   compiler::TNode<Object> CallLoad(compiler::TNode<Context> p_context, compiler::TNode<FixedArray> p_sortState, compiler::TNode<BuiltinPtr> p_load, compiler::TNode<Smi> p_index, compiler::CodeAssemblerLabel* label_Bailout);
      43             :   void CallStore(compiler::TNode<Context> p_context, compiler::TNode<FixedArray> p_sortState, compiler::TNode<BuiltinPtr> p_store, compiler::TNode<Smi> p_index, compiler::TNode<Object> p_value, compiler::CodeAssemblerLabel* label_Bailout);
      44             :   void BinaryInsertionSort(compiler::TNode<Context> p_context, compiler::TNode<FixedArray> p_sortState, compiler::TNode<Smi> p_low, compiler::TNode<Smi> p_startArg, compiler::TNode<Smi> p_high);
      45             :   compiler::TNode<Smi> CountAndMakeRun(compiler::TNode<Context> p_context, compiler::TNode<FixedArray> p_sortState, compiler::TNode<Smi> p_lowArg, compiler::TNode<Smi> p_high);
      46             :   void ReverseRange(compiler::TNode<FixedArray> p_array, compiler::TNode<Smi> p_from, compiler::TNode<Smi> p_to);
      47             :   void MergeLow(compiler::TNode<Context> p_context, compiler::TNode<FixedArray> p_sortState, compiler::TNode<Smi> p_baseA, compiler::TNode<Smi> p_lengthAArg, compiler::TNode<Smi> p_baseB, compiler::TNode<Smi> p_lengthBArg);
      48             :   void MergeHigh(compiler::TNode<Context> p_context, compiler::TNode<FixedArray> p_sortState, compiler::TNode<Smi> p_baseA, compiler::TNode<Smi> p_lengthAArg, compiler::TNode<Smi> p_baseB, compiler::TNode<Smi> p_lengthBArg);
      49             :   compiler::TNode<Smi> ComputeMinRunLength(compiler::TNode<Smi> p_nArg);
      50             :   compiler::TNode<BoolT> RunInvariantEstablished(compiler::TNode<Context> p_context, compiler::TNode<FixedArray> p_pendingRuns, compiler::TNode<Smi> p_n);
      51             :   void MergeCollapse(compiler::TNode<Context> p_context, compiler::TNode<FixedArray> p_sortState);
      52             :   void MergeForceCollapse(compiler::TNode<Context> p_context, compiler::TNode<FixedArray> p_sortState);
      53             :   void ArrayTimSortImpl(compiler::TNode<Context> p_context, compiler::TNode<FixedArray> p_sortState, compiler::TNode<Smi> p_length);
      54             :   void CopyReceiverElementsToWorkArray(compiler::TNode<Context> p_context, compiler::TNode<FixedArray> p_sortState, compiler::TNode<Smi> p_length);
      55             :   void CopyWorkArrayToReceiver(compiler::TNode<Context> p_context, compiler::TNode<FixedArray> p_sortState, compiler::TNode<Smi> p_length);
      56             :   compiler::TNode<JSReceiver> LoadSortStateReceiver(compiler::TNode<FixedArray> p_o);
      57             :   void StoreSortStateReceiver(compiler::TNode<FixedArray> p_o, compiler::TNode<JSReceiver> p_v);
      58             :   compiler::TNode<Map> LoadSortStateInitialReceiverMap(compiler::TNode<FixedArray> p_o);
      59             :   void StoreSortStateInitialReceiverMap(compiler::TNode<FixedArray> p_o, compiler::TNode<Map> p_v);
      60             :   compiler::TNode<Number> LoadSortStateInitialReceiverLength(compiler::TNode<FixedArray> p_o);
      61             :   void StoreSortStateInitialReceiverLength(compiler::TNode<FixedArray> p_o, compiler::TNode<Number> p_v);
      62             :   compiler::TNode<HeapObject> LoadSortStateUserCmpFn(compiler::TNode<FixedArray> p_o);
      63             :   void StoreSortStateUserCmpFn(compiler::TNode<FixedArray> p_o, compiler::TNode<HeapObject> p_v);
      64             :   compiler::TNode<BuiltinPtr> LoadSortStateSortComparePtr(compiler::TNode<FixedArray> p_o);
      65             :   void StoreSortStateSortComparePtr(compiler::TNode<FixedArray> p_o, compiler::TNode<BuiltinPtr> p_v);
      66             :   compiler::TNode<BuiltinPtr> LoadSortStateLoadFn(compiler::TNode<FixedArray> p_o);
      67             :   void StoreSortStateLoadFn(compiler::TNode<FixedArray> p_o, compiler::TNode<BuiltinPtr> p_v);
      68             :   compiler::TNode<BuiltinPtr> LoadSortStateStoreFn(compiler::TNode<FixedArray> p_o);
      69             :   void StoreSortStateStoreFn(compiler::TNode<FixedArray> p_o, compiler::TNode<BuiltinPtr> p_v);
      70             :   compiler::TNode<BuiltinPtr> LoadSortStateCanUseSameAccessorFn(compiler::TNode<FixedArray> p_o);
      71             :   void StoreSortStateCanUseSameAccessorFn(compiler::TNode<FixedArray> p_o, compiler::TNode<BuiltinPtr> p_v);
      72             :   compiler::TNode<Smi> LoadSortStateBailoutStatus(compiler::TNode<FixedArray> p_o);
      73             :   void StoreSortStateBailoutStatus(compiler::TNode<FixedArray> p_o, compiler::TNode<Smi> p_v);
      74             :   compiler::TNode<Smi> LoadSortStateMinGallop(compiler::TNode<FixedArray> p_o);
      75             :   void StoreSortStateMinGallop(compiler::TNode<FixedArray> p_o, compiler::TNode<Smi> p_v);
      76             :   compiler::TNode<Smi> LoadSortStatePendingRunsSize(compiler::TNode<FixedArray> p_o);
      77             :   void StoreSortStatePendingRunsSize(compiler::TNode<FixedArray> p_o, compiler::TNode<Smi> p_v);
      78             :   compiler::TNode<FixedArray> LoadSortStatePendingRuns(compiler::TNode<FixedArray> p_o);
      79             :   void StoreSortStatePendingRuns(compiler::TNode<FixedArray> p_o, compiler::TNode<FixedArray> p_v);
      80             :   compiler::TNode<FixedArray> LoadSortStateWorkArray(compiler::TNode<FixedArray> p_o);
      81             :   void StoreSortStateWorkArray(compiler::TNode<FixedArray> p_o, compiler::TNode<FixedArray> p_v);
      82             :   compiler::TNode<FixedArray> LoadSortStateTempArray(compiler::TNode<FixedArray> p_o);
      83             :   void StoreSortStateTempArray(compiler::TNode<FixedArray> p_o, compiler::TNode<FixedArray> p_v);
      84             :   compiler::TNode<Number> _method_SortState_Compare(compiler::TNode<Context> p_context, compiler::TNode<FixedArray> p_this, compiler::TNode<Object> p_x, compiler::TNode<Object> p_y);
      85             :   void _method_SortState_CheckAccessor(compiler::TNode<Context> p_context, compiler::TNode<FixedArray> p_this, compiler::CodeAssemblerLabel* label_Bailout);
      86             :   void _method_SortState_ResetToGenericAccessor(compiler::TNode<FixedArray> p_this);
      87             :  private:
      88             :   compiler::CodeAssemblerState* const state_;
      89             :   compiler::CodeAssembler ca_;
      90             : };
      91             : 
      92             : }  // namespace internal
      93             : }  // namespace v8
      94             : 
      95             : #endif  // V8_TORQUE_ARRAY_FROM_DSL_BASE_H__

Generated by: LCOV version 1.10