v8  3.25.30(node0.11.13)
V8 is Google's open source JavaScript engine
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
LCodeGen Class Reference

#include <lithium-codegen-arm.h>

Inheritance diagram for LCodeGen:
Collaboration diagram for LCodeGen:

Public Types

enum  IntegerSignedness {
  SIGNED_INT32, UNSIGNED_INT32, SIGNED_INT32, UNSIGNED_INT32,
  SIGNED_INT32, UNSIGNED_INT32, SIGNED_INT32, UNSIGNED_INT32
}
 
enum  X87OperandType { kX87DoubleOperand, kX87FloatOperand, kX87IntOperand }
 
enum  IntegerSignedness {
  SIGNED_INT32, UNSIGNED_INT32, SIGNED_INT32, UNSIGNED_INT32,
  SIGNED_INT32, UNSIGNED_INT32, SIGNED_INT32, UNSIGNED_INT32
}
 
enum  IntegerSignedness {
  SIGNED_INT32, UNSIGNED_INT32, SIGNED_INT32, UNSIGNED_INT32,
  SIGNED_INT32, UNSIGNED_INT32, SIGNED_INT32, UNSIGNED_INT32
}
 

Public Member Functions

 LCodeGen (LChunk *chunk, MacroAssembler *assembler, CompilationInfo *info)
 
int LookupDestination (int block_id) const
 
bool IsNextEmittedBlock (int block_id) const
 
bool NeedsEagerFrame () const
 
bool NeedsDeferredFrame () const
 
LinkRegisterStatus GetLinkRegisterState () const
 
Register ToRegister (LOperand *op) const
 
Register EmitLoadRegister (LOperand *op, Register scratch)
 
DwVfpRegister ToDoubleRegister (LOperand *op) const
 
DwVfpRegister EmitLoadDoubleRegister (LOperand *op, SwVfpRegister flt_scratch, DwVfpRegister dbl_scratch)
 
int32_t ToRepresentation (LConstantOperand *op, const Representation &r) const
 
int32_t ToInteger32 (LConstantOperand *op) const
 
SmiToSmi (LConstantOperand *op) const
 
double ToDouble (LConstantOperand *op) const
 
Operand ToOperand (LOperand *op)
 
MemOperand ToMemOperand (LOperand *op) const
 
MemOperand ToHighMemOperand (LOperand *op) const
 
bool IsInteger32 (LConstantOperand *op) const
 
bool IsSmi (LConstantOperand *op) const
 
Handle< ObjectToHandle (LConstantOperand *op) const
 
bool GenerateCode ()
 
void FinishCode (Handle< Code > code)
 
void DoDeferredNumberTagD (LNumberTagD *instr)
 
void DoDeferredNumberTagIU (LInstruction *instr, LOperand *value, LOperand *temp1, LOperand *temp2, IntegerSignedness signedness)
 
void DoDeferredTaggedToI (LTaggedToI *instr)
 
void DoDeferredMathAbsTaggedHeapNumber (LMathAbs *instr)
 
void DoDeferredStackCheck (LStackCheck *instr)
 
void DoDeferredStringCharCodeAt (LStringCharCodeAt *instr)
 
void DoDeferredStringCharFromCode (LStringCharFromCode *instr)
 
void DoDeferredAllocate (LAllocate *instr)
 
void DoDeferredInstanceOfKnownGlobal (LInstanceOfKnownGlobal *instr, Label *map_check)
 
void DoDeferredInstanceMigration (LCheckMaps *instr, Register object)
 
void DoParallelMove (LParallelMove *move)
 
void DoGap (LGap *instr)
 
MemOperand PrepareKeyedOperand (Register key, Register base, bool key_is_constant, int constant_key, int element_size, int shift_size, int additional_index, int additional_offset)
 
void WriteTranslation (LEnvironment *environment, Translation *translation)
 
 LCodeGen (LChunk *chunk, MacroAssembler *assembler, CompilationInfo *info)
 
Scopescope () const
 
int LookupDestination (int block_id) const
 
bool IsNextEmittedBlock (int block_id) const
 
bool NeedsEagerFrame () const
 
