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

#include <assembler-x64.h>

Inheritance diagram for v8::internal::Operand256:
Collaboration diagram for v8::internal::Operand256:

Public Member Functions

V8_INLINE Operand256 (Register base, int32_t disp)
 
V8_INLINE Operand256 (Register base, Register index, ScaleFactor scale, int32_t disp)
 
V8_INLINE Operand256 (Register index, ScaleFactor scale, int32_t disp)
 
 Operand256 (const Operand256 &) V8_NOEXCEPT=default
 
Operand256operator= (const Operand256 &) V8_NOEXCEPT=default
 
- Public Member Functions inherited from v8::internal::Operand
V8_INLINE Operand (int32_t immediate, RelocInfo::Mode rmode=RelocInfo::NO_INFO)
 
V8_INLINE Operand (const ExternalReference &f)
 
 Operand (Handle< HeapObject > handle)
 
V8_INLINE Operand (Tagged< Smi > value)
 
V8_INLINE Operand (Register rm)
 
 Operand (Register rm, ShiftOp shift_op, int shift_imm)
 
 Operand (Register rm, ShiftOp shift_op, Register rs)
 
bool IsRegister () const
 
bool IsImmediateShiftedRegister () const
 
bool IsRegisterShiftedRegister () const
 
int InstructionsRequired (const Assembler *assembler, Instr instr=0) const
 
bool MustOutputRelocInfo (const Assembler *assembler) const
 
int32_t immediate () const
 
bool IsImmediate () const
 
HeapNumberRequest heap_number_request () const
 
bool IsHeapNumberRequest () const
 
Register rm () const
 
Register rs () const
 
ShiftOp shift_op () const
 
 Operand (Register reg, Shift shift=LSL, unsigned shift_amount=0)
 
 Operand (Register reg, Extend extend, unsigned shift_amount=0)
 
bool IsHeapNumberRequest () const
 
HeapNumberRequest heap_number_request () const
 
Immediate immediate_for_heap_number_request () const
 
template<typename T >
 Operand (T t)
 
template<typename T >
 Operand (T t, RelocInfo::Mode rmode)
 
bool IsImmediate () const
 
bool IsShiftedRegister () const
 
bool IsExtendedRegister () const
 
bool IsZero () const
 
Operand ToExtendedRegister () const
 
Operand ToW () const
 
Immediate immediate () const
 
int64_t ImmediateValue () const
 
RelocInfo::Mode ImmediateRMode () const
 
Register reg () const
 
Shift shift () const
 
Extend extend () const
 
unsigned shift_amount () const
 
bool NeedsRelocation (const Assembler *assembler) const
 
V8_INLINE Operand (Register reg)
 
V8_INLINE Operand (XMMRegister xmm_reg)
 
V8_INLINE Operand (int32_t disp, RelocInfo::Mode rmode)
 
V8_INLINE Operand (Immediate imm)
 
 Operand (Register base, int32_t disp, RelocInfo::Mode rmode=RelocInfo::NO_INFO)
 
 Operand (Label *label)
 
 Operand (Register base, Register index, ScaleFactor scale, int32_t disp, RelocInfo::Mode rmode=RelocInfo::NO_INFO)
 
 Operand (Register index, ScaleFactor scale, int32_t disp, RelocInfo::Mode rmode=RelocInfo::NO_INFO)
 
bool is_reg (Register reg) const
 
bool is_reg (XMMRegister reg) const
 
bool is_reg_only () const
 
Register reg () const
 
base::Vector< const uint8_t > encoded_bytes () const
 
RelocInfo::Mode rmode ()
 
V8_INLINE Operand (int64_t immediate, RelocInfo::Mode rmode=RelocInfo::NO_INFO)
 
V8_INLINE Operand (const ExternalReference &f)
 
V8_INLINE Operand (Tagged< Smi > value)
 
 Operand (Handle< HeapObject > handle)
 
V8_INLINE Operand (Register rm)
 
V8_INLINE bool is_reg () const
 
int64_t immediate () const
 
bool IsImmediate () const
 
HeapNumberRequest heap_number_request () const
 
bool IsHeapNumberRequest () const
 
Register rm () const
 
RelocInfo::Mode rmode () const
 
V8_INLINE Operand (int64_t immediate, RelocInfo::Mode rmode=RelocInfo::NO_INFO)
 
V8_INLINE Operand (const ExternalReference &f)
 
V8_INLINE Operand (Tagged< Smi > value)
 
 Operand (Handle< HeapObject > handle)
 
V8_INLINE Operand (Register rm)
 
V8_INLINE bool is_reg () const
 
int64_t immediate () const
 
bool IsImmediate () const
 
HeapNumberRequest heap_number_request () const
 
bool IsHeapNumberRequest () const
 
Register rm () const
 
RelocInfo::Mode rmode () const
 
V8_INLINE Operand (intptr_t immediate, RelocInfo::Mode rmode=RelocInfo::NO_INFO)
 
