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

#include <register-arm.h>

Inheritance diagram for v8::internal::Register:
Collaboration diagram for v8::internal::Register:

Public Member Functions

bool is_byte_register () const
 
constexpr bool is_byte_register () const
 
constexpr int high_bit () const
 
constexpr int low_bits () const
 
- Public Member Functions inherited from v8::internal::RegisterBase< Register, kRegAfterLast >
constexpr bool is_valid () const
 
constexpr int8_t code () const
 
constexpr bool operator== (const RegisterBase< Register, kAfterLastRegister > &other) const
 
constexpr bool operator!= (const RegisterBase< Register, kAfterLastRegister > &other) const
 
- Public Member Functions inherited from v8::internal::CPURegister
RegisterType type () const
 
int SizeInBits () const
 
int SizeInBytes () const
 
bool Is8Bits () const
 
bool Is16Bits () const
 
bool Is32Bits () const
 
bool Is64Bits () const
 
bool Is128Bits () const
 
bool IsNone () const
 
constexpr bool Aliases (const CPURegister &other) const
 
constexpr bool operator== (const CPURegister &other) const
 
constexpr bool operator!= (const CPURegister &other) const
 
bool IsZero () const
 
bool IsSP () const
 
bool IsRegister () const
 
bool IsVRegister () const
 
bool IsFPRegister () const
 
bool IsW () const
 
bool IsX () const
 
bool IsV () const
 
bool IsB () const
 
bool IsH () const
 
bool IsS () const
 
bool IsD () const
 
bool IsQ () const
 
Register Reg () const
 
VRegister VReg () const
 
Register X () const
 
Register W () const
 
VRegister V () const
 
VRegister B () const
 
VRegister H () const
 
VRegister D () const
 
VRegister S () const
 
VRegister Q () const
 
bool IsSameSizeAndType (const CPURegister &other) const
 
constexpr bool IsEven () const
 
int MaxCode () const
 
- Public Member Functions inherited from v8::internal::RegisterBase< CPURegister, kRegAfterLast >
constexpr bool is_valid () const
 
constexpr int8_t code () const
 
constexpr bool operator== (const RegisterBase< CPURegister, kAfterLastRegister > &other) const
 
constexpr bool operator!= (const RegisterBase< CPURegister, kAfterLastRegister > &other) const
 

Static Public Member Functions

static constexpr Register no_reg ()
 
static constexpr Register Create (int code, int size)
 
static Register XRegFromCode (unsigned code)
 
static Register WRegFromCode (unsigned code)
 
static constexpr Register from_code (int code)
 
static const char * GetSpecialRegisterName (int code)
 
- Static Public Member Functions inherited from v8::internal::RegisterBase< Register, kRegAfterLast >
static constexpr Register no_reg ()
 
static constexpr Register from_code (int8_t code)
 
static const char * GetSpecialRegisterName (int code)
 
- Static Public Member Functions inherited from v8::internal::CPURegister
static constexpr CPURegister no_reg ()
 
static constexpr CPURegister Create (int code, int size, RegisterType type)
 
- Static Public Member Functions inherited from v8::internal::RegisterBase< CPURegister, kRegAfterLast >
static constexpr CPURegister no_reg ()
 
static constexpr CPURegister from_code (int8_t code)
 
static const char * GetSpecialRegisterName (int code)
 

Static Public Attributes

static constexpr int kMantissaOffset = 0
 
static constexpr int kExponentOffset = 4
 
- Static Public Attributes inherited from v8::internal::RegisterBase< Register, kRegAfterLast >
static constexpr int8_t kCode_no_reg
 
static constexpr int8_t kNumRegisters
 
- Static Public Attributes inherited from v8::internal::RegisterBase< CPURegister, kRegAfterLast >
static constexpr int8_t kCode_no_reg
 
static constexpr int8_t kNumRegisters
 

Private Member Functions

constexpr Register (int code)
 
constexpr Register (const CPURegister &r)
 
constexpr Register (int code)
 
constexpr Register (int code)
 
constexpr Register (int code)
 
constexpr Register (int code)
 
constexpr Register (int code)
 
constexpr Register (int code)
 
constexpr Register (int code)
 

Friends

class RegisterBase
 
class RegisterBase< Register, kRegAfterLast >
 

Additional Inherited Members

- Public Types inherited from v8::internal::CPURegister
enum  RegisterType : int8_t { kRegister , kVRegister , kNoRegister }
 
- Protected Member Functions inherited from v8::internal::RegisterBase< Register, kRegAfterLast >
constexpr RegisterBase (int code)
 
- Protected Member Functions inherited from v8::internal::CPURegister
constexpr CPURegister (int code, int size, RegisterType type)
 