bool NeedsDeferredFrame () const
 
LinkRegisterStatus GetLinkRegisterState () const
 
bool GenerateCode ()
 
void FinishCode (Handle< Code > code)
 
Register ToRegister (LOperand *op) const
 
Register ToRegister32 (LOperand *op) const
 
Operand ToOperand (LOperand *op)
 
Operand ToOperand32I (LOperand *op)
 
Operand ToOperand32U (LOperand *op)
 
MemOperand ToMemOperand (LOperand *op) const
 
Handle< ObjectToHandle (LConstantOperand *op) const
 
bool IsInteger32Constant (LConstantOperand *op) const
 
bool IsSmi (LConstantOperand *op) const
 
int32_t ToInteger32 (LConstantOperand *op) const
 
SmiToSmi (LConstantOperand *op) const
 
double ToDouble (LConstantOperand *op) const
 
DoubleRegister ToDoubleRegister (LOperand *op) const
 
 LCodeGen (LChunk *chunk, MacroAssembler *assembler, CompilationInfo *info)
 
int LookupDestination (int block_id) const
 
bool IsNextEmittedBlock (int block_id) const
 
bool NeedsEagerFrame () const
 
bool NeedsDeferredFrame () const
 
Operand ToOperand (LOperand *op) const
 
Register ToRegister (LOperand *op) const
 
XMMRegister ToDoubleRegister (LOperand *op) const
 
X87Register ToX87Register (LOperand *op) const
 
bool IsInteger32 (LConstantOperand *op) const
 
bool IsSmi (LConstantOperand *op) const
 
Immediate ToImmediate (LOperand *op, const Representation &r) const
 
double ToDouble (LConstantOperand *op) const
 
void X87Mov (X87Register reg, Operand src, X87OperandType operand=kX87DoubleOperand)
 
void X87Mov (Operand src, X87Register reg, X87OperandType operand=kX87DoubleOperand)
 
void X87PrepareBinaryOp (X87Register left, X87Register right, X87Register result)
 
void X87LoadForUsage (X87Register reg)
 
void X87LoadForUsage (X87Register reg1, X87Register reg2)
 
void X87PrepareToWrite (X87Register reg)
 
void X87CommitWrite (X87Register reg)
 
void X87Fxch (X87Register reg, int other_slot=0)
 
void X87Free (X87Register reg)
 
bool X87StackEmpty ()
 
Handle< ObjectToHandle (LConstantOperand *op) const
 
Operand HighOperand (LOperand *op)
 
bool GenerateCode ()
 
void FinishCode (Handle< Code > code)
 
void DoDeferredNumberTagD (LNumberTagD *instr)
 
void DoDeferredNumberTagIU (LInstruction *instr, LOperand *value, LOperand *temp1, LOperand *temp2, IntegerSignedness signedness)
 
void DoDeferredTaggedToI (LTaggedToI *instr, Label *done)
 
void DoDeferredMathAbsTaggedHeapNumber (LMathAbs *instr)
 
void DoDeferredStackCheck (LStackCheck *instr)
 
void DoDeferredStringCharCodeAt (LStringCharCodeAt *instr)
 
void DoDeferredStringCharFromCode (LStringCharFromCode *instr)
 
void DoDeferredAllocate (LAllocate *instr)
 
void DoDeferredInstanceOfKnownGlobal (LInstanceOfKnownGlobal *instr, Label *map_check)
 
void DoDeferredInstanceMigration (LCheckMaps *instr, Register object)
 
void DoParallelMove (LParallelMove *move)
 
void DoGap (LGap *instr)
 
void WriteTranslation (LEnvironment *environment, Translation *translation)
 
void EnsureRelocSpaceForDeoptimization ()
 
 LCodeGen (LChunk *chunk, MacroAssembler *assembler, CompilationInfo *info)
 
int LookupDestination (int block_id) const
 
bool IsNextEmittedBlock (int block_id) const
 
bool NeedsEagerFrame () const
 
bool NeedsDeferredFrame () const
 
RAStatus GetRAState () const
 
Register ToRegister (LOperand *op) const
 
Register EmitLoadRegister (LOperand *op, Register scratch)
 
