v8
V8 is Google’s open source high-performance JavaScript and WebAssembly engine, written in C++.
Loading...
Searching...
No Matches
register-ia32.h File Reference
Include dependency graph for register-ia32.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  v8::internal::Register
 
class  v8::internal::XMMRegister
 

Namespaces

namespace  v8
 
namespace  v8::internal
 

Macros

#define GENERAL_REGISTERS(V)
 
#define ALLOCATABLE_GENERAL_REGISTERS(V)
 
#define DOUBLE_REGISTERS(V)
 
#define FLOAT_REGISTERS   DOUBLE_REGISTERS
 
#define SIMD128_REGISTERS   DOUBLE_REGISTERS
 
#define ALLOCATABLE_DOUBLE_REGISTERS(V)
 
#define REGISTER_CODE(R)
 
#define DEFINE_REGISTER(R)
 
#define REGISTER_CODE(R)
 
#define DEFINE_REGISTER(R)
 

Enumerations

enum  v8::internal::RegisterCode {
  v8::internal::kRegAfterLast , v8::internal::kRegAfterLast , v8::internal::kRegAfterLast , v8::internal::kRegAfterLast ,
  v8::internal::kRegAfterLast , v8::internal::kRegAfterLast , v8::internal::kRegAfterLast , v8::internal::kRegAfterLast ,
  v8::internal::kRegAfterLast
}
 
enum  v8::internal::DoubleCode { v8::internal::kDoubleAfterLast }
 

Functions

 v8::internal::ASSERT_TRIVIALLY_COPYABLE (Register)
 
Register v8::internal::ReassignRegister (Register &source)
 
constexpr int v8::internal::ArgumentPaddingSlots (int argument_count)
 

Variables

constexpr int v8::internal::kNumRegs = 8
 
constexpr DoubleRegister v8::internal::kScratchDoubleReg = xmm7
 

Macro Definition Documentation

◆ ALLOCATABLE_DOUBLE_REGISTERS

#define ALLOCATABLE_DOUBLE_REGISTERS ( V)
Value:
V(xmm0) \
V(xmm1) \
V(xmm2) \
V(xmm3) \
V(xmm4) \
V(xmm5) \
V(xmm6)
#define V(Name)

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

◆ ALLOCATABLE_GENERAL_REGISTERS

#define ALLOCATABLE_GENERAL_REGISTERS ( V)
Value:
V(eax) \
V(ecx) \
V(edx) \
V(esi) \
V(edi)

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

◆ DEFINE_REGISTER [1/2]

#define DEFINE_REGISTER ( R)
Value:
constexpr Register R = Register::from_code(kRegCode_##R);

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

◆ DEFINE_REGISTER [2/2]

#define DEFINE_REGISTER ( R)
Value:
constexpr DoubleRegister R = DoubleRegister::from_code(kDoubleCode_##R);

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

◆ DOUBLE_REGISTERS

#define DOUBLE_REGISTERS ( V)
Value:
V(xmm0) \
V(xmm1) \
V(xmm2) \
V(xmm3) \
V(xmm4) \
V(xmm5) \
V(xmm6) \
V(xmm7)

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

◆ FLOAT_REGISTERS

#define FLOAT_REGISTERS   DOUBLE_REGISTERS

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

◆ GENERAL_REGISTERS

#define GENERAL_REGISTERS ( V)
Value:
V(eax) \
V(ecx) \
V(edx) \
V(ebx) \
V(esp) \
V(ebp) \
V(esi) \
V(edi)

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

◆ REGISTER_CODE [1/2]

#define REGISTER_CODE ( R)
Value:
kRegCode_##R,

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

◆ REGISTER_CODE [2/2]

#define REGISTER_CODE ( R)
Value:
kDoubleCode_##R,

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

◆ SIMD128_REGISTERS

#define SIMD128_REGISTERS   DOUBLE_REGISTERS

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