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

          Line data    Source code
       1             : #ifndef V8_TORQUE_ARRAY_JOIN_FROM_DSL_BASE_H__
       2             : #define V8_TORQUE_ARRAY_JOIN_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        4424 : class ArrayJoinBuiltinsFromDSLAssembler {
      13             :  public:
      14        4424 :   explicit ArrayJoinBuiltinsFromDSLAssembler(compiler::CodeAssemblerState* state) : state_(state), ca_(state) { USE(state_, ca_); }
      15             :   void CannotUseSameArrayAccessor7JSArray(compiler::TNode<Context> p_context, compiler::TNode<BuiltinPtr> p_loadFn, compiler::TNode<JSReceiver> p_receiver, compiler::TNode<Map> p_originalMap, compiler::TNode<Number> p_originalLen, compiler::CodeAssemblerLabel* label_Cannot, compiler::CodeAssemblerLabel* label_Can);
      16             :   void CannotUseSameArrayAccessor12JSTypedArray(compiler::TNode<Context> p_context, compiler::TNode<BuiltinPtr> p_loadFn, compiler::TNode<JSReceiver> p_receiver, compiler::TNode<Map> p_initialMap, compiler::TNode<Number> p_initialLen, compiler::CodeAssemblerLabel* label_Cannot, compiler::CodeAssemblerLabel* label_Can);
      17             :   compiler::TNode<IntPtrT> AddStringLength(compiler::TNode<Context> p_context, compiler::TNode<IntPtrT> p_lenA, compiler::TNode<IntPtrT> p_lenB);
      18             :   struct Buffer {
      19             :     compiler::TNode<FixedArray> fixedArray;
      20             :     compiler::TNode<IntPtrT> index;
      21             :     compiler::TNode<IntPtrT> totalStringLength;
      22             :     compiler::TNode<BoolT> isOneByte;
      23             : 
      24         224 :     std::tuple<compiler::TNode<FixedArray>, compiler::TNode<IntPtrT>, compiler::TNode<IntPtrT>, compiler::TNode<BoolT>> Flatten() const {
      25         224 :       return std::tuple_cat(std::make_tuple(fixedArray), std::make_tuple(index), std::make_tuple(totalStringLength), std::make_tuple(isOneByte));
      26             :     }
      27             :   };
      28             :   ArrayJoinBuiltinsFromDSLAssembler::Buffer NewBuffer(compiler::TNode<UintPtrT> p_len, compiler::TNode<String> p_sep);
      29             :   compiler::TNode<String> BufferJoin(compiler::TNode<Context> p_context, ArrayJoinBuiltinsFromDSLAssembler::Buffer p_buffer, compiler::TNode<String> p_sep);
      30             :   compiler::TNode<Object> ArrayJoin7JSArray(compiler::TNode<Context> p_context, bool p_useToLocaleString, compiler::TNode<JSReceiver> p_receiver, compiler::TNode<String> p_sep, compiler::TNode<Number> p_lenNumber, compiler::TNode<Object> p_locales, compiler::TNode<Object> p_options);
      31             :   compiler::TNode<Object> ArrayJoin12JSTypedArray(compiler::TNode<Context> p_context, bool p_useToLocaleString, compiler::TNode<JSReceiver> p_receiver, compiler::TNode<String> p_sep, compiler::TNode<Number> p_lenNumber, compiler::TNode<Object> p_locales, compiler::TNode<Object> p_options);
      32             :   compiler::TNode<FixedArray> LoadJoinStack(compiler::TNode<Context> p_context, compiler::CodeAssemblerLabel* label_IfUninitialized);
      33             :   void SetJoinStack(compiler::TNode<Context> p_context, compiler::TNode<FixedArray> p_stack);
      34             :   void JoinStackPushInline(compiler::TNode<Context> p_context, compiler::TNode<JSReceiver> p_receiver, compiler::CodeAssemblerLabel* label_ReceiverAdded, compiler::CodeAssemblerLabel* label_ReceiverNotAdded);
      35             :   void JoinStackPopInline(compiler::TNode<Context> p_context, compiler::TNode<JSReceiver> p_receiver);
      36             :   compiler::TNode<String> ArrayJoinImpl7JSArray(compiler::TNode<Context> p_context, compiler::TNode<JSReceiver> p_receiver, compiler::TNode<String> p_sep, compiler::TNode<Number> p_lengthNumber, bool p_useToLocaleString, compiler::TNode<Object> p_locales, compiler::TNode<Object> p_options, compiler::TNode<BuiltinPtr> p_initialLoadFn);
      37             :   compiler::TNode<String> ArrayJoinImpl12JSTypedArray(compiler::TNode<Context> p_context, compiler::TNode<JSReceiver> p_receiver, compiler::TNode<String> p_sep, compiler::TNode<Number> p_lengthNumber, bool p_useToLocaleString, compiler::TNode<Object> p_locales, compiler::TNode<Object> p_options, compiler::TNode<BuiltinPtr> p_initialLoadFn);
      38             :   compiler::TNode<FixedArray> StoreAndGrowFixedArray10JSReceiver(compiler::TNode<FixedArray> p_fixedArray, compiler::TNode<IntPtrT> p_index, compiler::TNode<JSReceiver> p_element);
      39             :   compiler::TNode<Object> CycleProtectedArrayJoin7JSArray(compiler::TNode<Context> p_context, bool p_useToLocaleString, compiler::TNode<JSReceiver> p_o, compiler::TNode<Number> p_len, compiler::TNode<Object> p_sepObj, compiler::TNode<Object> p_locales, compiler::TNode<Object> p_options);
      40             :   compiler::TNode<Object> CycleProtectedArrayJoin12JSTypedArray(compiler::TNode<Context> p_context, bool p_useToLocaleString, compiler::TNode<JSReceiver> p_o, compiler::TNode<Number> p_len, compiler::TNode<Object> p_sepObj, compiler::TNode<Object> p_locales, compiler::TNode<Object> p_options);
      41             :   compiler::TNode<FixedArray> StoreAndGrowFixedArray5ATSmi(compiler::TNode<FixedArray> p_fixedArray, compiler::TNode<IntPtrT> p_index, compiler::TNode<Smi> p_element);
      42             :   compiler::TNode<FixedArray> StoreAndGrowFixedArray6String(compiler::TNode<FixedArray> p_fixedArray, compiler::TNode<IntPtrT> p_index, compiler::TNode<String> p_element);
      43             :  private:
      44             :   compiler::CodeAssemblerState* const state_;
      45             :   compiler::CodeAssembler ca_;
      46             : };
      47             : 
      48             : }  // namespace internal
      49             : }  // namespace v8
      50             : 
      51             : #endif  // V8_TORQUE_ARRAY_JOIN_FROM_DSL_BASE_H__

Generated by: LCOV version 1.10