DoubleRegister ToDoubleRegister (LOperand *op) const
 
DoubleRegister EmitLoadDoubleRegister (LOperand *op, FloatRegister flt_scratch, DoubleRegister dbl_scratch)
 
int32_t ToRepresentation (LConstantOperand *op, const Representation &r) const
 
int32_t ToInteger32 (LConstantOperand *op) const
 
SmiToSmi (LConstantOperand *op) const
 
double ToDouble (LConstantOperand *op) const
 
Operand ToOperand (LOperand *op)
 
MemOperand ToMemOperand (LOperand *op) const
 
MemOperand ToHighMemOperand (LOperand *op) const
 
bool IsInteger32 (LConstantOperand *op) const
 
bool IsSmi (LConstantOperand *op) const
 
Handle< ObjectToHandle (LConstantOperand *op) const
 
bool GenerateCode ()
 
void FinishCode (Handle< Code > code)
 
void DoDeferredNumberTagD (LNumberTagD *instr)
 
void DoDeferredNumberTagIU (LInstruction *instr, LOperand *value, LOperand *temp1, LOperand *temp2, IntegerSignedness signedness)
 
void DoDeferredTaggedToI (LTaggedToI *instr)
 
void DoDeferredMathAbsTaggedHeapNumber (LMathAbs *instr)
 
void DoDeferredStackCheck (LStackCheck *instr)
 
void DoDeferredStringCharCodeAt (LStringCharCodeAt *instr)
 
void DoDeferredStringCharFromCode (LStringCharFromCode *instr)
 
void DoDeferredAllocate (LAllocate *instr)
 
void DoDeferredInstanceOfKnownGlobal (LInstanceOfKnownGlobal *instr, Label *map_check)
 
void DoDeferredInstanceMigration (LCheckMaps *instr, Register object)
 
void DoParallelMove (LParallelMove *move)
 
void DoGap (LGap *instr)
 
MemOperand PrepareKeyedOperand (Register key, Register base, bool key_is_constant, int constant_key, int element_size, int shift_size, int additional_index, int additional_offset)
 
void WriteTranslation (LEnvironment *environment, Translation *translation)
 
 LCodeGen (LChunk *chunk, MacroAssembler *assembler, CompilationInfo *info)
 
int LookupDestination (int block_id) const
 
bool IsNextEmittedBlock (int block_id) const
 
bool NeedsEagerFrame () const
 
bool NeedsDeferredFrame () const
 
Register ToRegister (LOperand *op) const
 
XMMRegister ToDoubleRegister (LOperand *op) const
 
bool IsInteger32Constant (LConstantOperand *op) const
 
bool IsDehoistedKeyConstant (LConstantOperand *op) const
 
bool IsSmiConstant (LConstantOperand *op) const
 
int32_t ToInteger32 (LConstantOperand *op) const
 
SmiToSmi (LConstantOperand *op) const
 
double ToDouble (LConstantOperand *op) const
 
ExternalReference ToExternalReference (LConstantOperand *op) const
 
Handle< ObjectToHandle (LConstantOperand *op) const
 
Operand ToOperand (LOperand *op) const
 
bool GenerateCode ()
 
void FinishCode (Handle< Code > code)
 
void DoDeferredNumberTagD (LNumberTagD *instr)
 
void DoDeferredNumberTagU (LNumberTagU *instr)
 
void DoDeferredTaggedToI (LTaggedToI *instr, Label *done)
 
void DoDeferredMathAbsTaggedHeapNumber (LMathAbs *instr)
 
void DoDeferredStackCheck (LStackCheck *instr)
 
void DoDeferredStringCharCodeAt (LStringCharCodeAt *instr)
 
void DoDeferredStringCharFromCode (LStringCharFromCode *instr)
 
void DoDeferredAllocate (LAllocate *instr)
 
void DoDeferredInstanceOfKnownGlobal (LInstanceOfKnownGlobal *instr, Label *map_check)
 
void DoDeferredInstanceMigration (LCheckMaps *instr, Register object)
 
void DoParallelMove (LParallelMove *move)
 
void DoGap (LGap *instr)
 
void WriteTranslation (LEnvironment *environment, Translation *translation)
 

Friends

class LDeferredCode
 
class LEnvironment
 
class SafepointGenerator
 
class LGapResolver
 

Detailed Description

Definition at line 47 of file lithium-codegen-arm.h.

Member Enumeration Documentation

Enumerator
SIGNED_INT32 
UNSIGNED_INT32 
SIGNED_INT32 
UNSIGNED_INT32 
SIGNED_INT32 
UNSIGNED_INT32 
SIGNED_INT32 
UNSIGNED_INT32 

Definition at line 126 of file lithium-codegen-mips.h.

Enumerator
SIGNED_INT32 
UNSIGNED_INT32 
SIGNED_INT32 
UNSIGNED_INT32 
SIGNED_INT32 
UNSIGNED_INT32 
SIGNED_INT32 
UNSIGNED_INT32 

Definition at line 128 of file lithium-codegen-arm.h.

Enumerator
SIGNED_INT32 
UNSIGNED_INT32 
SIGNED_INT32 
UNSIGNED_INT32 
SIGNED_INT32 
UNSIGNED_INT32 
SIGNED_INT32 
UNSIGNED_INT32 

Definition at line 150 of file lithium-codegen-ia32.h.

Enumerator
kX87DoubleOperand 
kX87FloatOperand 
kX87IntOperand 

Definition at line 105 of file lithium-codegen-ia32.h.

Constructor & Destructor Documentation

LCodeGen ( LChunk chunk,
MacroAssembler assembler,
CompilationInfo info 
)
inline

Definition at line 49 of file lithium-codegen-arm.h.

LCodeGen ( LChunk chunk,
MacroAssembler assembler,
CompilationInfo info 
)
inline

Definition at line 50 of file lithium-codegen-arm64.h.

LCodeGen ( LChunk chunk,
MacroAssembler assembler,
CompilationInfo info 
)
inline

Definition at line 51 of file lithium-codegen-ia32.h.

LCodeGen ( LChunk chunk,
MacroAssembler assembler,
CompilationInfo info 
)
inline

Definition at line 48 of file lithium-codegen-mips.h.

LCodeGen ( LChunk chunk,
MacroAssembler assembler,
CompilationInfo info 
)
inline

Definition at line 50 of file lithium-codegen-x64.h.

Member Function Documentation

void DoDeferredAllocate ( LAllocate *  instr)
void DoDeferredAllocate ( LAllocate *  instr)
void DoDeferredAllocate ( LAllocate *  instr)
void DoDeferredInstanceMigration ( LCheckMaps *  instr,
Register  object 
)
void DoDeferredInstanceMigration ( LCheckMaps *  instr,
Register  object 
)
void DoDeferredInstanceMigration ( LCheckMaps *  instr,
Register  object 
)
void DoDeferredInstanceMigration ( LCheckMaps *  instr,
Register  object 
)
void DoDeferredInstanceOfKnownGlobal ( LInstanceOfKnownGlobal *  instr,
Label *  map_check 
)
void DoDeferredInstanceOfKnownGlobal ( LInstanceOfKnownGlobal *  instr,
Label *  map_check 
)
void DoDeferredInstanceOfKnownGlobal ( LInstanceOfKnownGlobal *  instr,
Label *  map_check 
)
void DoDeferredMathAbsTaggedHeapNumber ( LMathAbs *  instr)
void DoDeferredMathAbsTaggedHeapNumber ( LMathAbs *  instr)
void DoDeferredMathAbsTaggedHeapNumber ( LMathAbs *  instr)
void DoDeferredNumberTagD ( LNumberTagD *  instr)
void DoDeferredNumberTagD ( LNumberTagD *  instr)
void DoDeferredNumberTagD ( LNumberTagD *  instr)
void DoDeferredNumberTagD ( LNumberTagD *  instr)
void DoDeferredNumberTagIU ( LInstruction instr,
LOperand value,
LOperand temp1,
LOperand temp2,
IntegerSignedness  signedness 
)
void DoDeferredNumberTagIU ( LInstruction instr,
LOperand value,
LOperand temp1,
LOperand temp2,
IntegerSignedness  signedness 
)
void DoDeferredNumberTagU ( LNumberTagU *  instr)
void DoDeferredStackCheck ( LStackCheck *  instr)
void DoDeferredStackCheck ( LStackCheck *  instr)
void DoDeferredStackCheck ( LStackCheck *  instr)

