v8
V8 is Google’s open source high-performance JavaScript and WebAssembly engine, written in C++.
Loading...
Searching...
No Matches
v8::internal::maglev::CallWithSpread Class Reference

#include <maglev-ir.h>

Inheritance diagram for v8::internal::maglev::CallWithSpread:
Collaboration diagram for v8::internal::maglev::CallWithSpread:

Public Member Functions

 CallWithSpread (uint64_t bitfield, ValueNode *function, ValueNode *context)
 
Inputfunction ()
 
const Inputfunction () const
 
Inputcontext ()
 
const Inputcontext () const
 
int num_args () const
 
int num_args_no_spread () const
 
Inputarg (int i)
 
void set_arg (int i, ValueNode *node)
 
auto args_no_spread ()
 
Inputspread ()
 
Inputreceiver ()
 
void VerifyInputs (MaglevGraphLabeller *graph_labeller) const
 
int MaxCallStackArgs () const
 
void SetValueLocationConstraints ()
 
void GenerateCode (MaglevAssembler *, const ProcessingState &)
 
void PrintParams (std::ostream &, MaglevGraphLabeller *) const
 
- Public Member Functions inherited from v8::internal::maglev::NodeTMixin< Base, Derived >
constexpr Opcode opcode () const
 
constexpr const OpPropertiesproperties () const
 

Static Public Attributes

static constexpr int kFunctionIndex = 0
 
static constexpr int kContextIndex = 1
 
static constexpr int kFixedInputCount = 2
 
static constexpr OpProperties kProperties = OpProperties::JSCall()
 

Private Types

using Base = ValueNodeT<CallWithSpread>
 

Additional Inherited Members

- Static Public Member Functions inherited from v8::internal::maglev::NodeTMixin< Base, Derived >
template<typename... Args>
static Derived * New (Zone *zone, std::initializer_list< ValueNode * > inputs, Args &&... args)
 
template<typename... Args>
static Derived * New (Zone *zone, size_t input_count, Args &&... args)
 
- Protected Member Functions inherited from v8::internal::maglev::NodeTMixin< Base, Derived >
template<typename... Args>
 NodeTMixin (uint64_t bitfield, Args &&... args)
 

Detailed Description

Definition at line 9949 of file maglev-ir.h.

Member Typedef Documentation

◆ Base

Constructor & Destructor Documentation

◆ CallWithSpread()

v8::internal::maglev::CallWithSpread::CallWithSpread ( uint64_t bitfield,
ValueNode * function,
ValueNode * context )
inline

Definition at line 9960 of file maglev-ir.h.

Member Function Documentation

◆ arg()

Input & v8::internal::maglev::CallWithSpread::arg ( int i)
inline

Definition at line 9977 of file maglev-ir.h.

Here is the caller graph for this function:

◆ args_no_spread()

auto v8::internal::maglev::CallWithSpread::args_no_spread ( )
inline

Definition at line 9981 of file maglev-ir.h.

Here is the call graph for this function:

◆ context() [1/2]

Input & v8::internal::maglev::CallWithSpread::context ( )
inline

Definition at line 9970 of file maglev-ir.h.

◆ context() [2/2]

const Input & v8::internal::maglev::CallWithSpread::context ( ) const
inline

Definition at line 9971 of file maglev-ir.h.

◆ function() [1/2]

Input & v8::internal::maglev::CallWithSpread::function ( )
inline

Definition at line 9968 of file maglev-ir.h.

◆ function() [2/2]

const Input & v8::internal::maglev::CallWithSpread::function ( ) const
inline

Definition at line 9969 of file maglev-ir.h.

◆ GenerateCode()

void v8::internal::maglev::CallWithSpread::GenerateCode ( MaglevAssembler * ,
const ProcessingState &  )

◆ MaxCallStackArgs()

int v8::internal::maglev::CallWithSpread::MaxCallStackArgs ( ) const

◆ num_args()

int v8::internal::maglev::CallWithSpread::num_args ( ) const
inline

Definition at line 9972 of file maglev-ir.h.

Here is the caller graph for this function:

◆ num_args_no_spread()

int v8::internal::maglev::CallWithSpread::num_args_no_spread ( ) const
inline

Definition at line 9973 of file maglev-ir.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ PrintParams()

void v8::internal::maglev::CallWithSpread::PrintParams ( std::ostream & ,
MaglevGraphLabeller *  ) const
inline

Definition at line 9999 of file maglev-ir.h.

◆ receiver()

Input & v8::internal::maglev::CallWithSpread::receiver ( )
inline

Definition at line 9990 of file maglev-ir.h.

Here is the call graph for this function:

◆ set_arg()

void v8::internal::maglev::CallWithSpread::set_arg ( int i,
ValueNode * node )
inline

Definition at line 9978 of file maglev-ir.h.

◆ SetValueLocationConstraints()

void v8::internal::maglev::CallWithSpread::SetValueLocationConstraints ( )

◆ spread()

Input & v8::internal::maglev::CallWithSpread::spread ( )
inline

Definition at line 9986 of file maglev-ir.h.

◆ VerifyInputs()

void v8::internal::maglev::CallWithSpread::VerifyInputs ( MaglevGraphLabeller * graph_labeller) const

Definition at line 641 of file maglev-ir.cc.

Here is the call graph for this function:

Member Data Documentation

◆ kContextIndex

int v8::internal::maglev::CallWithSpread::kContextIndex = 1
staticconstexpr

Definition at line 9955 of file maglev-ir.h.

◆ kFixedInputCount

int v8::internal::maglev::CallWithSpread::kFixedInputCount = 2
staticconstexpr

Definition at line 9956 of file maglev-ir.h.

◆ kFunctionIndex

int v8::internal::maglev::CallWithSpread::kFunctionIndex = 0
staticconstexpr

Definition at line 9954 of file maglev-ir.h.

◆ kProperties

OpProperties v8::internal::maglev::CallWithSpread::kProperties = OpProperties::JSCall()
staticconstexpr

Definition at line 9966 of file maglev-ir.h.


The documentation for this class was generated from the following files: