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

#include <maglev-ir.h>

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

Public Member Functions

 CallKnownJSFunction (uint64_t bitfield, compiler::SharedFunctionInfoRef shared_function_info, ValueNode *closure, ValueNode *context, ValueNode *receiver, ValueNode *new_target)
 
Inputclosure ()
 
const Inputclosure () const
 
Inputcontext ()
 
const Inputcontext () const
 
Inputreceiver ()
 
const Inputreceiver () const
 
Inputnew_target ()
 
const Inputnew_target () const
 
int num_args () const
 
Inputarg (int i)
 
void set_arg (int i, ValueNode *node)
 
auto args ()
 
compiler::SharedFunctionInfoRef shared_function_info () const
 
void VerifyInputs (MaglevGraphLabeller *graph_labeller) const
 
int MaxCallStackArgs () const
 
void SetValueLocationConstraints ()
 
void GenerateCode (MaglevAssembler *, const ProcessingState &)
 
void PrintParams (std::ostream &, MaglevGraphLabeller *) const
 
int expected_parameter_count () 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 kClosureIndex = 0
 
static constexpr int kContextIndex = 1
 
static constexpr int kReceiverIndex = 2
 
static constexpr int kNewTargetIndex = 3
 
static constexpr int kFixedInputCount = 4
 
static constexpr OpProperties kProperties = OpProperties::JSCall()
 

Private Types

using Base = ValueNodeT<CallKnownJSFunction>
 

Private Attributes

const compiler::SharedFunctionInfoRef shared_function_info_
 
int expected_parameter_count_
 

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 10095 of file maglev-ir.h.

Member Typedef Documentation

◆ Base

Constructor & Destructor Documentation

◆ CallKnownJSFunction()

v8::internal::maglev::CallKnownJSFunction::CallKnownJSFunction ( uint64_t bitfield,
compiler::SharedFunctionInfoRef shared_function_info,
ValueNode * closure,
ValueNode * context,
ValueNode * receiver,
ValueNode * new_target )
inline

Definition at line 86 of file maglev-ir-inl.h.

Here is the call graph for this function:

Member Function Documentation

◆ arg()

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

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

Here is the caller graph for this function:

◆ args()

auto v8::internal::maglev::CallKnownJSFunction::args ( )
inline

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

Here is the call graph for this function:

◆ closure() [1/2]

Input & v8::internal::maglev::CallKnownJSFunction::closure ( )
inline

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

Here is the caller graph for this function:

◆ closure() [2/2]

const Input & v8::internal::maglev::CallKnownJSFunction::closure ( ) const
inline

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

◆ context() [1/2]

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

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

Here is the caller graph for this function:

◆ context() [2/2]

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

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

◆ expected_parameter_count()

int v8::internal::maglev::CallKnownJSFunction::expected_parameter_count ( ) const
inline

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

◆ GenerateCode()

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

◆ MaxCallStackArgs()

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

◆ new_target() [1/2]

Input & v8::internal::maglev::CallKnownJSFunction::new_target ( )
inline

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

Here is the caller graph for this function:

◆ new_target() [2/2]

const Input & v8::internal::maglev::CallKnownJSFunction::new_target ( ) const
inline

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

◆ num_args()

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

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

Here is the caller graph for this function:

◆ PrintParams()

void v8::internal::maglev::CallKnownJSFunction::PrintParams ( std::ostream & os,
MaglevGraphLabeller * graph_labeller ) const

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

◆ receiver() [1/2]

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

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

Here is the caller graph for this function:

◆ receiver() [2/2]

const Input & v8::internal::maglev::CallKnownJSFunction::receiver ( ) const
inline

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

◆ set_arg()

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

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

◆ SetValueLocationConstraints()

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

◆ shared_function_info()

compiler::SharedFunctionInfoRef v8::internal::maglev::CallKnownJSFunction::shared_function_info ( ) const
inline

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

Here is the caller graph for this function:

◆ VerifyInputs()

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

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

Here is the call graph for this function:

Member Data Documentation

◆ expected_parameter_count_

int v8::internal::maglev::CallKnownJSFunction::expected_parameter_count_
private

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

◆ kClosureIndex

int v8::internal::maglev::CallKnownJSFunction::kClosureIndex = 0
staticconstexpr

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

◆ kContextIndex

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

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

◆ kFixedInputCount

int v8::internal::maglev::CallKnownJSFunction::kFixedInputCount = 4
staticconstexpr

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

◆ kNewTargetIndex

int v8::internal::maglev::CallKnownJSFunction::kNewTargetIndex = 3
staticconstexpr

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

◆ kProperties

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

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

◆ kReceiverIndex

int v8::internal::maglev::CallKnownJSFunction::kReceiverIndex = 2
staticconstexpr

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

◆ shared_function_info_

const compiler::SharedFunctionInfoRef v8::internal::maglev::CallKnownJSFunction::shared_function_info_
private

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


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