Definition at line 5575 of file lithium-codegen-arm.cc.

References __, ASSERT, and LCodeGen::LEnvironment.

void DoDeferredStackCheck ( LStackCheck *  instr)
void DoDeferredStringCharCodeAt ( LStringCharCodeAt *  instr)
void DoDeferredStringCharCodeAt ( LStringCharCodeAt *  instr)
void DoDeferredStringCharCodeAt ( LStringCharCodeAt *  instr)
void DoDeferredStringCharCodeAt ( LStringCharCodeAt *  instr)
void DoDeferredStringCharFromCode ( LStringCharFromCode *  instr)
void DoDeferredStringCharFromCode ( LStringCharFromCode *  instr)
void DoDeferredStringCharFromCode ( LStringCharFromCode *  instr)

Definition at line 4507 of file lithium-codegen-arm.cc.

References __, v8::internal::r0, and LCodeGen::ToRegister().

void DoDeferredStringCharFromCode ( LStringCharFromCode *  instr)
void DoDeferredTaggedToI ( LTaggedToI *  instr,
Label *  done 
)
void DoDeferredTaggedToI ( LTaggedToI *  instr)
void DoDeferredTaggedToI ( LTaggedToI *  instr,
Label *  done 
)
void DoGap ( LGap instr)
void DoGap ( LGap instr)
void DoGap ( LGap instr)
void DoParallelMove ( LParallelMove *  move)
void DoParallelMove ( LParallelMove *  move)
void DoParallelMove ( LParallelMove *  move)

Definition at line 1067 of file lithium-codegen-arm.cc.

Referenced by LCodeGen::DoGap().

void DoParallelMove ( LParallelMove *  move)
Register EmitLoadRegister ( LOperand op,
Register  scratch 
)
void EnsureRelocSpaceForDeoptimization ( )
void FinishCode ( Handle< Code code)
void FinishCode ( Handle< Code code)
void FinishCode ( Handle< Code code)
void FinishCode ( Handle< Code code)

Definition at line 83 of file lithium-codegen-arm.cc.

References ASSERT, and v8::internal::info.

Referenced by LChunk::Codegen().

void FinishCode ( Handle< Code code)
bool GenerateCode ( )
bool GenerateCode ( )
bool GenerateCode ( )
bool GenerateCode ( )

Definition at line 65 of file lithium-codegen-arm.cc.

References ASSERT, and NONE.

Referenced by LChunk::Codegen().

bool GenerateCode ( )
LinkRegisterStatus GetLinkRegisterState ( ) const
inline
LinkRegisterStatus GetLinkRegisterState ( ) const
inline
RAStatus GetRAState ( ) const
inline
Operand HighOperand ( LOperand op)
bool IsDehoistedKeyConstant ( LConstantOperand *  op) const
bool IsInteger32 ( LConstantOperand *  op) const
bool IsInteger32 ( LConstantOperand *  op) const
bool IsInteger32 ( LConstantOperand *  op) const

Definition at line 494 of file lithium-codegen-arm.cc.

bool IsInteger32Constant ( LConstantOperand *  op) const
bool IsInteger32Constant ( LConstantOperand *  op) const

Definition at line 1283 of file lithium-codegen-arm64.cc.

bool IsNextEmittedBlock ( int  block_id) const
inline

Definition at line 70 of file lithium-codegen-mips.h.

References LCodeGen::LookupDestination().

bool IsNextEmittedBlock ( int  block_id) const
inline

Definition at line 71 of file lithium-codegen-arm.h.

References LCodeGen::LookupDestination().

bool IsNextEmittedBlock ( int  block_id) const
inline

Definition at line 71 of file lithium-codegen-x64.h.

References LCodeGen::LookupDestination().

bool IsNextEmittedBlock ( int  block_id) const
inline

