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

#include <maglev-ir.h>

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

Public Types

using OutputRegister = Register
 

Public Member Functions

 Constant (uint64_t bitfield, compiler::HeapObjectRef object)
 
bool ToBoolean (LocalIsolate *local_isolate) const
 
bool IsTheHole (compiler::JSHeapBroker *broker) const
 
void SetValueLocationConstraints ()
 
void GenerateCode (MaglevAssembler *, const ProcessingState &)
 
void PrintParams (std::ostream &, MaglevGraphLabeller *) const
 
compiler::HeapObjectRef object ()
 
void DoLoadToRegister (MaglevAssembler *, OutputRegister)
 
DirectHandle< ObjectDoReify (LocalIsolate *isolate) const
 
compiler::HeapObjectRef ref () const
 
- Public Member Functions inherited from v8::internal::maglev::FixedInputNodeTMixin< InputCount, Base, Derived >
constexpr bool has_inputs () const
 
constexpr uint16_t input_count () const
 
constexpr auto end ()
 
void VerifyInputs (MaglevGraphLabeller *graph_labeller) const
 
- Public Member Functions inherited from v8::internal::maglev::NodeTMixin< Base, Derived >
constexpr Opcode opcode () const
 
constexpr const OpPropertiesproperties () const
 

Private Types

using Base = FixedInputValueNodeT<0, Constant>
 

Private Attributes

const compiler::HeapObjectRef object_
 

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)
 
- Static Public Attributes inherited from v8::internal::maglev::FixedInputNodeTMixin< InputCount, Base, Derived >
static constexpr size_t kInputCount = InputCount
 
- Protected Types inherited from v8::internal::maglev::FixedInputNodeTMixin< InputCount, Base, Derived >
using InputTypes = detail::ArrayWrapper<kInputCount>
 
- Protected Member Functions inherited from v8::internal::maglev::FixedInputNodeTMixin< InputCount, Base, Derived >
template<typename... Args>
 FixedInputNodeTMixin (uint64_t bitfield, Args &&... args)
 
- Protected Member Functions inherited from v8::internal::maglev::NodeTMixin< Base, Derived >
template<typename... Args>
 NodeTMixin (uint64_t bitfield, Args &&... args)
 
- Protected Attributes inherited from v8::internal::maglev::FixedInputNodeTMixin< InputCount, Base, Derived >
detail::YouNeedToDefineAnInputTypesArrayInYourDerivedClass kInputTypes
 

Detailed Description

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

Member Typedef Documentation

◆ Base

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

◆ OutputRegister

Constructor & Destructor Documentation

◆ Constant()

v8::internal::maglev::Constant::Constant ( uint64_t bitfield,
compiler::HeapObjectRef object )
inlineexplicit

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

Member Function Documentation

◆ DoLoadToRegister()

void v8::internal::maglev::Constant::DoLoadToRegister ( MaglevAssembler * ,
OutputRegister  )

◆ DoReify()

DirectHandle< Object > v8::internal::maglev::Constant::DoReify ( LocalIsolate * isolate) const

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

◆ GenerateCode()

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

◆ IsTheHole()

bool v8::internal::maglev::Constant::IsTheHole ( compiler::JSHeapBroker * broker) const
inline

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

◆ object()

compiler::HeapObjectRef v8::internal::maglev::Constant::object ( )
inline

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

◆ PrintParams()

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

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

◆ ref()

compiler::HeapObjectRef v8::internal::maglev::Constant::ref ( ) const
inline

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

◆ SetValueLocationConstraints()

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

◆ ToBoolean()

bool v8::internal::maglev::Constant::ToBoolean ( LocalIsolate * local_isolate) const
inline

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

Here is the call graph for this function:

Member Data Documentation

◆ object_

const compiler::HeapObjectRef v8::internal::maglev::Constant::object_
private

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


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