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
macro-assembler-arm64.h File Reference
#include <vector>
#include "v8globals.h"
#include "globals.h"
#include "arm64/assembler-arm64-inl.h"
Include dependency graph for macro-assembler-arm64.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

class  MacroAssembler
 
class  MacroAssembler::PushPopQueue
 
class  MacroAssembler::NoUseRealAbortsScope
 
class  BASE_EMBEDDED< Visitor >
 
class  UseScratchRegisterScope
 
class  InlineSmiCheckInfo
 

Namespaces

 v8
 
 v8::internal
 

Macros

#define LS_MACRO_LIST(V)
 
#define DECLARE_FUNCTION(FN, REGTYPE, REG, OP)   inline void FN(const REGTYPE REG, const MemOperand& addr);
 
#define ACCESS_MASM(masm)   masm->
 

Enumerations

enum  BranchType {
  integer_eq = eq, integer_ne = ne, integer_hs = hs, integer_lo = lo,
  integer_mi = mi, integer_pl = pl, integer_vs = vs, integer_vc = vc,
  integer_hi = hi, integer_ls = ls, integer_ge = ge, integer_lt = lt,
  integer_gt = gt, integer_le = le, integer_al = al, integer_nv = nv,
  always = 16, never = 17, reg_zero, reg_not_zero,
  reg_bit_clear, reg_bit_set, kBranchTypeFirstCondition = eq, kBranchTypeLastCondition = nv,
  kBranchTypeFirstUsingReg = reg_zero, kBranchTypeFirstUsingBit = reg_bit_clear
}
 
enum  RememberedSetAction {
  EMIT_REMEMBERED_SET, OMIT_REMEMBERED_SET, EMIT_REMEMBERED_SET, OMIT_REMEMBERED_SET,
  EMIT_REMEMBERED_SET, OMIT_REMEMBERED_SET, EMIT_REMEMBERED_SET, OMIT_REMEMBERED_SET,
  EMIT_REMEMBERED_SET, OMIT_REMEMBERED_SET
}
 
enum  SmiCheck {
  INLINE_SMI_CHECK, OMIT_SMI_CHECK, INLINE_SMI_CHECK, OMIT_SMI_CHECK,
  INLINE_SMI_CHECK, OMIT_SMI_CHECK, INLINE_SMI_CHECK, OMIT_SMI_CHECK,
  INLINE_SMI_CHECK, OMIT_SMI_CHECK
}
 
enum  LinkRegisterStatus { kLRHasNotBeenSaved, kLRHasBeenSaved, kLRHasNotBeenSaved, kLRHasBeenSaved }
 
enum  TargetAddressStorageMode { CAN_INLINE_TARGET_ADDRESS, NEVER_INLINE_TARGET_ADDRESS, CAN_INLINE_TARGET_ADDRESS, NEVER_INLINE_TARGET_ADDRESS }
 
enum  UntagMode { kNotSpeculativeUntag, kSpeculativeUntag }
 
enum  ArrayHasHoles { kArrayCantHaveHoles, kArrayCanHaveHoles }
 
enum  CopyHint { kCopyUnknown, kCopyShort, kCopyLong }
 
enum  DiscardMoveMode { kDontDiscardForSameWReg, kDiscardForSameWReg }
 
enum  SeqStringSetCharCheckIndexType { kIndexIsSmi, kIndexIsInteger32 }
 

Functions

MemOperand FieldMemOperand (Register object, int offset)
 
MemOperand UntagSmiFieldMemOperand (Register object, int offset)
 
MemOperand UntagSmiMemOperand (Register object, int offset)
 
BranchType InvertBranchType (BranchType type)
 
MemOperand ContextMemOperand (Register context, int index)
 
MemOperand GlobalObjectMemOperand ()
 

Macro Definition Documentation

#define ACCESS_MASM (   masm)    masm->

Definition at line 2307 of file macro-assembler-arm64.h.

#define DECLARE_FUNCTION (   FN,
  REGTYPE,
  REG,
  OP 
)    inline void FN(const REGTYPE REG, const MemOperand& addr);

Definition at line 245 of file macro-assembler-arm64.h.

#define LS_MACRO_LIST (   V)
Value:
V(Ldrb, Register&, rt, LDRB_w) \
V(Strb, Register&, rt, STRB_w) \
V(Ldrsb, Register&, rt, rt.Is64Bits() ? LDRSB_x : LDRSB_w) \
V(Ldrh, Register&, rt, LDRH_w) \
V(Strh, Register&, rt, STRH_w) \
V(Ldrsh, Register&, rt, rt.Is64Bits() ? LDRSH_x : LDRSH_w) \
V(Ldr, CPURegister&, rt, LoadOpFor(rt)) \
V(Str, CPURegister&, rt, StoreOpFor(rt)) \
V(Ldrsw, Register&, rt, LDRSW_x)

Definition at line 41 of file macro-assembler-arm64.h.