Definition at line 74 of file lithium-codegen-arm64.h.

References LCodeGen::LookupDestination().

bool IsNextEmittedBlock ( int  block_id) const
inline

Definition at line 75 of file lithium-codegen-ia32.h.

References LCodeGen::LookupDestination().

bool IsSmi ( LConstantOperand *  op) const
bool IsSmi ( LConstantOperand *  op) const
bool IsSmi ( LConstantOperand *  op) const

Definition at line 499 of file lithium-codegen-arm.cc.

bool IsSmi ( LConstantOperand *  op) const
bool IsSmiConstant ( LConstantOperand *  op) const
int LookupDestination ( int  block_id) const
inline

Definition at line 66 of file lithium-codegen-mips.h.

int LookupDestination ( int  block_id) const
inline

Definition at line 67 of file lithium-codegen-arm.h.

Referenced by LCodeGen::IsNextEmittedBlock().

int LookupDestination ( int  block_id) const
inline

Definition at line 67 of file lithium-codegen-x64.h.

int LookupDestination ( int  block_id) const
inline

Definition at line 70 of file lithium-codegen-arm64.h.

int LookupDestination ( int  block_id) const
inline

Definition at line 71 of file lithium-codegen-ia32.h.

bool NeedsDeferredFrame ( ) const
inline

Definition at line 80 of file lithium-codegen-mips.h.

References v8::internal::info, and LCodeGen::NeedsEagerFrame().

bool NeedsDeferredFrame ( ) const
inline

Definition at line 81 of file lithium-codegen-x64.h.

References v8::internal::info, and LCodeGen::NeedsEagerFrame().

bool NeedsDeferredFrame ( ) const
inline

Definition at line 81 of file lithium-codegen-arm.h.

References v8::internal::info, and LCodeGen::NeedsEagerFrame().

Referenced by LDeferredCode::done().

bool NeedsDeferredFrame ( ) const
inline

Definition at line 84 of file lithium-codegen-arm64.h.

References v8::internal::info, and LCodeGen::NeedsEagerFrame().

bool NeedsDeferredFrame ( ) const
inline

Definition at line 85 of file lithium-codegen-ia32.h.

References v8::internal::info, and LCodeGen::NeedsEagerFrame().

bool NeedsEagerFrame ( ) const
inline

Definition at line 74 of file lithium-codegen-mips.h.

References v8::internal::info.

bool NeedsEagerFrame ( ) const
inline

Definition at line 75 of file lithium-codegen-x64.h.

References v8::internal::info.

bool NeedsEagerFrame ( ) const
inline
bool NeedsEagerFrame ( ) const
inline

Definition at line 78 of file lithium-codegen-arm64.h.

References v8::internal::info.

bool NeedsEagerFrame ( ) const
inline

Definition at line 79 of file lithium-codegen-ia32.h.

References v8::internal::info.

MemOperand PrepareKeyedOperand ( Register  key,
Register  base,
bool  key_is_constant,
int  constant_key,
int  element_size,
int  shift_size,
int  additional_index,
int  additional_offset 
)
MemOperand PrepareKeyedOperand ( Register  key,
Register  base,
bool  key_is_constant,
int  constant_key,
int  element_size,
int  shift_size,
int  additional_index,
int  additional_offset 
)

Definition at line 3292 of file lithium-codegen-arm.cc.

References __, ASSERT_EQ, v8::internal::LSL, and v8::internal::LSR.

Scope* scope ( ) const
inline

Definition at line 68 of file lithium-codegen-arm64.h.

double ToDouble ( LConstantOperand *  op) const
double ToDouble ( LConstantOperand *  op) const
double ToDouble ( LConstantOperand *  op) const
double ToDouble ( LConstantOperand *  op) const

Definition at line 525 of file lithium-codegen-arm.cc.

References ASSERT.

