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

#include <maglev-ir.h>

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

Public Types

enum class  ConversionMode { kCanonicalizeSmi , kForceHeapNumber }
 

Public Member Functions

 Float64ToTagged (uint64_t bitfield, ConversionMode mode)
 
Inputinput ()
 
int MaxCallStackArgs () const
 
void SetValueLocationConstraints ()
 
void GenerateCode (MaglevAssembler *, const ProcessingState &)
 
void PrintParams (std::ostream &, MaglevGraphLabeller *) const
 
auto options () const
 
ConversionMode conversion_mode () 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
 

Static Public Attributes

static constexpr Base::InputTypes kInputTypes {ValueRepresentation::kFloat64}
 
static constexpr OpProperties kProperties
 
- Static Public Attributes inherited from v8::internal::maglev::FixedInputNodeTMixin< InputCount, Base, Derived >
static constexpr size_t kInputCount = InputCount
 

Private Types

using Base = FixedInputValueNodeT<1, Float64ToTagged>
 
using ConversionModeBitField = NextBitField<ConversionMode, 1>
 

Private Member Functions

bool canonicalize_smi ()
 

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

Member Typedef Documentation

◆ Base

◆ ConversionModeBitField

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

Member Enumeration Documentation

◆ ConversionMode

Enumerator
kCanonicalizeSmi 
kForceHeapNumber 

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

Constructor & Destructor Documentation

◆ Float64ToTagged()

v8::internal::maglev::Float64ToTagged::Float64ToTagged ( uint64_t bitfield,
ConversionMode mode )
inlineexplicit

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

Member Function Documentation

◆ canonicalize_smi()

bool v8::internal::maglev::Float64ToTagged::canonicalize_smi ( )
inlineprivate

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

◆ conversion_mode()

ConversionMode v8::internal::maglev::Float64ToTagged::conversion_mode ( ) const
inline

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

Here is the caller graph for this function:

◆ GenerateCode()

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

◆ input()

Input & v8::internal::maglev::Float64ToTagged::input ( )
inline

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

Here is the call graph for this function:

◆ MaxCallStackArgs()

int v8::internal::maglev::Float64ToTagged::MaxCallStackArgs ( ) const
inline

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

◆ options()

auto v8::internal::maglev::Float64ToTagged::options ( ) const
inline

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

Here is the call graph for this function:

◆ PrintParams()

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

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

◆ SetValueLocationConstraints()

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

Member Data Documentation

◆ kInputTypes

Base::InputTypes v8::internal::maglev::Float64ToTagged::kInputTypes {ValueRepresentation::kFloat64}
staticconstexpr

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

◆ kProperties

OpProperties v8::internal::maglev::Float64ToTagged::kProperties
staticconstexpr
Initial value:
static constexpr OpProperties ConversionNode()
Definition maglev-ir.h:1150
static constexpr OpProperties DeferredCall()
Definition maglev-ir.h:1168
static constexpr OpProperties CanAllocate()
Definition maglev-ir.h:1108

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


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