- Protected Member Functions inherited from v8::internal::RegisterBase< CPURegister, kRegAfterLast >
constexpr RegisterBase (int code)
 
- Static Protected Member Functions inherited from v8::internal::CPURegister
static constexpr bool IsValidRegister (int code, int size)
 
static constexpr bool IsValidVRegister (int code, int size)
 
static constexpr bool IsValid (int code, int size, RegisterType type)
 
static constexpr bool IsNone (int code, int size, RegisterType type)
 
- Protected Attributes inherited from v8::internal::CPURegister
uint8_t reg_size_
 
RegisterType reg_type_
 

Detailed Description

Definition at line 61 of file register-x64.h.

Constructor & Destructor Documentation

◆ Register() [1/9]

v8::internal::Register::Register ( int code)
inlineexplicitconstexprprivate

Definition at line 68 of file register-arm.h.

Here is the caller graph for this function:

◆ Register() [2/9]

v8::internal::Register::Register ( const CPURegister & r)
inlineexplicitconstexprprivate

Definition at line 262 of file register-arm64.h.

◆ Register() [3/9]

v8::internal::Register::Register ( int code)
inlineexplicitconstexprprivate

Definition at line 65 of file register-ia32.h.

◆ Register() [4/9]

v8::internal::Register::Register ( int code)
inlineexplicitconstexprprivate

Definition at line 99 of file register-loong64.h.

◆ Register() [5/9]

v8::internal::Register::Register ( int code)
inlineexplicitconstexprprivate

Definition at line 100 of file register-mips64.h.

◆ Register() [6/9]

v8::internal::Register::Register ( int code)
inlineexplicitconstexprprivate

Definition at line 132 of file register-ppc.h.

◆ Register() [7/9]

v8::internal::Register::Register ( int code)
inlineexplicitconstexprprivate

Definition at line 159 of file register-riscv.h.

◆ Register() [8/9]

v8::internal::Register::Register ( int code)
inlineexplicitconstexprprivate

Definition at line 131 of file register-s390.h.

◆ Register() [9/9]

v8::internal::Register::Register ( int code)
inlineexplicitconstexprprivate

Definition at line 73 of file register-x64.h.

Member Function Documentation

◆ Create()

static constexpr Register v8::internal::Register::Create ( int code,
int size )
inlinestaticconstexpr

Definition at line 245 of file register-arm64.h.

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

◆ from_code()

static constexpr Register v8::internal::Register::from_code ( int code)
inlinestaticconstexpr

Definition at line 252 of file register-arm64.h.

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

◆ GetSpecialRegisterName()

static const char * v8::internal::Register::GetSpecialRegisterName ( int code)
inlinestatic

Definition at line 257 of file register-arm64.h.

Here is the caller graph for this function:

◆ high_bit()

int v8::internal::Register::high_bit ( ) const
inlineconstexpr

Definition at line 66 of file register-x64.h.

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

◆ is_byte_register() [1/2]

bool v8::internal::Register::is_byte_register ( ) const
inline

Definition at line 61 of file register-ia32.h.

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

◆ is_byte_register() [2/2]

bool v8::internal::Register::is_byte_register ( ) const
inlineconstexpr

Definition at line 63 of file register-x64.h.

Here is the call graph for this function:

◆ low_bits()

int v8::internal::Register::low_bits ( ) const
inlineconstexpr

Definition at line 69 of file register-x64.h.

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

◆ no_reg()

static constexpr Register v8::internal::Register::no_reg ( )
inlinestaticconstexpr

Definition at line 243 of file register-arm64.h.

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

◆ WRegFromCode()

Register v8::internal::Register::WRegFromCode ( unsigned code)
inlinestatic

Definition at line 108 of file assembler-arm64-inl.h.

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

◆ XRegFromCode()

Register v8::internal::Register::XRegFromCode ( unsigned code)
inlinestatic

Definition at line 99 of file assembler-arm64-inl.h.

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

Friends And Related Symbol Documentation

◆ RegisterBase

RegisterBase
friend

Definition at line 66 of file register-arm.h.

◆ RegisterBase< Register, kRegAfterLast >

friend class RegisterBase< Register, kRegAfterLast >
friend

Definition at line 61 of file register-ia32.h.

Member Data Documentation

◆ kExponentOffset

static constexpr int v8::internal::Register::kExponentOffset = 4
staticconstexpr

Definition at line 95 of file register-loong64.h.

◆ kMantissaOffset

static constexpr int v8::internal::Register::kMantissaOffset = 0
staticconstexpr

Definition at line 94 of file register-loong64.h.


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