double ToDouble ( LConstantOperand *  op) const
XMMRegister ToDoubleRegister ( LOperand op) const
XMMRegister ToDoubleRegister ( LOperand op) const
DoubleRegister ToDoubleRegister ( LOperand op) const
DoubleRegister ToDoubleRegister ( LOperand op) const
DoubleRegister ToDoubleRegister ( LOperand op) const
ExternalReference ToExternalReference ( LConstantOperand *  op) const
Handle<Object> ToHandle ( LConstantOperand *  op) const
Handle<Object> ToHandle ( LConstantOperand *  op) const
Handle<Object> ToHandle ( LConstantOperand *  op) const
Handle< Object > ToHandle ( LConstantOperand *  op) const

Definition at line 487 of file lithium-codegen-arm.cc.

References ASSERT.

Handle<Object> ToHandle ( LConstantOperand *  op) const
MemOperand ToHighMemOperand ( LOperand op) const
Immediate ToImmediate ( LOperand op,
const Representation r 
) const
inline

Definition at line 97 of file lithium-codegen-ia32.h.

References LCodeGen::ToRepresentation().

int32_t ToInteger32 ( LConstantOperand *  op) const
int32_t ToInteger32 ( LConstantOperand *  op) const
int32_t ToInteger32 ( LConstantOperand *  op) const
int32_t ToInteger32 ( LConstantOperand *  op) const
MemOperand ToMemOperand ( LOperand op) const
MemOperand ToMemOperand ( LOperand op) const
Operand ToOperand ( LOperand op) const
Operand ToOperand ( LOperand op) const
Operand ToOperand ( LOperand op)
Operand ToOperand ( LOperand op)
Operand ToOperand32I ( LOperand op)

Definition at line 1215 of file lithium-codegen-arm64.cc.

References LCodeGen::SIGNED_INT32.

Operand ToOperand32U ( LOperand op)

Definition at line 1220 of file lithium-codegen-arm64.cc.

References LCodeGen::UNSIGNED_INT32.

Register ToRegister ( LOperand op) const
Register ToRegister ( LOperand op) const
Register ToRegister ( LOperand op) const
Register ToRegister ( LOperand op) const
Register ToRegister32 ( LOperand op) const
int32_t ToRepresentation ( LConstantOperand *  op,
const Representation r 
) const
int32_t ToRepresentation ( LConstantOperand *  op,
const Representation r 
) const
Smi* ToSmi ( LConstantOperand *  op) const
Smi* ToSmi ( LConstantOperand *  op) const
Smi * ToSmi ( LConstantOperand *  op) const

Definition at line 519 of file lithium-codegen-arm.cc.

References Smi::FromInt().

Smi* ToSmi ( LConstantOperand *  op) const
X87Register ToX87Register ( LOperand op) const
void WriteTranslation ( LEnvironment environment,
Translation *  translation 
)
void WriteTranslation ( LEnvironment environment,
Translation *  translation 
)
void WriteTranslation ( LEnvironment environment,
Translation *  translation 
)
void X87CommitWrite ( X87Register  reg)
inline

Definition at line 118 of file lithium-codegen-ia32.h.

void X87Free ( X87Register  reg)
inline

Definition at line 123 of file lithium-codegen-ia32.h.

void X87Fxch ( X87Register  reg,
int  other_slot = 0 
)
inline

Definition at line 120 of file lithium-codegen-ia32.h.

void X87LoadForUsage ( X87Register  reg)
void X87LoadForUsage ( X87Register  reg1,
X87Register  reg2 
)
void X87Mov ( X87Register  reg,
Operand  src,
X87OperandType  operand = kX87DoubleOperand 
)
void X87Mov ( Operand  src,
X87Register  reg,
X87OperandType  operand = kX87DoubleOperand 
)
void X87PrepareBinaryOp ( X87Register  left,
X87Register  right,
X87Register  result 
)
void X87PrepareToWrite ( X87Register  reg)
inline

Definition at line 117 of file lithium-codegen-ia32.h.

bool X87StackEmpty ( )
inline

Definition at line 128 of file lithium-codegen-ia32.h.

Friends And Related Function Documentation

LDeferredCode
friend

Definition at line 419 of file lithium-codegen-arm.h.

LEnvironment
friend
friend class LGapResolver
friend

Definition at line 401 of file lithium-codegen-ia32.h.

SafepointGenerator
friend

Definition at line 421 of file lithium-codegen-arm.h.


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