V8_INLINE Operand (const ExternalReference &f)
 
 Operand (Handle< HeapObject > handle)
 
V8_INLINE Operand (Tagged< Smi > value)
 
V8_INLINE Operand (Register rm)
 
V8_INLINE bool is_reg () const
 
bool must_output_reloc_info (const Assembler *assembler) const
 
intptr_t immediate () const
 
bool IsImmediate () const
 
HeapNumberRequest heap_number_request () const
 
Register rm () const
 
bool IsHeapNumberRequest () const
 
V8_INLINE Operand (intptr_t immediate, RelocInfo::Mode rmode=RelocInfo::NO_INFO)
 
V8_INLINE Operand (Tagged< Smi > value)
 
V8_INLINE Operand (const ExternalReference &f)
 
 Operand (Handle< HeapObject > handle, RelocInfo::Mode rmode=RelocInfo::FULL_EMBEDDED_OBJECT)
 
V8_INLINE Operand (Register rm)
 
V8_INLINE bool is_reg () const
 
intptr_t immediate_for_heap_number_request () const
 
intptr_t immediate () const
 
bool IsImmediate () const
 
HeapNumberRequest heap_number_request () const
 
bool IsHeapNumberRequest () const
 
Register rm () const
 
RelocInfo::Mode rmode () const
 
V8_INLINE Operand (intptr_t immediate, RelocInfo::Mode rmode=RelocInfo::NO_INFO)
 
V8_INLINE Operand (const ExternalReference &f)
 
 Operand (Handle< HeapObject > handle)
 
V8_INLINE Operand (Tagged< Smi > value)
 
V8_INLINE Operand (Register rm)
 
V8_INLINE bool is_reg () const
 
bool must_output_reloc_info (const Assembler *assembler) const
 
intptr_t immediate () const
 
HeapNumberRequest heap_number_request () const
 
void setBits (int n)
 
Register rm () const
 
bool is_heap_number_request () const
 
RelocInfo::Mode rmode () const
 
V8_INLINE constexpr Operand (Register base, int32_t disp)
 
V8_INLINE Operand (Register base, Register index, ScaleFactor scale, int32_t disp)
 
V8_INLINE Operand (Register index, ScaleFactor scale, int32_t disp)
 
 Operand (Operand base, int32_t offset)
 
V8_INLINE Operand (Label *label, int addend=0)
 
 Operand (const Operand &) V8_NOEXCEPT=default
 
Operandoperator= (const Operand &) V8_NOEXCEPT=default
 
V8_INLINE constexpr bool is_label_operand () const
 
V8_INLINE constexpr uint8_t rex () const
 
V8_INLINE const MemoryOperandmemory () const
 
V8_INLINE const LabelOperandlabel () const
 
bool AddressUsesRegister (Register reg) const
 

Friends

class Operand
 

Additional Inherited Members

- Static Public Member Functions inherited from v8::internal::Operand
static V8_INLINE Operand Zero ()
 
static V8_INLINE Operand SmiUntag (Register rm)
 
static V8_INLINE Operand PointerOffsetFromSmiKey (Register key)
 
static V8_INLINE Operand DoubleOffsetFromSmiKey (Register key)
 
static Operand EmbeddedNumber (double number)
 
static Operand EmbeddedNumber (double number)
 
static Operand EmbeddedHeapNumber (double number)
 
static Operand JumpTable (Register index, ScaleFactor scale, Label *table)
 
static Operand ForRegisterPlusImmediate (Register base, Immediate imm)
 
static Operand EmbeddedNumber (double number)
 
static Operand EmbeddedNumber (double number)
 
static V8_INLINE Operand Zero ()
 
static Operand EmbeddedNumber (double number)
 
static Operand EmbeddedNumber (double number)
 
static V8_INLINE Operand Zero ()
 
static Operand EmbeddedNumber (double value)
 
- Public Attributes inherited from v8::internal::Operand

Detailed Description

Definition at line 360 of file assembler-x64.h.

Constructor & Destructor Documentation

◆ Operand256() [1/4]

V8_INLINE v8::internal::Operand256::Operand256 ( Register base,
int32_t disp )
inline

Definition at line 363 of file assembler-x64.h.

◆ Operand256() [2/4]

V8_INLINE v8::internal::Operand256::Operand256 ( Register base,
Register index,
ScaleFactor scale,
int32_t disp )
inline

Definition at line 366 of file assembler-x64.h.

◆ Operand256() [3/4]

V8_INLINE v8::internal::Operand256::Operand256 ( Register index,
ScaleFactor scale,
int32_t disp )
inline

Definition at line 371 of file assembler-x64.h.

◆ Operand256() [4/4]

v8::internal::Operand256::Operand256 ( const Operand256 & )
default

Member Function Documentation

◆ operator=()

Operand256 & v8::internal::Operand256::operator= ( const Operand256 & )
default

Friends And Related Symbol Documentation

◆ Operand

friend class Operand
friend

Definition at line 378 of file assembler-x64.h.


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