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

#include <maglev-ir.h>

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

Public Member Functions

 Construct (uint64_t bitfield, const compiler::FeedbackSource &feedback, ValueNode *function, ValueNode *new_target, ValueNode *context)
 
Inputfunction ()
 
const Inputfunction () const
 
Inputnew_target ()
 
const Inputnew_target () const
 
Inputcontext ()
 
const Inputcontext () const
 
int num_args () const
 
Inputarg (int i)
 
void set_arg (int i, ValueNode *node)
 
auto args ()
 
compiler::FeedbackSource feedback () const
 
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 kNewTargetIndex = 1
 
static constexpr int kContextIndex = 2
 
static constexpr int kFixedInputCount = 3
 
static constexpr OpProperties kProperties = OpProperties::JSCall()
 

Private Types

using Base = ValueNodeT<Construct>
 

Private Attributes

const compiler::FeedbackSource feedback_
 

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

Member Typedef Documentation

◆ Base

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

Constructor & Destructor Documentation

◆ Construct()

v8::internal::maglev::Construct::Construct ( uint64_t bitfield,
const compiler::FeedbackSource & feedback,
ValueNode * function,
ValueNode * new_target,
ValueNode * context )
inline

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

Here is the call graph for this function:

Member Function Documentation

◆ arg()

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

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

Here is the caller graph for this function:

◆ args()

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

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

Here is the call graph for this function:

◆ context() [1/2]

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

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

◆ context() [2/2]

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

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

◆ feedback()

compiler::FeedbackSource v8::internal::maglev::Construct::feedback ( ) const
inline

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

◆ function() [1/2]

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

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

◆ function() [2/2]

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

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

◆ GenerateCode()

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

◆ MaxCallStackArgs()

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

◆ new_target() [1/2]

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

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

Here is the caller graph for this function:

◆ new_target() [2/2]

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

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

◆ num_args()

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

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

Here is the caller graph for this function:

◆ PrintParams()

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

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

◆ set_arg()

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

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

Here is the caller graph for this function:

◆ SetValueLocationConstraints()

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

◆ VerifyInputs()

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

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

Here is the call graph for this function:

Member Data Documentation

◆ feedback_

const compiler::FeedbackSource v8::internal::maglev::Construct::feedback_
private

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

◆ kContextIndex

int v8::internal::maglev::Construct::kContextIndex = 2
staticconstexpr

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

◆ kFixedInputCount

int v8::internal::maglev::Construct::kFixedInputCount = 3
staticconstexpr

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

◆ kFunctionIndex

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

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

◆ kNewTargetIndex

int v8::internal::maglev::Construct::kNewTargetIndex = 1
staticconstexpr

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

◆ kProperties

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

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


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