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

#include <assembler-arm.h>

Inheritance diagram for Assembler:
Collaboration diagram for Assembler:

Data Structures

class  BlockConstPoolScope
 
class  BlockGrowBufferScope
 
class  BlockTrampolinePoolScope
 

Public Types

enum  NopMarkerTypes {
  NON_MARKING_NOP = 0, DEBUG_BREAK_NOP, PROPERTY_ACCESS_INLINED, PROPERTY_ACCESS_INLINED_CONTEXT,
  PROPERTY_ACCESS_INLINED_CONTEXT_DONT_DELETE, LAST_CODE_MARKER, FIRST_IC_MARKER = PROPERTY_ACCESS_INLINED, NON_MARKING_NOP = 0,
  DEBUG_BREAK_NOP, PROPERTY_ACCESS_INLINED, PROPERTY_ACCESS_INLINED_CONTEXT, PROPERTY_ACCESS_INLINED_CONTEXT_DONT_DELETE,
  LAST_CODE_MARKER, FIRST_IC_MARKER = PROPERTY_ACCESS_INLINED
}
 
enum  RoundingMode {
  kRoundToNearest = 0x0, kRoundDown = 0x1, kRoundUp = 0x2, kRoundToZero = 0x3,
  kRoundToNearest = 0x0, kRoundDown = 0x1, kRoundUp = 0x2, kRoundToZero = 0x3
}
 
enum  NopMarkerTypes {
  NON_MARKING_NOP = 0, DEBUG_BREAK_NOP, PROPERTY_ACCESS_INLINED, PROPERTY_ACCESS_INLINED_CONTEXT,
  PROPERTY_ACCESS_INLINED_CONTEXT_DONT_DELETE, LAST_CODE_MARKER, FIRST_IC_MARKER = PROPERTY_ACCESS_INLINED, NON_MARKING_NOP = 0,
  DEBUG_BREAK_NOP, PROPERTY_ACCESS_INLINED, PROPERTY_ACCESS_INLINED_CONTEXT, PROPERTY_ACCESS_INLINED_CONTEXT_DONT_DELETE,
  LAST_CODE_MARKER, FIRST_IC_MARKER = PROPERTY_ACCESS_INLINED
}
 
enum  RoundingMode {
  kRoundToNearest = 0x0, kRoundDown = 0x1, kRoundUp = 0x2, kRoundToZero = 0x3,
  kRoundToNearest = 0x0, kRoundDown = 0x1, kRoundUp = 0x2, kRoundToZero = 0x3
}
 

Public Member Functions

 Assembler (Isolate *isolate, void *buffer, int buffer_size)
 
 ~Assembler ()
 
void set_emit_debug_code (bool value)
 
void set_predictable_code_size (bool value)
 
void GetCode (CodeDesc *desc)
 
void bind (Label *L)
 
int branch_offset (Label *L, bool jump_elimination_allowed)
 
void label_at_put (Label *L, int at_offset)
 
 INLINE (static Address target_pointer_address_at(Address pc))
 
 INLINE (static Address target_pointer_at(Address pc))
 
 INLINE (static void set_target_pointer_at(Address pc, Address target))
 
 INLINE (static Address target_address_at(Address pc))
 
 INLINE (static void set_target_address_at(Address pc, Address target))
 
 INLINE (static Address target_address_from_return_address(Address pc))
 
 INLINE (static Address return_address_from_call_start(Address pc))
 
void Align (int m)
 
void CodeTargetAlign ()
 
void b (int branch_offset, Condition cond=al)
 
void bl (int branch_offset, Condition cond=al)
 
void blx (int branch_offset)
 
void blx (Register target, Condition cond=al)
 
void bx (Register target, Condition cond=al)
 
void b (Label *L, Condition cond=al)
 
void b (Condition cond, Label *L)
 
void bl (Label *L, Condition cond=al)
 
void bl (Condition cond, Label *L)
 
void blx (Label *L)
 
void and_ (Register dst, Register src1, const Operand &src2, SBit s=LeaveCC, Condition cond=al)
 
void eor (Register dst, Register src1, const Operand &src2, SBit s=LeaveCC, Condition cond=al)
 
void sub (Register dst, Register src1, const Operand &src2, SBit s=LeaveCC, Condition cond=al)
 
void sub (Register dst, Register src1, Register src2, SBit s=LeaveCC, Condition cond=al)
 
void rsb (Register dst, Register src1, const Operand &src2, SBit s=LeaveCC, Condition cond=al)
 
void add (Register dst, Register src1, const Operand &src2, SBit s=LeaveCC, Condition cond=al)
 
void add (Register dst, Register src1, Register src2, SBit s=LeaveCC, Condition cond=al)
 
void adc (Register dst, Register src1, const Operand &src2, SBit s=LeaveCC, Condition cond=al)
 
void sbc (Register dst, Register src1, const Operand &src2, SBit s=LeaveCC, Condition cond=al)
 
void rsc (Register dst, Register src1, const Operand &src2, SBit s=LeaveCC, Condition cond=al)
 
void tst (Register src1, const Operand &src2, Condition cond=al)
 
void tst (Register src1, Register src2, Condition cond=al)
 
void teq (Register src1, const Operand &src2, Condition cond=al)
 
void cmp (Register src1, const Operand &src2, Condition cond=al)
 
void cmp (Register src1, Register src2, Condition cond=al)
 
void cmp_raw_immediate (Register src1, int raw_immediate, Condition cond=al)
 
void cmn (Register src1, const Operand &src2, Condition cond=al)
 
void orr (Register dst, Register src1, const Operand &src2, SBit s=LeaveCC, Condition cond=al)
 
void orr (Register dst, Register src1, Register src2, SBit s=LeaveCC, Condition cond=al)
 
void mov (Register dst, const Operand &src, SBit s=LeaveCC, Condition cond=al)
 
void mov (Register dst, Register src, SBit s=LeaveCC, Condition cond=al)
 
void movw (Register reg, uint32_t immediate, Condition cond=al)
 
void movt (Register reg, uint32_t immediate, Condition cond=al)
 
void bic (Register dst, Register src1, const Operand &src2, SBit s=LeaveCC, Condition cond=al)
 
void mvn (Register dst, const Operand &src, SBit s=LeaveCC, Condition cond=al)
 
void mla (Register dst, Register src1, Register src2, Register srcA, SBit s=LeaveCC, Condition cond=al)
 
void mls (Register dst, Register src1, Register src2, Register srcA, Condition cond=al)
 
void sdiv (Register dst, Register src1, Register src2, Condition cond=al)
 
void mul (Register dst, Register src1, Register src2, SBit s=LeaveCC, Condition cond=al)
 
void smlal (Register dstL, Register dstH, Register src1, Register src2, SBit s=LeaveCC, Condition cond=al)
 
void smull (Register dstL, Register dstH, Register src1, Register src2, SBit s=LeaveCC, Condition cond=al)
 
void umlal (Register dstL, Register dstH, Register src1, Register src2, SBit s=LeaveCC, Condition cond=al)
 
void umull (Register dstL, Register dstH, Register src1, Register src2, SBit s=LeaveCC, Condition cond=al)
 
void clz (Register dst, Register src, Condition cond=al)
 
void usat (Register dst, int satpos, const Operand &src, Condition cond=al)
 
void ubfx (Register dst, Register src, int lsb, int width, Condition cond=al)
 
void sbfx (Register dst, Register src, int lsb, int width, Condition cond=al)
 
void bfc (Register dst, int lsb, int width, Condition cond=al)
 
void bfi (Register dst, Register src, int lsb, int width, Condition cond=al)
 
void mrs (Register dst, SRegister s, Condition cond=al)
 
void msr (SRegisterFieldMask fields, const Operand &src, Condition cond=al)
 
void ldr (Register dst, const MemOperand &src, Condition cond=al)
 
void str (Register src, const MemOperand &dst, Condition cond=al)
 
void ldrb (Register dst, const MemOperand &src, Condition cond=al)
 
void strb (Register src, const MemOperand &dst, Condition cond=al)
 
void ldrh (Register dst, const MemOperand &src, Condition cond=al)
 
void strh (Register src, const MemOperand &dst, Condition cond=al)
 
void ldrsb (Register dst, const MemOperand &src, Condition cond=al)
 
void ldrsh (Register dst, const MemOperand &src, Condition cond=al)
 
void ldrd (Register dst1, Register dst2, const MemOperand &src, Condition cond=al)
 
void strd (Register src1, Register src2, const MemOperand &dst, Condition cond=al)
 
void ldm (BlockAddrMode am, Register base, RegList dst, Condition cond=al)
 
void stm (BlockAddrMode am, Register base, RegList src, Condition cond=al)
 
void stop (const char *msg, Condition cond=al, int32_t code=kDefaultStopCode)
 
void bkpt (uint32_t imm16)
 
void svc (uint32_t imm24, Condition cond=al)
 
void cdp (Coprocessor coproc, int opcode_1, CRegister crd, CRegister crn, CRegister crm, int opcode_2, Condition cond=al)
 
void cdp2 (Coprocessor coproc, int opcode_1, CRegister crd, CRegister crn, CRegister crm, int opcode_2)
 
void mcr (Coprocessor coproc, int opcode_1, Register rd, CRegister crn, CRegister crm, int opcode_2=0, Condition cond=al)
 
void mcr2 (Coprocessor coproc, int opcode_1, Register rd, CRegister crn, CRegister crm, int opcode_2=0)
 
void mrc (Coprocessor coproc, int opcode_1, Register rd, CRegister crn, CRegister crm, int opcode_2=0, Condition cond=al)
 
void mrc2 (Coprocessor coproc, int opcode_1, Register rd, CRegister crn, CRegister crm, int opcode_2=0)
 
void ldc (Coprocessor coproc, CRegister crd, const MemOperand &src, LFlag l=Short, Condition cond=al)
 
void ldc (Coprocessor coproc, CRegister crd, Register base, int option, LFlag l=Short, Condition cond=al)
 
void ldc2 (Coprocessor coproc, CRegister crd, const MemOperand &src, LFlag l=Short)
 
void ldc2 (Coprocessor coproc, CRegister crd, Register base, int option, LFlag l=Short)
 
void vldr (const DwVfpRegister dst, const Register base, int offset, const Condition cond=al)
 
void vldr (const DwVfpRegister dst, const MemOperand &src, const Condition cond=al)
 
void vldr (const SwVfpRegister dst, const Register base, int offset, const Condition cond=al)
 
void vldr (const SwVfpRegister dst, const MemOperand &src, const Condition cond=al)
 
void vstr (const DwVfpRegister src, const Register base, int offset, const Condition cond=al)
 
void vstr (const DwVfpRegister src, const MemOperand &dst, const Condition cond=al)
 
void vstr (const SwVfpRegister src, const Register base, int offset, const Condition cond=al)
 
void vstr (const SwVfpRegister src, const MemOperand &dst, const Condition cond=al)
 
void vldm (BlockAddrMode am, Register base, DwVfpRegister first, DwVfpRegister last, Condition cond=al)
 
void vstm (BlockAddrMode am, Register base, DwVfpRegister first, DwVfpRegister last, Condition cond=al)
 
void vldm (BlockAddrMode am, Register base, SwVfpRegister first, SwVfpRegister last, Condition cond=al)
 
void vstm (BlockAddrMode am, Register base, SwVfpRegister first, SwVfpRegister last, Condition cond=al)
 
void vmov (const DwVfpRegister dst, double imm, const Register scratch=no_reg, const Condition cond=al)
 
void vmov (const SwVfpRegister dst, const SwVfpRegister src, const Condition cond=al)
 
void vmov (const DwVfpRegister dst, const DwVfpRegister src, const Condition cond=al)
 
void vmov (const DwVfpRegister dst, const Register src1, const Register src2, const Condition cond=al)
 
void vmov (const Register dst1, const Register dst2, const DwVfpRegister src, const Condition cond=al)
 
void vmov (const SwVfpRegister dst, const Register src, const Condition cond=al)
 
void vmov (const Register dst, const SwVfpRegister src, const Condition cond=al)
 
void vcvt_f64_s32 (const DwVfpRegister dst, const SwVfpRegister src, VFPConversionMode mode=kDefaultRoundToZero, const Condition cond=al)
 
void vcvt_f32_s32 (const SwVfpRegister dst, const SwVfpRegister src, VFPConversionMode mode=kDefaultRoundToZero, const Condition cond=al)
 
void vcvt_f64_u32 (const DwVfpRegister dst, const SwVfpRegister src, VFPConversionMode mode=kDefaultRoundToZero, const Condition cond=al)
 
void vcvt_s32_f64 (const SwVfpRegister dst, const DwVfpRegister src, VFPConversionMode mode=kDefaultRoundToZero, const Condition cond=al)
 
void vcvt_u32_f64 (const SwVfpRegister dst, const DwVfpRegister src, VFPConversionMode mode=kDefaultRoundToZero, const Condition cond=al)
 
void vcvt_f64_f32 (const DwVfpRegister dst, const SwVfpRegister src, VFPConversionMode mode=kDefaultRoundToZero, const Condition cond=al)
 
void vcvt_f32_f64 (const SwVfpRegister dst, const DwVfpRegister src, VFPConversionMode mode=kDefaultRoundToZero, const Condition cond=al)
 
void vneg (const DwVfpRegister dst, const DwVfpRegister src, const Condition cond=al)
 
void vabs (const DwVfpRegister dst, const DwVfpRegister src, const Condition cond=al)
 
void vadd (const DwVfpRegister dst, const DwVfpRegister src1, const DwVfpRegister src2, const Condition cond=al)
 
void vsub (const DwVfpRegister dst, const DwVfpRegister src1, const DwVfpRegister src2, const Condition cond=al)
 
void vmul (const DwVfpRegister dst, const DwVfpRegister src1, const DwVfpRegister src2, const Condition cond=al)
 
void vdiv (const DwVfpRegister dst, const DwVfpRegister src1, const DwVfpRegister src2, const Condition cond=al)
 
void vcmp (const DwVfpRegister src1, const DwVfpRegister src2, const Condition cond=al)
 
void vcmp (const DwVfpRegister src1, const double src2, const Condition cond=al)
 
void vmrs (const Register dst, const Condition cond=al)
 
void vmsr (const Register dst, const Condition cond=al)
 
void vsqrt (const DwVfpRegister dst, const DwVfpRegister src, const Condition cond=al)
 
void nop (int type=0)
 
void push (Register src, Condition cond=al)
 
void pop (Register dst, Condition cond=al)
 
void pop ()
 
void jmp (Label *L)
 
bool predictable_code_size () const
 
int SizeOfCodeGeneratedSince (Label *label)
 
int InstructionsGeneratedSince (Label *label)
 
bool ImmediateFitsAddrMode1Instruction (int32_t imm32)
 
void RecordJSReturn ()
 
void RecordDebugBreakSlot ()
 
void SetRecordedAstId (TypeFeedbackId ast_id)
 
TypeFeedbackId RecordedAstId ()
 
void ClearRecordedAstId ()
 
void RecordComment (const char *msg)
 
void RecordConstPool (int size)
 
void db (uint8_t data)
 
void dd (uint32_t data)
 
int pc_offset () const
 
PositionsRecorderpositions_recorder ()
 
Instr instr_at (int pos)
 
void instr_at_put (int pos, Instr instr)
 
void BlockConstPoolFor (int instructions)
 
void CheckConstPool (bool force_emit, bool require_jump)
 
 Assembler (Isolate *isolate, void *buffer, int buffer_size)
 
 ~Assembler ()
 
void set_emit_debug_code (bool value)
 
void set_predictable_code_size (bool value)
 
void GetCode (CodeDesc *desc)
 
void Align (int m)
 
void Nop (int bytes=1)
 
void CodeTargetAlign ()
 
void pushad ()
 
void popad ()
 
void pushfd ()
 
void popfd ()
 
void push (const Immediate &x)
 
void push_imm32 (int32_t imm32)
 
void push (Register src)
 
void push (const Operand &src)
 
void pop (Register dst)
 
void pop (const Operand &dst)
 
void enter (const Immediate &size)
 
void leave ()
 
void mov_b (Register dst, Register src)
 
void mov_b (Register dst, const Operand &src)
 
void mov_b (Register dst, int8_t imm8)
 
void mov_b (const Operand &dst, int8_t imm8)
 
void mov_b (const Operand &dst, Register src)
 
void mov_w (Register dst, const Operand &src)
 
void mov_w (const Operand &dst, Register src)
 
void mov (Register dst, int32_t imm32)
 
void mov (Register dst, const Immediate &x)
 
void mov (Register dst, Handle< Object > handle)
 
void mov (Register dst, const Operand &src)
 
void mov (Register dst, Register src)
 
void mov (const Operand &dst, const Immediate &x)
 
void mov (const Operand &dst, Handle< Object > handle)
 
void mov (const Operand &dst, Register src)
 
void movsx_b (Register dst, Register src)
 
void movsx_b (Register dst, const Operand &src)
 
void movsx_w (Register dst, Register src)
 
void movsx_w (Register dst, const Operand &src)
 
void movzx_b (Register dst, Register src)
 
void movzx_b (Register dst, const Operand &src)
 
void movzx_w (Register dst, Register src)
 
void movzx_w (Register dst, const Operand &src)
 
void cmov (Condition cc, Register dst, Register src)
 
void cmov (Condition cc, Register dst, const Operand &src)
 
void cld ()
 
void rep_movs ()
 
void rep_stos ()
 
void stos ()
 
void xchg (Register dst, Register src)
 
void adc (Register dst, int32_t imm32)
 
void adc (Register dst, const Operand &src)
 
void add (Register dst, Register src)
 
void add (Register dst, const Operand &src)
 
void add (const Operand &dst, Register src)
 
void add (Register dst, const Immediate &imm)
 
void add (const Operand &dst, const Immediate &x)
 
void and_ (Register dst, int32_t imm32)
 
void and_ (Register dst, const Immediate &x)
 
void and_ (Register dst, Register src)
 
void and_ (Register dst, const Operand &src)
 
void and_ (const Operand &dst, Register src)
 
void and_ (const Operand &dst, const Immediate &x)
 
void cmpb (Register reg, int8_t imm8)
 
void cmpb (const Operand &op, int8_t imm8)
 
void cmpb (Register reg, const Operand &op)
 
void cmpb (const Operand &op, Register reg)
 
void cmpb_al (const Operand &op)
 
void cmpw_ax (const Operand &op)
 
void cmpw (const Operand &op, Immediate imm16)
 
void cmp (Register reg, int32_t imm32)
 
void cmp (Register reg, Handle< Object > handle)
 
void cmp (Register reg0, Register reg1)
 
void cmp (Register reg, const Operand &op)
 
void cmp (Register reg, const Immediate &imm)
 
void cmp (const Operand &op, const Immediate &imm)
 
void cmp (const Operand &op, Handle< Object > handle)
 
void dec_b (Register dst)
 
void dec_b (const Operand &dst)
 
void dec (Register dst)
 
void dec (const Operand &dst)
 
void cdq ()
 
void idiv (Register src)
 
void imul (Register src)
 
void imul (Register dst, Register src)
 
void imul (Register dst, const Operand &src)
 
void imul (Register dst, Register src, int32_t imm32)
 
void inc (Register dst)
 
void inc (const Operand &dst)
 
void lea (Register dst, const Operand &src)
 
void mul (Register src)
 
void neg (Register dst)
 
void not_ (Register dst)
 
void or_ (Register dst, int32_t imm32)
 
void or_ (Register dst, Register src)
 
void or_ (Register dst, const Operand &src)
 
void or_ (const Operand &dst, Register src)
 
void or_ (Register dst, const Immediate &imm)
 
void or_ (const Operand &dst, const Immediate &x)
 
void rcl (Register dst, uint8_t imm8)
 
void rcr (Register dst, uint8_t imm8)
 
void sar (Register dst, uint8_t imm8)
 
void sar_cl (Register dst)
 
void sbb (Register dst, const Operand &src)
 
void shld (Register dst, Register src)
 
void shld (Register dst, const Operand &src)
 
void shl (Register dst, uint8_t imm8)
 
void shl_cl (Register dst)
 
void shrd (Register dst, Register src)
 
void shrd (Register dst, const Operand &src)
 
void shr (Register dst, uint8_t imm8)
 
void shr_cl (Register dst)
 
void sub (Register dst, const Immediate &imm)
 
void sub (const Operand &dst, const Immediate &x)
 
void sub (Register dst, Register src)
 
void sub (Register dst, const Operand &src)
 
void sub (const Operand &dst, Register src)
 
void test (Register reg, const Immediate &imm)
 
void test (Register reg0, Register reg1)
 
void test (Register reg, const Operand &op)
 
void test_b (Register reg, const Operand &op)
 
void test (const Operand &op, const Immediate &imm)
 
void test_b (Register reg, uint8_t imm8)
 
void test_b (const Operand &op, uint8_t imm8)
 
void xor_ (Register dst, int32_t imm32)
 
void xor_ (Register dst, Register src)
 
void xor_ (Register dst, const Operand &src)
 
void xor_ (const Operand &dst, Register src)
 
void xor_ (Register dst, const Immediate &imm)
 
void xor_ (const Operand &dst, const Immediate &x)
 
void bt (const Operand &dst, Register src)
 
void bts (Register dst, Register src)
 
void bts (const Operand &dst, Register src)
 
void hlt ()
 
void int3 ()
 
void nop ()
 
void rdtsc ()
 
void ret (int imm16)
 
void bind (Label *L)
 
void call (Label *L)
 
void call (byte *entry, RelocInfo::Mode rmode)
 
int CallSize (const Operand &adr)
 
void call (Register reg)
 
void call (const Operand &adr)
 
int CallSize (Handle< Code > code, RelocInfo::Mode mode)
 
void call (Handle< Code > code, RelocInfo::Mode rmode, TypeFeedbackId id=TypeFeedbackId::None())
 
void jmp (Label *L, Label::Distance distance=Label::kFar)
 
void jmp (byte *entry, RelocInfo::Mode rmode)
 
void jmp (Register reg)
 
void jmp (const Operand &adr)
 
void jmp (Handle< Code > code, RelocInfo::Mode rmode)
 
void j (Condition cc, Label *L, Label::Distance distance=Label::kFar)
 
void j (Condition cc, byte *entry, RelocInfo::Mode rmode)
 
void j (Condition cc, Handle< Code > code)
 
void fld (int i)
 
void fstp (int i)
 
void fld1 ()
 
void fldz ()
 
void fldpi ()
 
void fldln2 ()
 
void fld_s (const Operand &adr)
 
void fld_d (const Operand &adr)
 
void fstp_s (const Operand &adr)
 
void fstp_d (const Operand &adr)
 
void fst_d (const Operand &adr)
 
void fild_s (const Operand &adr)
 
void fild_d (const Operand &adr)
 
void fist_s (const Operand &adr)
 
void fistp_s (const Operand &adr)
 
void fistp_d (const Operand &adr)
 
void fisttp_s (const Operand &adr)
 
void fisttp_d (const Operand &adr)
 
void fabs ()
 
void fchs ()
 
void fcos ()
 
void fsin ()
 
void fptan ()
 
void fyl2x ()
 
void f2xm1 ()
 
void fscale ()
 
void fninit ()
 
void fadd (int i)
 
void fsub (int i)
 
void fmul (int i)
 
void fdiv (int i)
 
void fisub_s (const Operand &adr)
 
void faddp (int i=1)
 
void fsubp (int i=1)
 
void fsubrp (int i=1)
 
void fmulp (int i=1)
 
void fdivp (int i=1)
 
void fprem ()
 
void fprem1 ()
 
void fxch (int i=1)
 
void fincstp ()
 
void ffree (int i=0)
 
void ftst ()
 
void fucomp (int i)
 
void fucompp ()
 
void fucomi (int i)
 
void fucomip ()
 
void fcompp ()
 
void fnstsw_ax ()
 
void fwait ()
 
void fnclex ()
 
void frndint ()
 
void sahf ()
 
void setcc (Condition cc, Register reg)
 
void cpuid ()
 
void cvttss2si (Register dst, const Operand &src)
 
void cvttsd2si (Register dst, const Operand &src)
 
void cvtsd2si (Register dst, XMMRegister src)
 
void cvtsi2sd (XMMRegister dst, Register src)
 
void cvtsi2sd (XMMRegister dst, const Operand &src)
 
void cvtss2sd (XMMRegister dst, XMMRegister src)
 
void cvtsd2ss (XMMRegister dst, XMMRegister src)
 
void addsd (XMMRegister dst, XMMRegister src)
 
void subsd (XMMRegister dst, XMMRegister src)
 
void mulsd (XMMRegister dst, XMMRegister src)
 
void divsd (XMMRegister dst, XMMRegister src)
 
void xorpd (XMMRegister dst, XMMRegister src)
 
void xorps (XMMRegister dst, XMMRegister src)
 
void sqrtsd (XMMRegister dst, XMMRegister src)
 
void andpd (XMMRegister dst, XMMRegister src)
 
void orpd (XMMRegister dst, XMMRegister src)
 
void ucomisd (XMMRegister dst, XMMRegister src)
 
void ucomisd (XMMRegister dst, const Operand &src)
 
void roundsd (XMMRegister dst, XMMRegister src, RoundingMode mode)
 
void movmskpd (Register dst, XMMRegister src)
 
void cmpltsd (XMMRegister dst, XMMRegister src)
 
void pcmpeqd (XMMRegister dst, XMMRegister src)
 
void movaps (XMMRegister dst, XMMRegister src)
 
void movdqa (XMMRegister dst, const Operand &src)
 
void movdqa (const Operand &dst, XMMRegister src)
 
void movdqu (XMMRegister dst, const Operand &src)
 
void movdqu (const Operand &dst, XMMRegister src)
 
void movdbl (XMMRegister dst, const Operand &src)
 
void movdbl (const Operand &dst, XMMRegister src)
 
void movd (XMMRegister dst, Register src)
 
void movd (XMMRegister dst, const Operand &src)
 
void movd (Register dst, XMMRegister src)
 
void movd (const Operand &dst, XMMRegister src)
 
void movsd (XMMRegister dst, XMMRegister src)
 
void movss (XMMRegister dst, const Operand &src)
 
void movss (const Operand &dst, XMMRegister src)
 
void movss (XMMRegister dst, XMMRegister src)
 
void extractps (Register dst, XMMRegister src, byte imm8)
 
void pand (XMMRegister dst, XMMRegister src)
 
void pxor (XMMRegister dst, XMMRegister src)
 
void por (XMMRegister dst, XMMRegister src)
 
void ptest (XMMRegister dst, XMMRegister src)
 
void psllq (XMMRegister reg, int8_t shift)
 
void psllq (XMMRegister dst, XMMRegister src)
 
void psrlq (XMMRegister reg, int8_t shift)
 
void psrlq (XMMRegister dst, XMMRegister src)
 
void pshufd (XMMRegister dst, XMMRegister src, int8_t shuffle)
 
void pextrd (Register dst, XMMRegister src, int8_t offset)
 
void pextrd (const Operand &dst, XMMRegister src, int8_t offset)
 
void pinsrd (XMMRegister dst, Register src, int8_t offset)
 
void pinsrd (XMMRegister dst, const Operand &src, int8_t offset)
 
void movntdqa (XMMRegister dst, const Operand &src)
 
void movntdq (const Operand &dst, XMMRegister src)
 
void prefetch (const Operand &src, int level)
 
void Print ()
 
int SizeOfCodeGeneratedSince (Label *label)
 
void RecordJSReturn ()
 
void RecordDebugBreakSlot ()
 
void RecordComment (const char *msg, bool force=false)
 
void db (uint8_t data)
 
void dd (uint32_t data)
 
int pc_offset () const
 
bool overflow () const
 
int available_space () const
 
PositionsRecorderpositions_recorder ()
 
int relocation_writer_size ()
 
byte byte_at (int pos)
 
void set_byte_at (int pos, byte value)
 
 Assembler (Isolate *isolate, void *buffer, int buffer_size)
 
 ~Assembler ()
 
void set_emit_debug_code (bool value)
 
void set_predictable_code_size (bool value)
 
void GetCode (CodeDesc *desc)
 
void bind (Label *L)
 
bool is_near (Label *L)
 
int32_t branch_offset (Label *L, bool jump_elimination_allowed)
 
int32_t shifted_branch_offset (Label *L, bool jump_elimination_allowed)
 
uint32_t jump_address (Label *L)
 
void label_at_put (Label *L, int at_offset)
 
void Align (int m)
 
void CodeTargetAlign ()
 
void nop (unsigned int type=0)
 
void b (int16_t offset)
 
void b (Label *L)
 
void bal (int16_t offset)
 
void bal (Label *L)
 
void beq (Register rs, Register rt, int16_t offset)
 
void beq (Register rs, Register rt, Label *L)
 
void bgez (Register rs, int16_t offset)
 
void bgezal (Register rs, int16_t offset)
 
void bgtz (Register rs, int16_t offset)
 
void blez (Register rs, int16_t offset)
 
void bltz (Register rs, int16_t offset)
 
void bltzal (Register rs, int16_t offset)
 
void bne (Register rs, Register rt, int16_t offset)
 
void bne (Register rs, Register rt, Label *L)
 
void j (int32_t target)
 
void jal (int32_t target)
 
void jalr (Register rs, Register rd=ra)
 
void jr (Register target)
 
void j_or_jr (int32_t target, Register rs)
 
void jal_or_jalr (int32_t target, Register rs)
 
void addu (Register rd, Register rs, Register rt)
 
void subu (Register rd, Register rs, Register rt)
 
void mult (Register rs, Register rt)
 
void multu (Register rs, Register rt)
 
void div (Register rs, Register rt)
 
void divu (Register rs, Register rt)
 
void mul (Register rd, Register rs, Register rt)
 
void addiu (Register rd, Register rs, int32_t j)
 
void and_ (Register rd, Register rs, Register rt)
 
void or_ (Register rd, Register rs, Register rt)
 
void xor_ (Register rd, Register rs, Register rt)
 
void nor (Register rd, Register rs, Register rt)
 
void andi (Register rd, Register rs, int32_t j)
 
void ori (Register rd, Register rs, int32_t j)
 
void xori (Register rd, Register rs, int32_t j)
 
void lui (Register rd, int32_t j)
 
void sll (Register rd, Register rt, uint16_t sa, bool coming_from_nop=false)
 
void sllv (Register rd, Register rt, Register rs)
 
void srl (Register rd, Register rt, uint16_t sa)
 
void srlv (Register rd, Register rt, Register rs)
 
void sra (Register rt, Register rd, uint16_t sa)
 
void srav (Register rt, Register rd, Register rs)
 
void rotr (Register rd, Register rt, uint16_t sa)
 
void rotrv (Register rd, Register rt, Register rs)
 
void lb (Register rd, const MemOperand &rs)
 
void lbu (Register rd, const MemOperand &rs)
 
void lh (Register rd, const MemOperand &rs)
 
void lhu (Register rd, const MemOperand &rs)
 
void lw (Register rd, const MemOperand &rs)
 
void lwl (Register rd, const MemOperand &rs)
 
void lwr (Register rd, const MemOperand &rs)
 
void sb (Register rd, const MemOperand &rs)
 
void sh (Register rd, const MemOperand &rs)
 
void sw (Register rd, const MemOperand &rs)
 
void swl (Register rd, const MemOperand &rs)
 
void swr (Register rd, const MemOperand &rs)
 
void break_ (uint32_t code, bool break_as_stop=false)
 
void stop (const char *msg, uint32_t code=kMaxStopCode)
 
void tge (Register rs, Register rt, uint16_t code)
 
void tgeu (Register rs, Register rt, uint16_t code)
 
void tlt (Register rs, Register rt, uint16_t code)
 
void tltu (Register rs, Register rt, uint16_t code)
 
void teq (Register rs, Register rt, uint16_t code)
 
void tne (Register rs, Register rt, uint16_t code)
 
void mfhi (Register rd)
 
void mflo (Register rd)
 
void slt (Register rd, Register rs, Register rt)
 
void sltu (Register rd, Register rs, Register rt)
 
void slti (Register rd, Register rs, int32_t j)
 
void sltiu (Register rd, Register rs, int32_t j)
 
void movz (Register rd, Register rs, Register rt)
 
void movn (Register rd, Register rs, Register rt)
 
void movt (Register rd, Register rs, uint16_t cc=0)
 
void movf (Register rd, Register rs, uint16_t cc=0)
 
void clz (Register rd, Register rs)
 
void ins_ (Register rt, Register rs, uint16_t pos, uint16_t size)
 
void ext_ (Register rt, Register rs, uint16_t pos, uint16_t size)
 
void lwc1 (FPURegister fd, const MemOperand &src)
 
void ldc1 (FPURegister fd, const MemOperand &src)
 
void swc1 (FPURegister fs, const MemOperand &dst)
 
void sdc1 (FPURegister fs, const MemOperand &dst)
 
void mtc1 (Register rt, FPURegister fs)
 
void mfc1 (Register rt, FPURegister fs)
 
void ctc1 (Register rt, FPUControlRegister fs)
 
void cfc1 (Register rt, FPUControlRegister fs)
 
void add_d (FPURegister fd, FPURegister fs, FPURegister ft)
 
void sub_d (FPURegister fd, FPURegister fs, FPURegister ft)
 
void mul_d (FPURegister fd, FPURegister fs, FPURegister ft)
 
void div_d (FPURegister fd, FPURegister fs, FPURegister ft)
 
void abs_d (FPURegister fd, FPURegister fs)
 
void mov_d (FPURegister fd, FPURegister fs)
 
void neg_d (FPURegister fd, FPURegister fs)
 
void sqrt_d (FPURegister fd, FPURegister fs)
 
void cvt_w_s (FPURegister fd, FPURegister fs)
 
void cvt_w_d (FPURegister fd, FPURegister fs)
 
void trunc_w_s (FPURegister fd, FPURegister fs)
 
void trunc_w_d (FPURegister fd, FPURegister fs)
 
void round_w_s (FPURegister fd, FPURegister fs)
 
void round_w_d (FPURegister fd, FPURegister fs)
 
void floor_w_s (FPURegister fd, FPURegister fs)
 
void floor_w_d (FPURegister fd, FPURegister fs)
 
void ceil_w_s (FPURegister fd, FPURegister fs)
 
void ceil_w_d (FPURegister fd, FPURegister fs)
 
void cvt_l_s (FPURegister fd, FPURegister fs)
 
void cvt_l_d (FPURegister fd, FPURegister fs)
 
void trunc_l_s (FPURegister fd, FPURegister fs)
 
void trunc_l_d (FPURegister fd, FPURegister fs)
 
void round_l_s (FPURegister fd, FPURegister fs)
 
void round_l_d (FPURegister fd, FPURegister fs)
 
void floor_l_s (FPURegister fd, FPURegister fs)
 
void floor_l_d (FPURegister fd, FPURegister fs)
 
void ceil_l_s (FPURegister fd, FPURegister fs)
 
void ceil_l_d (FPURegister fd, FPURegister fs)
 
void cvt_s_w (FPURegister fd, FPURegister fs)
 
void cvt_s_l (FPURegister fd, FPURegister fs)
 
void cvt_s_d (FPURegister fd, FPURegister fs)
 
void cvt_d_w (FPURegister fd, FPURegister fs)
 
void cvt_d_l (FPURegister fd, FPURegister fs)
 
void cvt_d_s (FPURegister fd, FPURegister fs)
 
void c (FPUCondition cond, SecondaryField fmt, FPURegister ft, FPURegister fs, uint16_t cc=0)
 
void bc1f (int16_t offset, uint16_t cc=0)
 
void bc1f (Label *L, uint16_t cc=0)
 
void bc1t (int16_t offset, uint16_t cc=0)
 
void bc1t (Label *L, uint16_t cc=0)
 
void fcmp (FPURegister src1, const double src2, FPUCondition cond)
 
int SizeOfCodeGeneratedSince (Label *label)
 
int InstructionsGeneratedSince (Label *label)
 
void RecordJSReturn ()
 
void RecordDebugBreakSlot ()
 
void SetRecordedAstId (TypeFeedbackId ast_id)
 
TypeFeedbackId RecordedAstId ()
 
void ClearRecordedAstId ()
 
void RecordComment (const char *msg)
 
void db (uint8_t data)
 
void dd (uint32_t data)
 
int32_t pc_offset () const
 
PositionsRecorderpositions_recorder ()
 
void BlockTrampolinePoolFor (int instructions)
 
bool overflow () const
 
int available_space () const
 
Instr instr_at (int pos)
 
void instr_at_put (int pos, Instr instr)
 
void CheckTrampolinePool ()
 
 Assembler (Isolate *isolate, void *buffer, int buffer_size)
 
 ~Assembler ()
 
void set_emit_debug_code (bool value)
 
void set_predictable_code_size (bool value)
 
void GetCode (CodeDesc *desc)
 
Handle< Objectcode_target_object_handle_at (Address pc)
 
void Align (int m)
 
void Nop (int bytes=1)
 
void CodeTargetAlign ()
 
void pushfq ()
 
void popfq ()
 
void push (Immediate value)
 
void push_imm32 (int32_t imm32)
 
void push (Register src)
 
void push (const Operand &src)
 
void pop (Register dst)
 
void pop (const Operand &dst)
 
void enter (Immediate size)
 
void leave ()
 
void movb (Register dst, const Operand &src)
 
void movb (Register dst, Immediate imm)
 
void movb (const Operand &dst, Register src)
 
void movw (const Operand &dst, Register src)
 
void movl (Register dst, Register src)
 
void movl (Register dst, const Operand &src)
 
void movl (const Operand &dst, Register src)
 
void movl (const Operand &dst, Immediate imm)
 
void movl (Register dst, Immediate imm32)
 
void movq (const Operand &dst, Register src)
 
void movq (Register dst, const Operand &src)
 
void movq (Register dst, Register src)
 
void movq (Register dst, Immediate x)
 
void movl (const Operand &dst, Label *src)
 
void movq (const Operand &dst, Immediate value)
 
void movq (Register dst, void *ptr, RelocInfo::Mode rmode)
 
void movq (Register dst, int64_t value, RelocInfo::Mode rmode)
 
void movq (Register dst, const char *s, RelocInfo::Mode rmode)
 
void movq (Register dst, ExternalReference ext)
 
void movq (Register dst, Handle< Object > handle, RelocInfo::Mode rmode)
 
void movsxbq (Register dst, const Operand &src)
 
void movsxwq (Register dst, const Operand &src)
 
void movsxlq (Register dst, Register src)
 
void movsxlq (Register dst, const Operand &src)
 
void movzxbq (Register dst, const Operand &src)
 
void movzxbl (Register dst, const Operand &src)
 
void movzxwq (Register dst, const Operand &src)
 
void movzxwl (Register dst, const Operand &src)
 
void repmovsb ()
 
void repmovsw ()
 
void repmovsl ()
 
void repmovsq ()
 
void load_rax (void *ptr, RelocInfo::Mode rmode)
 
void load_rax (ExternalReference ext)
 
void cmovq (Condition cc, Register dst, Register src)
 
void cmovq (Condition cc, Register dst, const Operand &src)
 
void cmovl (Condition cc, Register dst, Register src)
 
void cmovl (Condition cc, Register dst, const Operand &src)
 
void xchg (Register dst, Register src)
 
void addl (Register dst, Register src)
 
void addl (Register dst, Immediate src)
 
void addl (Register dst, const Operand &src)
 
void addl (const Operand &dst, Immediate src)
 
void addl (const Operand &dst, Register src)
 
void addq (Register dst, Register src)
 
void addq (Register dst, const Operand &src)
 
void addq (const Operand &dst, Register src)
 
void addq (Register dst, Immediate src)
 
void addq (const Operand &dst, Immediate src)
 
void sbbl (Register dst, Register src)
 
void sbbq (Register dst, Register src)
 
void cmpb (Register dst, Immediate src)
 
void cmpb_al (Immediate src)
 
void cmpb (Register dst, Register src)
 
void cmpb (Register dst, const Operand &src)
 
void cmpb (const Operand &dst, Register src)
 
void cmpb (const Operand &dst, Immediate src)
 
void cmpw (const Operand &dst, Immediate src)
 
void cmpw (Register dst, Immediate src)
 
void cmpw (Register dst, const Operand &src)
 
void cmpw (Register dst, Register src)
 
void cmpw (const Operand &dst, Register src)
 
void cmpl (Register dst, Register src)
 
void cmpl (Register dst, const Operand &src)
 
void cmpl (const Operand &dst, Register src)
 
void cmpl (Register dst, Immediate src)
 
void cmpl (const Operand &dst, Immediate src)
 
void cmpq (Register dst, Register src)
 
void cmpq (Register dst, const Operand &src)
 
void cmpq (const Operand &dst, Register src)
 
void cmpq (Register dst, Immediate src)
 
void cmpq (const Operand &dst, Immediate src)
 
void and_ (Register dst, Register src)
 
void and_ (Register dst, const Operand &src)
 
void and_ (const Operand &dst, Register src)
 
void and_ (Register dst, Immediate src)
 
void and_ (const Operand &dst, Immediate src)
 
void andl (Register dst, Immediate src)
 
void andl (Register dst, Register src)
 
void andl (Register dst, const Operand &src)
 
void andb (Register dst, Immediate src)
 
void decq (Register dst)
 
void decq (const Operand &dst)
 
void decl (Register dst)
 
void decl (const Operand &dst)
 
void decb (Register dst)
 
void decb (const Operand &dst)
 
void cqo ()
 
void cdq ()
 
void idivq (Register src)
 
void idivl (Register src)
 
void imul (Register src)
 
void imul (Register dst, Register src)
 
void imul (Register dst, const Operand &src)
 
void imul (Register dst, Register src, Immediate imm)
 
void imull (Register dst, Register src)
 
void imull (Register dst, const Operand &src)
 
void imull (Register dst, Register src, Immediate imm)
 
void incq (Register dst)
 
void incq (const Operand &dst)
 
void incl (Register dst)
 
void incl (const Operand &dst)
 
void lea (Register dst, const Operand &src)
 
void leal (Register dst, const Operand &src)
 
void mul (Register src)
 
void neg (Register dst)
 
void neg (const Operand &dst)
 
void negl (Register dst)
 
void not_ (Register dst)
 
void not_ (const Operand &dst)
 
void notl (Register dst)
 
void or_ (Register dst, Register src)
 
void orl (Register dst, Register src)
 
void or_ (Register dst, const Operand &src)
 
void orl (Register dst, const Operand &src)
 
void or_ (const Operand &dst, Register src)
 
void or_ (Register dst, Immediate src)
 
void orl (Register dst, Immediate src)
 
void or_ (const Operand &dst, Immediate src)
 
void orl (const Operand &dst, Immediate src)
 
void rcl (Register dst, Immediate imm8)
 
void rol (Register dst, Immediate imm8)
 
void rcr (Register dst, Immediate imm8)
 
void ror (Register dst, Immediate imm8)
 
void shld (Register dst, Register src)
 
void shrd (Register dst, Register src)
 
void sar (Register dst, Immediate shift_amount)
 
void sarl (Register dst, Immediate shift_amount)
 
void sar_cl (Register dst)
 
void sarl_cl (Register dst)
 
void shl (Register dst, Immediate shift_amount)
 
void shl_cl (Register dst)
 
void shll_cl (Register dst)
 
void shll (Register dst, Immediate shift_amount)
 
void shr (Register dst, Immediate shift_amount)
 
void shr_cl (Register dst)
 
void shrl_cl (Register dst)
 
void shrl (Register dst, Immediate shift_amount)
 
void store_rax (void *dst, RelocInfo::Mode mode)
 
void store_rax (ExternalReference ref)
 
void subq (Register dst, Register src)
 
void subq (Register dst, const Operand &src)
 
void subq (const Operand &dst, Register src)
 
void subq (Register dst, Immediate src)
 
void subq (const Operand &dst, Immediate src)
 
void subl (Register dst, Register src)
 
void subl (Register dst, const Operand &src)
 
void subl (const Operand &dst, Immediate src)
 
void subl (Register dst, Immediate src)
 
void subb (Register dst, Immediate src)
 
void testb (Register dst, Register src)
 
void testb (Register reg, Immediate mask)
 
void testb (const Operand &op, Immediate mask)
 
void testb (const Operand &op, Register reg)
 
void testl (Register dst, Register src)
 
void testl (Register reg, Immediate mask)
 
void testl (const Operand &op, Immediate mask)
 
void testq (const Operand &op, Register reg)
 
void testq (Register dst, Register src)
 
void testq (Register dst, Immediate mask)
 
void xor_ (Register dst, Register src)
 
void xorl (Register dst, Register src)
 
void xorl (Register dst, const Operand &src)
 
void xorl (Register dst, Immediate src)
 
void xorl (const Operand &dst, Immediate src)
 
void xor_ (Register dst, const Operand &src)
 
void xor_ (const Operand &dst, Register src)
 
void xor_ (Register dst, Immediate src)
 
void xor_ (const Operand &dst, Immediate src)
 
void bt (const Operand &dst, Register src)
 
void bts (const Operand &dst, Register src)
 
void clc ()
 
void cld ()
 
void cpuid ()
 
void hlt ()
 
void int3 ()
 
void nop ()
 
void rdtsc ()
 
void ret (int imm16)
 
void setcc (Condition cc, Register reg)
 
void bind (Label *L)
 
void call (Label *L)
 
void call (Handle< Code > target, RelocInfo::Mode rmode=RelocInfo::CODE_TARGET, TypeFeedbackId ast_id=TypeFeedbackId::None())
 
void call (Address target)
 
void call (Register adr)
 
void call (const Operand &operand)
 
void jmp (Label *L, Label::Distance distance=Label::kFar)
 
void jmp (Handle< Code > target, RelocInfo::Mode rmode)
 
void jmp (Register adr)
 
void jmp (const Operand &src)
 
void j (Condition cc, Label *L, Label::Distance distance=Label::kFar)
 
void j (Condition cc, Handle< Code > target, RelocInfo::Mode rmode)
 
void fld (int i)
 
void fld1 ()
 
void fldz ()
 
void fldpi ()
 
void fldln2 ()
 
void fld_s (const Operand &adr)
 
void fld_d (const Operand &adr)
 
void fstp_s (const Operand &adr)
 
void fstp_d (const Operand &adr)
 
void fstp (int index)
 
void fild_s (const Operand &adr)
 
void fild_d (const Operand &adr)
 
void fist_s (const Operand &adr)
 
void fistp_s (const Operand &adr)
 
void fistp_d (const Operand &adr)
 
void fisttp_s (const Operand &adr)
 
void fisttp_d (const Operand &adr)
 
void fabs ()
 
void fchs ()
 
void fadd (int i)
 
void fsub (int i)
 
void fmul (int i)
 
void fdiv (int i)
 
void fisub_s (const Operand &adr)
 
void faddp (int i=1)
 
void fsubp (int i=1)
 
void fsubrp (int i=1)
 
void fmulp (int i=1)
 
void fdivp (int i=1)
 
void fprem ()
 
void fprem1 ()
 
void fxch (int i=1)
 
void fincstp ()
 
void ffree (int i=0)
 
void ftst ()
 
void fucomp (int i)
 
void fucompp ()
 
void fucomi (int i)
 
void fucomip ()
 
void fcompp ()
 
void fnstsw_ax ()
 
void fwait ()
 
void fnclex ()
 
void fsin ()
 
void fcos ()
 
void fptan ()
 
void fyl2x ()
 
void f2xm1 ()
 
void fscale ()
 
void fninit ()
 
void frndint ()
 
void sahf ()
 
void movd (XMMRegister dst, Register src)
 
void movd (Register dst, XMMRegister src)
 
void movq (XMMRegister dst, Register src)
 
void movq (Register dst, XMMRegister src)
 
void movq (XMMRegister dst, XMMRegister src)
 
void extractps (Register dst, XMMRegister src, byte imm8)
 
void movsd (XMMRegister dst, XMMRegister src)
 
void movsd (const Operand &dst, XMMRegister src)
 
void movsd (XMMRegister dst, const Operand &src)
 
void movdqa (const Operand &dst, XMMRegister src)
 
void movdqa (XMMRegister dst, const Operand &src)
 
void movapd (XMMRegister dst, XMMRegister src)
 
void movaps (XMMRegister dst, XMMRegister src)
 
void movss (XMMRegister dst, const Operand &src)
 
void movss (const Operand &dst, XMMRegister src)
 
void cvttss2si (Register dst, const Operand &src)
 
void cvttss2si (Register dst, XMMRegister src)
 
void cvttsd2si (Register dst, const Operand &src)
 
void cvttsd2si (Register dst, XMMRegister src)
 
void cvttsd2siq (Register dst, XMMRegister src)
 
void cvtlsi2sd (XMMRegister dst, const Operand &src)
 
void cvtlsi2sd (XMMRegister dst, Register src)
 
void cvtqsi2sd (XMMRegister dst, const Operand &src)
 
void cvtqsi2sd (XMMRegister dst, Register src)
 
void cvtlsi2ss (XMMRegister dst, Register src)
 
void cvtss2sd (XMMRegister dst, XMMRegister src)
 
void cvtss2sd (XMMRegister dst, const Operand &src)
 
void cvtsd2ss (XMMRegister dst, XMMRegister src)
 
void cvtsd2si (Register dst, XMMRegister src)
 
void cvtsd2siq (Register dst, XMMRegister src)
 
void addsd (XMMRegister dst, XMMRegister src)
 
void subsd (XMMRegister dst, XMMRegister src)
 
void mulsd (XMMRegister dst, XMMRegister src)
 
void divsd (XMMRegister dst, XMMRegister src)
 
void andpd (XMMRegister dst, XMMRegister src)
 
void orpd (XMMRegister dst, XMMRegister src)
 
void xorpd (XMMRegister dst, XMMRegister src)
 
void xorps (XMMRegister dst, XMMRegister src)
 
void sqrtsd (XMMRegister dst, XMMRegister src)
 
void ucomisd (XMMRegister dst, XMMRegister src)
 
void ucomisd (XMMRegister dst, const Operand &src)
 
void roundsd (XMMRegister dst, XMMRegister src, RoundingMode mode)
 
void movmskpd (Register dst, XMMRegister src)
 
void emit_sse_operand (XMMRegister dst, XMMRegister src)
 
void emit_sse_operand (XMMRegister reg, const Operand &adr)
 
void emit_sse_operand (XMMRegister dst, Register src)
 
void emit_sse_operand (Register dst, XMMRegister src)
 
void Print ()
 
int SizeOfCodeGeneratedSince (Label *label)
 
void RecordJSReturn ()
 
void RecordDebugBreakSlot ()
 
void RecordComment (const char *msg, bool force=false)
 
void db (uint8_t data)
 
void dd (uint32_t data)
 
int pc_offset () const
 
PositionsRecorderpositions_recorder ()
 
bool buffer_overflow () const
 
int available_space () const
 
byte byte_at (int pos)
 
void set_byte_at (int pos, byte value)
 
- Public Member Functions inherited from AssemblerBase
 AssemblerBase (Isolate *isolate)
 
Isolateisolate () const
 
int jit_cookie ()
 
- Public Member Functions inherited from Malloced
void * operator new (size_t size)
 
void operator delete (void *p)
 

Static Public Member Functions

static void deserialization_set_special_target_at (Address constant_pool_entry, Address target)
 
static void set_external_target_at (Address constant_pool_entry, Address target)
 
static bool use_immediate_embedded_pointer_loads (const Assembler *assembler)
 
static Instr instr_at (byte *pc)
 
static void instr_at_put (byte *pc, Instr instr)
 
static Condition GetCondition (Instr instr)
 
static bool IsBranch (Instr instr)
 
static int GetBranchOffset (Instr instr)
 
static bool IsLdrRegisterImmediate (Instr instr)
 
static int GetLdrRegisterImmediateOffset (Instr instr)
 
static Instr SetLdrRegisterImmediateOffset (Instr instr, int offset)
 
static bool IsStrRegisterImmediate (Instr instr)
 
static Instr SetStrRegisterImmediateOffset (Instr instr, int offset)
 
static bool IsAddRegisterImmediate (Instr instr)
 
static Instr SetAddRegisterImmediateOffset (Instr instr, int offset)
 
static Register GetRd (Instr instr)
 
static Register GetRn (Instr instr)
 
static Register GetRm (Instr instr)
 
static bool IsPush (Instr instr)
 
static bool IsPop (Instr instr)
 
static bool IsStrRegFpOffset (Instr instr)
 
static bool IsLdrRegFpOffset (Instr instr)
 
static bool IsStrRegFpNegOffset (Instr instr)
 
static bool IsLdrRegFpNegOffset (Instr instr)
 
static bool IsLdrPcImmediateOffset (Instr instr)
 
static bool IsTstImmediate (Instr instr)
 
static bool IsCmpRegister (Instr instr)
 
static bool IsCmpImmediate (Instr instr)
 
static Register GetCmpImmediateRegister (Instr instr)
 
static int GetCmpImmediateRawImmediate (Instr instr)
 
static bool IsNop (Instr instr, int type=NON_MARKING_NOP)
 
static bool IsMovT (Instr instr)
 
static bool IsMovW (Instr instr)
 
static Address target_address_at (Address pc)
 
static void set_target_address_at (Address pc, Address target)
 
static Address target_address_from_return_address (Address pc)
 
static void deserialization_set_special_target_at (Address instruction_payload, Address target)
 
static void set_external_target_at (Address instruction_payload, Address target)
 
static bool IsNop (Address addr)
 
static Address target_address_at (Address pc)
 
static void set_target_address_at (Address pc, Address target)
 
static Address target_address_from_return_address (Address pc)
 
static void JumpLabelToJumpRegister (Address pc)
 
static void QuietNaN (HeapObject *nan)
 
static void deserialization_set_special_target_at (Address instruction_payload, Address target)
 
static void set_external_target_at (Address instruction_payload, Address target)
 
static int RelocateInternalReference (byte *pc, intptr_t pc_delta)
 
static Instr instr_at (byte *pc)
 
static void instr_at_put (byte *pc, Instr instr)
 
static bool IsBranch (Instr instr)
 
static bool IsBeq (Instr instr)
 
static bool IsBne (Instr instr)
 
static bool IsJump (Instr instr)
 
static bool IsJ (Instr instr)
 
static bool IsLui (Instr instr)
 
static bool IsOri (Instr instr)
 
static bool IsJal (Instr instr)
 
static bool IsJr (Instr instr)
 
static bool IsJalr (Instr instr)
 
static bool IsNop (Instr instr, unsigned int type)
 
static bool IsPop (Instr instr)
 
static bool IsPush (Instr instr)
 
static bool IsLwRegFpOffset (Instr instr)
 
static bool IsSwRegFpOffset (Instr instr)
 
static bool IsLwRegFpNegOffset (Instr instr)
 
static bool IsSwRegFpNegOffset (Instr instr)
 
static Register GetRtReg (Instr instr)
 
static Register GetRsReg (Instr instr)
 
static Register GetRdReg (Instr instr)
 
static uint32_t GetRt (Instr instr)
 
static uint32_t GetRtField (Instr instr)
 
static uint32_t GetRs (Instr instr)
 
static uint32_t GetRsField (Instr instr)
 
static uint32_t GetRd (Instr instr)
 
static uint32_t GetRdField (Instr instr)
 
static uint32_t GetSa (Instr instr)
 
static uint32_t GetSaField (Instr instr)
 
static uint32_t GetOpcodeField (Instr instr)
 
static uint32_t GetFunction (Instr instr)
 
static uint32_t GetFunctionField (Instr instr)
 
static uint32_t GetImmediate16 (Instr instr)
 
static uint32_t GetLabelConst (Instr instr)
 
static int32_t GetBranchOffset (Instr instr)
 
static bool IsLw (Instr instr)
 
static int16_t GetLwOffset (Instr instr)
 
static Instr SetLwOffset (Instr instr, int16_t offset)
 
static bool IsSw (Instr instr)
 
static Instr SetSwOffset (Instr instr, int16_t offset)
 
static bool IsAddImmediate (Instr instr)
 
static Instr SetAddImmediateOffset (Instr instr, int16_t offset)
 
static bool IsAndImmediate (Instr instr)
 
static Address target_address_at (Address pc)
 
static void set_target_address_at (Address pc, Address target)
 
static Address target_address_from_return_address (Address pc)
 
static void deserialization_set_special_target_at (Address instruction_payload, Address target)
 
static void set_external_target_at (Address instruction_payload, Address target)
 
static bool IsNop (Address addr)
 
- Static Public Member Functions inherited from AssemblerBase
static void QuietNaN (HeapObject *nan)
 
- Static Public Member Functions inherited from Malloced
static void FatalProcessOutOfMemory ()
 
static void * New (size_t size)
 
static void Delete (void *p)
 

Static Public Attributes

static const int kSpecialTargetSize = kPointerSize
 
static const int kInstrSize = sizeof(Instr)
 
static const int kPatchReturnSequenceAddressOffset = 0 * kInstrSize
 
static const int kPatchDebugBreakSlotAddressOffset = 0 * kInstrSize
 
static const int kPatchDebugBreakSlotReturnOffset = 2 * kInstrSize
 
static const int kPcLoadDelta = 8
 
static const int kJSReturnSequenceInstructions = 4
 
static const int kDebugBreakSlotInstructions = 3
 
static const int kDebugBreakSlotLength
 
static const int kMaxDistToPool = 4*KB
 
static const int kMaxNumPendingRelocInfo = kMaxDistToPool/kInstrSize
 
static const int kCallTargetAddressOffset = kPointerSize
 
static const int kCallInstructionLength = 5
 
static const int kJSReturnSequenceLength = 6
 
static const byte kTestAlByte = 0xA8
 
static const byte kNopByte = 0x90
 
static const byte kJmpShortOpcode = 0xEB
 
static const byte kJccShortPrefix = 0x70
 
static const byte kJncShortOpcode = kJccShortPrefix | not_carry
 
static const byte kJcShortOpcode = kJccShortPrefix | carry
 
static const byte kJnzShortOpcode = kJccShortPrefix | not_zero
 
static const byte kJzShortOpcode = kJccShortPrefix | zero
 
static const int kMaximalBufferSize = 512*MB
 
static const int kMinimalBufferSize = 4*KB
 
static const int kBranchPCOffset = 4
 
static const int kInstructionsFor32BitConstant = 3
 
static const int kRealPatchReturnSequenceAddressOffset = 2
 
static const int kJumpInstructionLength = 13
 
static const int kShortCallInstructionLength = 5
 
static const byte kTestEaxByte = 0xA9
 

Protected Member Functions

bool emit_debug_code () const
 
int buffer_space () const
 
int target_at (int pos)
 
void target_at_put (int pos, int target_pos)
 
void StartBlockConstPool ()
 
void EndBlockConstPool ()
 
bool is_const_pool_blocked () const
 
bool emit_debug_code () const
 
bool predictable_code_size () const
 
void movsd (XMMRegister dst, const Operand &src)
 
void movsd (const Operand &dst, XMMRegister src)
 
void emit_sse_operand (XMMRegister reg, const Operand &adr)
 
void emit_sse_operand (XMMRegister dst, XMMRegister src)
 
void emit_sse_operand (Register dst, XMMRegister src)
 
byteaddr_at (int pos)
 
bool emit_debug_code () const
 
int32_t buffer_space () const
 
int target_at (int32_t pos)
 
void target_at_put (int32_t pos, int32_t target_pos)
 
bool MustUseReg (RelocInfo::Mode rmode)
 
void RecordRelocInfo (RelocInfo::Mode rmode, intptr_t data=0)
 
void BlockTrampolinePoolBefore (int pc_offset)
 
void StartBlockTrampolinePool ()
 
void EndBlockTrampolinePool ()
 
bool is_trampoline_pool_blocked () const
 
bool has_exception () const
 
void DoubleAsTwoUInt32 (double d, uint32_t *lo, uint32_t *hi)
 
bool is_trampoline_emitted () const
 
void StartBlockGrowBuffer ()
 
void EndBlockGrowBuffer ()
 
bool is_buffer_growth_blocked () const
 
bool emit_debug_code () const
 
bool predictable_code_size () const
 

Protected Attributes

TypeFeedbackId recorded_ast_id_
 

Friends

class RegExpMacroAssemblerARM
 
class RelocInfo
 
class CodePatcher
 
class BlockConstPoolScope
 
class PositionsRecorder
 
class EnsureSpace
 
class RegExpMacroAssemblerMIPS
 
class BlockTrampolinePoolScope
 
class RegExpMacroAssemblerX64
 

Detailed Description

Definition at line 634 of file assembler-arm.h.

Member Enumeration Documentation

Enumerator
NON_MARKING_NOP 
DEBUG_BREAK_NOP 
PROPERTY_ACCESS_INLINED 
PROPERTY_ACCESS_INLINED_CONTEXT 
PROPERTY_ACCESS_INLINED_CONTEXT_DONT_DELETE 
LAST_CODE_MARKER 
FIRST_IC_MARKER 
NON_MARKING_NOP 
DEBUG_BREAK_NOP 
PROPERTY_ACCESS_INLINED 
PROPERTY_ACCESS_INLINED_CONTEXT 
PROPERTY_ACCESS_INLINED_CONTEXT_DONT_DELETE 
LAST_CODE_MARKER 
FIRST_IC_MARKER 

Definition at line 663 of file assembler-mips.h.

Enumerator
NON_MARKING_NOP 
DEBUG_BREAK_NOP 
PROPERTY_ACCESS_INLINED 
PROPERTY_ACCESS_INLINED_CONTEXT 
PROPERTY_ACCESS_INLINED_CONTEXT_DONT_DELETE 
LAST_CODE_MARKER 
FIRST_IC_MARKER 
NON_MARKING_NOP 
DEBUG_BREAK_NOP 
PROPERTY_ACCESS_INLINED 
PROPERTY_ACCESS_INLINED_CONTEXT 
PROPERTY_ACCESS_INLINED_CONTEXT_DONT_DELETE 
LAST_CODE_MARKER 
FIRST_IC_MARKER 

Definition at line 1159 of file assembler-arm.h.

Enumerator
kRoundToNearest 
kRoundDown 
kRoundUp 
kRoundToZero 
kRoundToNearest 
kRoundDown 
kRoundUp 
kRoundToZero 

Definition at line 1012 of file assembler-ia32.h.

Enumerator
kRoundToNearest 
kRoundDown 
kRoundUp 
kRoundToZero 
kRoundToNearest 
kRoundDown 
kRoundUp 
kRoundToZero 

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

Constructor & Destructor Documentation

Assembler ( Isolate isolate,
void *  buffer,
int  buffer_size 
)
~Assembler ( )
Assembler ( Isolate isolate,
void *  buffer,
int  buffer_size 
)
~Assembler ( )
Assembler ( Isolate isolate,
void *  buffer,
int  buffer_size 
)
~Assembler ( )
Assembler ( Isolate isolate,
void *  buffer,
int  buffer_size 
)
~Assembler ( )

Member Function Documentation

void abs_d ( FPURegister  fd,
FPURegister  fs 
)
void adc ( Register  dst,
int32_t  imm32 
)
void adc ( Register  dst,
const Operand &  src 
)
void adc ( Register  dst,
Register  src1,
const Operand &  src2,
SBit  s = LeaveCC,
Condition  cond = al 
)
void add ( Register  dst,
Register  src 
)
inline

Definition at line 755 of file assembler-ia32.h.

References Assembler::add().

Referenced by Assembler::add().

void add ( Register  dst,
const Operand &  src 
)
void add ( const Operand &  dst,
Register  src 
)
void add ( Register  dst,
const Immediate &  imm 
)
inline

Definition at line 758 of file assembler-ia32.h.

References Assembler::add().

Referenced by Assembler::add().

void add ( const Operand &  dst,
const Immediate &  x 
)
void add ( Register  dst,
Register  src1,
const Operand &  src2,
SBit  s = LeaveCC,
Condition  cond = al 
)
void add ( Register  dst,
Register  src1,
Register  src2,
SBit  s = LeaveCC,
Condition  cond = al 
)
inline

Definition at line 818 of file assembler-arm.h.

References Assembler::add().

void add_d ( FPURegister  fd,
FPURegister  fs,
FPURegister  ft 
)
void addiu ( Register  rd,
Register  rs,
int32_t  j 
)
void addl ( Register  dst,
Register  src 
)
inline

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

void addl ( Register  dst,
Immediate  src 
)
inline

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

void addl ( Register  dst,
const Operand &  src 
)
inline

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

void addl ( const Operand &  dst,
Immediate  src 
)
inline

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

void addl ( const Operand &  dst,
Register  src 
)
inline

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

void addq ( Register  dst,
Register  src 
)
inline

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

Referenced by MacroAssembler::InitializeRootRegister().

void addq ( Register  dst,
const Operand &  src 
)
inline

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

void addq ( const Operand &  dst,
Register  src 
)
inline

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

void addq ( Register  dst,
Immediate  src 
)
inline

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

void addq ( const Operand &  dst,
Immediate  src 
)
inline

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

byte* addr_at ( int  pos)
inlineprotected

Definition at line 1136 of file assembler-ia32.h.

void addsd ( XMMRegister  dst,
XMMRegister  src 
)
void addsd ( XMMRegister  dst,
XMMRegister  src 
)
void addu ( Register  rd,
Register  rs,
Register  rt 
)
void Align ( int  m)
void Align ( int  m)
void Align ( int  m)
void Align ( int  m)
void and_ ( Register  rd,
Register  rs,
Register  rt 
)
void and_ ( Register  dst,
int32_t  imm32 
)
void and_ ( Register  dst,
const Immediate &  x 
)
void and_ ( Register  dst,
Register  src 
)
inline

Definition at line 763 of file assembler-ia32.h.

References Assembler::and_().

Referenced by Assembler::and_().

void and_ ( Register  dst,
const Operand &  src 
)
void and_ ( const Operand &  dst,
Register  src 
)
void and_ ( const Operand &  dst,
const Immediate &  x 
)
void and_ ( Register  dst,
Register  src1,
const Operand &  src2,
SBit  s = LeaveCC,
Condition  cond = al 
)
void and_ ( Register  dst,
Register  src 
)
inline

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

void and_ ( Register  dst,
const Operand &  src 
)
inline

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

void and_ ( const Operand &  dst,
Register  src 
)
inline

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

void and_ ( Register  dst,
Immediate  src 
)
inline

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

void and_ ( const Operand &  dst,
Immediate  src 
)
inline

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

void andb ( Register  dst,
Immediate  src 
)
inline

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

void andi ( Register  rd,
Register  rs,
int32_t  j 
)
void andl ( Register  dst,
Immediate  src 
)
inline

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

void andl ( Register  dst,
Register  src 
)
inline

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

void andl ( Register  dst,
const Operand &  src 
)
inline

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

void andpd ( XMMRegister  dst,
XMMRegister  src 
)
void andpd ( XMMRegister  dst,
XMMRegister  src 
)
int available_space ( ) const
inline

Definition at line 964 of file assembler-mips.h.

int available_space ( ) const
inline

Definition at line 1108 of file assembler-ia32.h.

int available_space ( ) const
inline

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

void b ( int16_t  offset)
void b ( Label *  L)
inline

Definition at line 688 of file assembler-mips.h.

References Assembler::b(), and Assembler::branch_offset().

Referenced by Assembler::b().

void b ( Label *  L,
Condition  cond = al 
)
inline

Definition at line 790 of file assembler-arm.h.

References v8::internal::al, Assembler::b(), and Assembler::branch_offset().

void b ( Condition  cond,
Label *  L 
)
inline

Definition at line 793 of file assembler-arm.h.

References v8::internal::al, Assembler::b(), and Assembler::branch_offset().

Referenced by Assembler::b().

void bal ( int16_t  offset)
void bal ( Label *  L)
inline

Definition at line 690 of file assembler-mips.h.

References Assembler::bal(), and Assembler::branch_offset().

Referenced by Assembler::bal().

void bc1f ( int16_t  offset,
uint16_t  cc = 0 
)
void bc1f ( Label *  L,
uint16_t  cc = 0 
)
inline

Definition at line 867 of file assembler-mips.h.

References Assembler::bc1f(), Assembler::branch_offset(), and v8::internal::cc.

Referenced by Assembler::bc1f().

void bc1t ( int16_t  offset,
uint16_t  cc = 0 
)
void bc1t ( Label *  L,
uint16_t  cc = 0 
)
inline

Definition at line 869 of file assembler-mips.h.

References Assembler::bc1t(), Assembler::branch_offset(), and v8::internal::cc.

Referenced by Assembler::bc1t().

void beq ( Register  rs,
Register  rt,
int16_t  offset 
)

Referenced by Assembler::beq().

void beq ( Register  rs,
Register  rt,
Label *  L 
)
inline

Definition at line 693 of file assembler-mips.h.

References Assembler::beq(), and Assembler::branch_offset().

void bfc ( Register  dst,
int  lsb,
int  width,
Condition  cond = al 
)
void bfi ( Register  dst,
Register  src,
int  lsb,
int  width,
Condition  cond = al 
)
void bgez ( Register  rs,
int16_t  offset 
)
void bgezal ( Register  rs,
int16_t  offset 
)
void bgtz ( Register  rs,
int16_t  offset 
)
void bic ( Register  dst,
Register  src1,
const Operand &  src2,
SBit  s = LeaveCC,
Condition  cond = al 
)
void bind ( Label *  L)
void bind ( Label *  L)
void bind ( Label *  L)
void bind ( Label *  L)
void bkpt ( uint32_t  imm16)
void bl ( int  branch_offset,
Condition  cond = al 
)
void bl ( Label *  L,
Condition  cond = al 
)
inline

Definition at line 794 of file assembler-arm.h.

References Assembler::bl(), and Assembler::branch_offset().

Referenced by Assembler::bl().

void bl ( Condition  cond,
Label *  L 
)
inline

Definition at line 795 of file assembler-arm.h.

References Assembler::bl(), and Assembler::branch_offset().

Referenced by Assembler::bl().

void blez ( Register  rs,
int16_t  offset 
)
void BlockConstPoolFor ( int  instructions)
void BlockTrampolinePoolBefore ( int  pc_offset)
inlineprotected

Definition at line 1053 of file assembler-mips.h.

References Assembler::pc_offset().

void BlockTrampolinePoolFor ( int  instructions)
void bltz ( Register  rs,
int16_t  offset 
)
void bltzal ( Register  rs,
int16_t  offset 
)
void blx ( int  branch_offset)
void blx ( Register  target,
Condition  cond = al 
)
void blx ( Label *  L)
inline

Definition at line 796 of file assembler-arm.h.

References Assembler::blx(), and Assembler::branch_offset().

Referenced by Assembler::blx().

void bne ( Register  rs,
Register  rt,
int16_t  offset 
)

Referenced by Assembler::bne().

void bne ( Register  rs,
Register  rt,
Label *  L 
)
inline

Definition at line 703 of file assembler-mips.h.

References Assembler::bne(), and Assembler::branch_offset().

int32_t branch_offset ( Label *  L,
bool  jump_elimination_allowed 
)
void break_ ( uint32_t  code,
bool  break_as_stop = false 
)
void bt ( const Operand &  dst,
Register  src 
)
void bt ( const Operand &  dst,
Register  src 
)
void bts ( Register  dst,
Register  src 
)
inline

Definition at line 861 of file assembler-ia32.h.

References Assembler::bts().

Referenced by Assembler::bts().

void bts ( const Operand &  dst,
Register  src 
)
void bts ( const Operand &  dst,
Register  src 
)
bool buffer_overflow ( ) const
inline

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

int32_t buffer_space ( ) const
inlineprotected

Definition at line 1038 of file assembler-mips.h.

int buffer_space ( ) const
inlineprotected

Definition at line 1348 of file assembler-arm.h.

void bx ( Register  target,
Condition  cond = al 
)
byte byte_at ( int  pos)
inline

Definition at line 1122 of file assembler-ia32.h.

byte byte_at ( int  pos)
inline

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

void c ( FPUCondition  cond,
SecondaryField  fmt,
FPURegister  ft,
FPURegister  fs,
uint16_t  cc = 0 
)
void call ( Label *  L)
void call ( byte entry,
RelocInfo::Mode  rmode 
)
void call ( Register  reg)
inline

Definition at line 892 of file assembler-ia32.h.

References Assembler::call().

Referenced by Assembler::call().

void call ( const Operand &  adr)
void call ( Handle< Code code,
RelocInfo::Mode  rmode,
TypeFeedbackId  id = TypeFeedbackId::None() 
)
void call ( Label *  L)
void call ( Handle< Code target,
RelocInfo::Mode  rmode = RelocInfo::CODE_TARGET,
TypeFeedbackId  ast_id = TypeFeedbackId::None() 
)
void call ( Address  target)
void call ( Register  adr)
void call ( const Operand &  operand)
int CallSize ( const Operand &  adr)
int CallSize ( Handle< Code code,
RelocInfo::Mode  mode 
)
void cdp ( Coprocessor  coproc,
int  opcode_1,
CRegister  crd,
CRegister  crn,
CRegister  crm,
int  opcode_2,
Condition  cond = al 
)
void cdp2 ( Coprocessor  coproc,
int  opcode_1,
CRegister  crd,
CRegister  crn,
CRegister  crm,
int  opcode_2 
)
void cdq ( )
void cdq ( )
void ceil_l_d ( FPURegister  fd,
FPURegister  fs 
)
void ceil_l_s ( FPURegister  fd,
FPURegister  fs 
)
void ceil_w_d ( FPURegister  fd,
FPURegister  fs 
)
void ceil_w_s ( FPURegister  fd,
FPURegister  fs 
)
void cfc1 ( Register  rt,
FPUControlRegister  fs 
)
void CheckConstPool ( bool  force_emit,
bool  require_jump 
)
void CheckTrampolinePool ( )
void clc ( )
void cld ( )
void cld ( )
void ClearRecordedAstId ( )
inline

Definition at line 937 of file assembler-mips.h.

References TypeFeedbackId::None(), and Assembler::recorded_ast_id_.

void ClearRecordedAstId ( )
inline

Definition at line 1253 of file assembler-arm.h.

References TypeFeedbackId::None(), and Assembler::recorded_ast_id_.

void clz ( Register  rd,
Register  rs 
)
void clz ( Register  dst,
Register  src,
Condition  cond = al 
)
void cmn ( Register  src1,
const Operand &  src2,
Condition  cond = al 
)
void cmov ( Condition  cc,
Register  dst,
Register  src 
)
inline

Definition at line 735 of file assembler-ia32.h.

void cmov ( Condition  cc,
Register  dst,
const Operand &  src 
)
void cmovl ( Condition  cc,
Register  dst,
Register  src 
)
void cmovl ( Condition  cc,
Register  dst,
const Operand &  src 
)
void cmovq ( Condition  cc,
Register  dst,
Register  src 
)
void cmovq ( Condition  cc,
Register  dst,
const Operand &  src 
)
void cmp ( Register  reg,
int32_t  imm32 
)
void cmp ( Register  reg,
Handle< Object handle 
)
void cmp ( Register  reg0,
Register  reg1 
)
inline

Definition at line 777 of file assembler-ia32.h.

References Assembler::cmp().

Referenced by Assembler::cmp().

void cmp ( Register  reg,
const Operand &  op 
)
void cmp ( Register  reg,
const Immediate &  imm 
)
inline

Definition at line 779 of file assembler-ia32.h.

References Assembler::cmp().

Referenced by Assembler::cmp().

void cmp ( const Operand &  op,
const Immediate &  imm 
)
void cmp ( const Operand &  op,
Handle< Object handle 
)
void cmp ( Register  src1,
const Operand &  src2,
Condition  cond = al 
)

Referenced by Assembler::cmp().

void cmp ( Register  src1,
Register  src2,
Condition  cond = al 
)
inline

Definition at line 840 of file assembler-arm.h.

References Assembler::cmp().

void cmp_raw_immediate ( Register  src1,
int  raw_immediate,
Condition  cond = al 
)
void cmpb ( Register  reg,
int8_t  imm8 
)
inline

Definition at line 768 of file assembler-ia32.h.

References Assembler::cmpb().

Referenced by Assembler::cmpb().

void cmpb ( const Operand &  op,
int8_t  imm8 
)
void cmpb ( Register  reg,
const Operand &  op 
)
void cmpb ( const Operand &  op,
Register  reg 
)
void cmpb ( Register  dst,
Immediate  src 
)
inline

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

void cmpb ( Register  dst,
Register  src 
)
inline

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

void cmpb ( Register  dst,
const Operand &  src 
)
inline

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

void cmpb ( const Operand &  dst,
Register  src 
)
inline

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

void cmpb ( const Operand &  dst,
Immediate  src 
)
inline

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

void cmpb_al ( const Operand &  op)
void cmpb_al ( Immediate  src)
void cmpl ( Register  dst,
Register  src 
)
inline

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

void cmpl ( Register  dst,
const Operand &  src 
)
inline

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

void cmpl ( const Operand &  dst,
Register  src 
)
inline

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

void cmpl ( Register  dst,
Immediate  src 
)
inline

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

void cmpl ( const Operand &  dst,
Immediate  src 
)
inline

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

void cmpltsd ( XMMRegister  dst,
XMMRegister  src 
)
void cmpq ( Register  dst,
Register  src 
)
inline

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

void cmpq ( Register  dst,
const Operand &  src 
)
inline

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

void cmpq ( const Operand &  dst,
Register  src 
)
inline

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

void cmpq ( Register  dst,
Immediate  src 
)
inline

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

void cmpq ( const Operand &  dst,
Immediate  src 
)
inline

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

void cmpw ( const Operand &  op,
Immediate  imm16 
)
void cmpw ( const Operand &  dst,
Immediate  src 
)
inline

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

void cmpw ( Register  dst,
Immediate  src 
)
inline

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

void cmpw ( Register  dst,
const Operand &  src 
)
inline

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

void cmpw ( Register  dst,
Register  src 
)
inline

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

void cmpw ( const Operand &  dst,
Register  src 
)
inline

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

void cmpw_ax ( const Operand &  op)
Handle< Object > code_target_object_handle_at ( Address  pc)
inline

Definition at line 204 of file assembler-x64-inl.h.

References Memory::int32_at().

void CodeTargetAlign ( )
void CodeTargetAlign ( )
void CodeTargetAlign ( )
void CodeTargetAlign ( )
void cpuid ( )
void cpuid ( )
void cqo ( )
void ctc1 ( Register  rt,
FPUControlRegister  fs 
)
void cvt_d_l ( FPURegister  fd,
FPURegister  fs 
)
void cvt_d_s ( FPURegister  fd,
FPURegister  fs 
)
void cvt_d_w ( FPURegister  fd,
FPURegister  fs 
)
void cvt_l_d ( FPURegister  fd,
FPURegister  fs 
)
void cvt_l_s ( FPURegister  fd,
FPURegister  fs 
)
void cvt_s_d ( FPURegister  fd,
FPURegister  fs 
)
void cvt_s_l ( FPURegister  fd,
FPURegister  fs 
)
void cvt_s_w ( FPURegister  fd,
FPURegister  fs 
)
void cvt_w_d ( FPURegister  fd,
FPURegister  fs 
)
void cvt_w_s ( FPURegister  fd,
FPURegister  fs 
)
void cvtlsi2sd ( XMMRegister  dst,
const Operand &  src 
)
void cvtlsi2sd ( XMMRegister  dst,
Register  src 
)
void cvtlsi2ss ( XMMRegister  dst,
Register  src 
)
void cvtqsi2sd ( XMMRegister  dst,
const Operand &  src 
)
void cvtqsi2sd ( XMMRegister  dst,
Register  src 
)
void cvtsd2si ( Register  dst,
XMMRegister  src 
)
void cvtsd2si ( Register  dst,
XMMRegister  src 
)
void cvtsd2siq ( Register  dst,
XMMRegister  src 
)
void cvtsd2ss ( XMMRegister  dst,
XMMRegister  src 
)
void cvtsd2ss ( XMMRegister  dst,
XMMRegister  src 
)
void cvtsi2sd ( XMMRegister  dst,
Register  src 
)
inline

Definition at line 993 of file assembler-ia32.h.

References Assembler::cvtsi2sd().

Referenced by Assembler::cvtsi2sd().

void cvtsi2sd ( XMMRegister  dst,
const Operand &  src 
)
void cvtss2sd ( XMMRegister  dst,
XMMRegister  src 
)
void cvtss2sd ( XMMRegister  dst,
XMMRegister  src 
)
void cvtss2sd ( XMMRegister  dst,
const Operand &  src 
)
void cvttsd2si ( Register  dst,
const Operand &  src 
)
void cvttsd2si ( Register  dst,
const Operand &  src 
)
void cvttsd2si ( Register  dst,
XMMRegister  src 
)
void cvttsd2siq ( Register  dst,
XMMRegister  src 
)
void cvttss2si ( Register  dst,
const Operand &  src 
)
void cvttss2si ( Register  dst,
const Operand &  src 
)
void cvttss2si ( Register  dst,
XMMRegister  src 
)
void db ( uint8_t  data)
void db ( uint8_t  data)
void db ( uint8_t  data)
void db ( uint8_t  data)
void dd ( uint32_t  data)
void dd ( uint32_t  data)
void dd ( uint32_t  data)
void dd ( uint32_t  data)
void dec ( Register  dst)
void dec ( const Operand &  dst)
void dec_b ( Register  dst)
void dec_b ( const Operand &  dst)
void decb ( Register  dst)
void decb ( const Operand &  dst)
void decl ( Register  dst)
void decl ( const Operand &  dst)
void decq ( Register  dst)
void decq ( const Operand &  dst)
static void deserialization_set_special_target_at ( Address  instruction_payload,
Address  target 
)
inlinestatic
static void deserialization_set_special_target_at ( Address  instruction_payload,
Address  target 
)
inlinestatic

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

References Assembler::set_target_address_at().

static void deserialization_set_special_target_at ( Address  instruction_payload,
Address  target 
)
inlinestatic

Definition at line 610 of file assembler-ia32.h.

References Assembler::set_target_address_at().

void deserialization_set_special_target_at ( Address  constant_pool_entry,
Address  target 
)
inlinestatic

Definition at line 426 of file assembler-arm-inl.h.

References Memory::Address_at().

void div ( Register  rs,
Register  rt 
)
void div_d ( FPURegister  fd,
FPURegister  fs,
FPURegister  ft 
)
void divsd ( XMMRegister  dst,
XMMRegister  src 
)
void divsd ( XMMRegister  dst,
XMMRegister  src 
)
void divu ( Register  rs,
Register  rt 
)
void DoubleAsTwoUInt32 ( double  d,
uint32_t *  lo,
uint32_t *  hi 
)
protected
bool emit_debug_code ( ) const
inlineprotected

Definition at line 1036 of file assembler-mips.h.

bool emit_debug_code ( ) const
inlineprotected

Definition at line 1126 of file assembler-ia32.h.

bool emit_debug_code ( ) const
inlineprotected

Definition at line 1346 of file assembler-arm.h.

bool emit_debug_code ( ) const
inlineprotected

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

void emit_sse_operand ( XMMRegister  reg,
const Operand &  adr 
)
protected
void emit_sse_operand ( XMMRegister  dst,
XMMRegister  src 
)
protected
void emit_sse_operand ( Register  dst,
XMMRegister  src 
)
protected
void emit_sse_operand ( XMMRegister  dst,
XMMRegister  src 
)
void emit_sse_operand ( XMMRegister  reg,
const Operand &  adr 
)
void emit_sse_operand ( XMMRegister  dst,
Register  src 
)
void emit_sse_operand ( Register  dst,
XMMRegister  src 
)
void EndBlockConstPool ( )
inlineprotected
void EndBlockGrowBuffer ( )
inlineprotected

Definition at line 1086 of file assembler-mips.h.

References ASSERT.

Referenced by Assembler::BlockGrowBufferScope::~BlockGrowBufferScope().

void EndBlockTrampolinePool ( )
inlineprotected
void enter ( Immediate  size)
void enter ( const Immediate &  size)
void eor ( Register  dst,
Register  src1,
const Operand &  src2,
SBit  s = LeaveCC,
Condition  cond = al 
)
void ext_ ( Register  rt,
Register  rs,
uint16_t  pos,
uint16_t  size 
)
void extractps ( Register  dst,
XMMRegister  src,
byte  imm8 
)
void extractps ( Register  dst,
XMMRegister  src,
byte  imm8 
)
void f2xm1 ( )
void f2xm1 ( )
void fabs ( )
void fabs ( )
void fadd ( int  i)
void fadd ( int  i)
void faddp ( int  i = 1)
void faddp ( int  i = 1)
void fchs ( )
void fchs ( )
void fcmp ( FPURegister  src1,
const double  src2,
FPUCondition  cond 
)
void fcompp ( )
void fcompp ( )
void fcos ( )
void fcos ( )
void fdiv ( int  i)
void fdiv ( int  i)
void fdivp ( int  i = 1)
void fdivp ( int  i = 1)
void ffree ( int  i = 0)
void ffree ( int  i = 0)
void fild_d ( const Operand &  adr)
void fild_d ( const Operand &  adr)
void fild_s ( const Operand &  adr)
void fild_s ( const Operand &  adr)
void fincstp ( )
void fincstp ( )
void fist_s ( const Operand &  adr)
void fist_s ( const Operand &  adr)
void fistp_d ( const Operand &  adr)
void fistp_d ( const Operand &  adr)
void fistp_s ( const Operand &  adr)
void fistp_s ( const Operand &  adr)
void fisttp_d ( const Operand &  adr)
void fisttp_d ( const Operand &  adr)
void fisttp_s ( const Operand &  adr)
void fisttp_s ( const Operand &  adr)
void fisub_s ( const Operand &  adr)
void fisub_s ( const Operand &  adr)
void fld ( int  i)
void fld ( int  i)
void fld1 ( )
void fld1 ( )
void fld_d ( const Operand &  adr)
void fld_d ( const Operand &  adr)
void fld_s ( const Operand &  adr)
void fld_s ( const Operand &  adr)
void fldln2 ( )
void fldln2 ( )
void fldpi ( )
void fldpi ( )
void fldz ( )
void fldz ( )
void floor_l_d ( FPURegister  fd,
FPURegister  fs 
)
void floor_l_s ( FPURegister  fd,
FPURegister  fs 
)
void floor_w_d ( FPURegister  fd,
FPURegister  fs 
)
void floor_w_s ( FPURegister  fd,
FPURegister  fs 
)
void fmul ( int  i)
void fmul ( int  i)
void fmulp ( int  i = 1)
void fmulp ( int  i = 1)
void fnclex ( )
void fnclex ( )
void fninit ( )
void fninit ( )
void fnstsw_ax ( )
void fnstsw_ax ( )
void fprem ( )
void fprem ( )
void fprem1 ( )
void fprem1 ( )
void fptan ( )
void fptan ( )
void frndint ( )
void frndint ( )
void fscale ( )
void fscale ( )
void fsin ( )
void fsin ( )
void fst_d ( const Operand &  adr)
void fstp ( int  i)
void fstp ( int  index)
void fstp_d ( const Operand &  adr)
void fstp_d ( const Operand &  adr)
void fstp_s ( const Operand &  adr)
void fstp_s ( const Operand &  adr)
void fsub ( int  i)
void fsub ( int  i)
void fsubp ( int  i = 1)
void fsubp ( int  i = 1)
void fsubrp ( int  i = 1)
void fsubrp ( int  i = 1)
void ftst ( )
void ftst ( )
void fucomi ( int  i)
void fucomi ( int  i)
void fucomip ( )
void fucomip ( )
void fucomp ( int  i)
void fucomp ( int  i)
void fucompp ( )
void fucompp ( )
void fwait ( )
void fwait ( )
void fxch ( int  i = 1)
void fxch ( int  i = 1)
void fyl2x ( )
void fyl2x ( )
static int32_t GetBranchOffset ( Instr  instr)
static
static int GetBranchOffset ( Instr  instr)
static
static int GetCmpImmediateRawImmediate ( Instr  instr)
static
static Register GetCmpImmediateRegister ( Instr  instr)
static
void GetCode ( CodeDesc desc)
void GetCode ( CodeDesc desc)
void GetCode ( CodeDesc desc)
void GetCode ( CodeDesc desc)
static Condition GetCondition ( Instr  instr)
static
static uint32_t GetFunction ( Instr  instr)
static
static uint32_t GetFunctionField ( Instr  instr)
static
static uint32_t GetImmediate16 ( Instr  instr)
static
static uint32_t GetLabelConst ( Instr  instr)
static
static int GetLdrRegisterImmediateOffset ( Instr  instr)
static
static int16_t GetLwOffset ( Instr  instr)
static
static uint32_t GetOpcodeField ( Instr  instr)
static
static uint32_t GetRd ( Instr  instr)
static
static Register GetRd ( Instr  instr)
static
static uint32_t GetRdField ( Instr  instr)
static
static Register GetRdReg ( Instr  instr)
static
static Register GetRm ( Instr  instr)
static
static Register GetRn ( Instr  instr)
static
static uint32_t GetRs ( Instr  instr)
static
static uint32_t GetRsField ( Instr  instr)
static
static Register GetRsReg ( Instr  instr)
static
static uint32_t GetRt ( Instr  instr)
static
static uint32_t GetRtField ( Instr  instr)
static
static Register GetRtReg ( Instr  instr)
static
static uint32_t GetSa ( Instr  instr)
static
static uint32_t GetSaField ( Instr  instr)
static
bool has_exception ( ) const
inlineprotected

Definition at line 1070 of file assembler-mips.h.

void hlt ( )
void hlt ( )
void idiv ( Register  src)
void idivl ( Register  src)
void idivq ( Register  src)
bool ImmediateFitsAddrMode1Instruction ( int32_t  imm32)
void imul ( Register  src)
void imul ( Register  dst,
Register  src 
)
inline

Definition at line 795 of file assembler-ia32.h.

References Assembler::imul().

Referenced by Assembler::imul().

void imul ( Register  dst,
const Operand &  src 
)
void imul ( Register  dst,
Register  src,
int32_t  imm32 
)
void imul ( Register  src)
void imul ( Register  dst,
Register  src 
)
void imul ( Register  dst,
const Operand &  src 
)
void imul ( Register  dst,
Register  src,
Immediate  imm 
)
void imull ( Register  dst,
Register  src 
)
void imull ( Register  dst,
const Operand &  src 
)
void imull ( Register  dst,
Register  src,
Immediate  imm 
)
void inc ( Register  dst)
void inc ( const Operand &  dst)
void incl ( Register  dst)
void incl ( const Operand &  dst)
void incq ( Register  dst)
void incq ( const Operand &  dst)
INLINE ( static Address   target_pointer_address_atAddress pc)
INLINE ( static Address   target_pointer_atAddress pc)
INLINE ( static void   set_target_pointer_atAddress pc, Address target)
INLINE ( static Address   target_address_atAddress pc)
INLINE ( static void   set_target_address_atAddress pc, Address target)
INLINE ( static Address   target_address_from_return_addressAddress pc)
INLINE ( static Address   return_address_from_call_startAddress pc)
void ins_ ( Register  rt,
Register  rs,
uint16_t  pos,
uint16_t  size 
)
static Instr instr_at ( byte pc)
inlinestatic

Definition at line 967 of file assembler-mips.h.

References v8::internal::pc.

Instr instr_at ( int  pos)
inline

Definition at line 971 of file assembler-mips.h.

static Instr instr_at ( byte pc)
inlinestatic

Definition at line 1294 of file assembler-arm.h.

References v8::internal::pc.

static void instr_at_put ( byte pc,
Instr  instr 
)
inlinestatic

Definition at line 968 of file assembler-mips.h.

References v8::internal::pc.

void instr_at_put ( int  pos,
Instr  instr 
)
inline

Definition at line 972 of file assembler-mips.h.

void instr_at_put ( int  pos,
Instr  instr 
)
inline
static void instr_at_put ( byte pc,
Instr  instr 
)
inlinestatic

Definition at line 1295 of file assembler-arm.h.

References v8::internal::pc.

int InstructionsGeneratedSince ( Label *  label)
inline
int InstructionsGeneratedSince ( Label *  label)
inline
void int3 ( )
void int3 ( )
bool is_buffer_growth_blocked ( ) const
inlineprotected

Definition at line 1091 of file assembler-mips.h.

bool is_const_pool_blocked ( ) const
inlineprotected

Definition at line 1383 of file assembler-arm.h.

References Assembler::pc_offset().

bool is_near ( Label *  L)
bool is_trampoline_emitted ( ) const
inlineprotected

Definition at line 1076 of file assembler-mips.h.

bool is_trampoline_pool_blocked ( ) const
inlineprotected

Definition at line 1066 of file assembler-mips.h.

static bool IsAddImmediate ( Instr  instr)
static
static bool IsAddRegisterImmediate ( Instr  instr)
static
static bool IsAndImmediate ( Instr  instr)
static
static bool IsBeq ( Instr  instr)
static
static bool IsBne ( Instr  instr)
static
static bool IsBranch ( Instr  instr)
static
static bool IsBranch ( Instr  instr)
static
static bool IsCmpImmediate ( Instr  instr)
static
static bool IsCmpRegister ( Instr  instr)
static
static bool IsJ ( Instr  instr)
static
static bool IsJal ( Instr  instr)
static
static bool IsJalr ( Instr  instr)
static
static bool IsJr ( Instr  instr)
static
static bool IsJump ( Instr  instr)
static
static bool IsLdrRegFpNegOffset ( Instr  instr)
static
static bool IsLdrRegFpOffset ( Instr  instr)
static
static bool IsLdrRegisterImmediate ( Instr  instr)
static
static bool IsLui ( Instr  instr)
static
static bool IsLw ( Instr  instr)
static
static bool IsLwRegFpNegOffset ( Instr  instr)
static
static bool IsLwRegFpOffset ( Instr  instr)
static
static bool IsMovT ( Instr  instr)
static
static bool IsMovW ( Instr  instr)
static
static bool IsNop ( Instr  instr,
unsigned int  type 
)
static
static bool IsNop ( Address  addr)
static
static bool IsNop ( Instr  instr,
int  type = NON_MARKING_NOP 
)
static
static bool IsNop ( Address  addr)
static
static bool IsOri ( Instr  instr)
static
static bool IsPop ( Instr  instr)
static
static bool IsPop ( Instr  instr)
static
static bool IsPush ( Instr  instr)
static
static bool IsPush ( Instr  instr)
static
static bool IsStrRegFpNegOffset ( Instr  instr)
static
static bool IsStrRegFpOffset ( Instr  instr)
static
static bool IsStrRegisterImmediate ( Instr  instr)
static
static bool IsSw ( Instr  instr)
static
static bool IsSwRegFpNegOffset ( Instr  instr)
static
static bool IsSwRegFpOffset ( Instr  instr)
static
static bool IsTstImmediate ( Instr  instr)
static
void j ( int32_t  target)
void j ( Condition  cc,
Label *  L,
Label::Distance  distance = Label::kFar 
)
void j ( Condition  cc,
byte entry,
RelocInfo::Mode  rmode 
)
void j ( Condition  cc,
Handle< Code code 
)
void j ( Condition  cc,
Label *  L,
Label::Distance  distance = Label::kFar 
)
void j ( Condition  cc,
Handle< Code target,
RelocInfo::Mode  rmode 
)
void j_or_jr ( int32_t  target,
Register  rs 
)
void jal ( int32_t  target)
void jal_or_jalr ( int32_t  target,
Register  rs 
)
void jalr ( Register  rs,
Register  rd = ra 
)
void jmp ( Label *  L,
Label::Distance  distance = Label::kFar 
)
void jmp ( byte entry,
RelocInfo::Mode  rmode 
)
void jmp ( Register  reg)
inline

Definition at line 903 of file assembler-ia32.h.

References Assembler::jmp().

Referenced by Assembler::jmp().

void jmp ( const Operand &  adr)
void jmp ( Handle< Code code,
RelocInfo::Mode  rmode 
)
void jmp ( Label *  L)
inline

Definition at line 1186 of file assembler-arm.h.

References v8::internal::al, and Assembler::b().

void jmp ( Label *  L,
Label::Distance  distance = Label::kFar 
)
void jmp ( Handle< Code target,
RelocInfo::Mode  rmode 
)
void jmp ( Register  adr)
void jmp ( const Operand &  src)
void jr ( Register  target)
uint32_t jump_address ( Label *  L)
static void JumpLabelToJumpRegister ( Address  pc)
static
void label_at_put ( Label *  L,
int  at_offset 
)
void label_at_put ( Label *  L,
int  at_offset 
)
void lb ( Register  rd,
const MemOperand rs 
)
void lbu ( Register  rd,
const MemOperand rs 
)
void ldc ( Coprocessor  coproc,
CRegister  crd,
const MemOperand src,
LFlag  l = Short,
Condition  cond = al 
)
void ldc ( Coprocessor  coproc,
CRegister  crd,
Register  base,
int  option,
LFlag  l = Short,
Condition  cond = al 
)
void ldc1 ( FPURegister  fd,
const MemOperand src 
)
void ldc2 ( Coprocessor  coproc,
CRegister  crd,
const MemOperand src,
LFlag  l = Short 
)
void ldc2 ( Coprocessor  coproc,
CRegister  crd,
Register  base,
int  option,
LFlag  l = Short 
)
void ldm ( BlockAddrMode  am,
Register  base,
RegList  dst,
Condition  cond = al 
)

Referenced by MacroAssembler::Pop().

void ldr ( Register  dst,
const MemOperand src,
Condition  cond = al 
)
void ldrb ( Register  dst,
const MemOperand src,
Condition  cond = al 
)
void ldrd ( Register  dst1,
Register  dst2,
const MemOperand src,
Condition  cond = al 
)
void ldrh ( Register  dst,
const MemOperand src,
Condition  cond = al 
)
void ldrsb ( Register  dst,
const MemOperand src,
Condition  cond = al 
)
void ldrsh ( Register  dst,
const MemOperand src,
Condition  cond = al 
)
void lea ( Register  dst,
const Operand &  src 
)
void lea ( Register  dst,
const Operand &  src 
)
void leal ( Register  dst,
const Operand &  src 
)
void leave ( )
void leave ( )
void lh ( Register  rd,
const MemOperand rs 
)
void lhu ( Register  rd,
const MemOperand rs 
)
void load_rax ( void *  ptr,
RelocInfo::Mode  rmode 
)
void load_rax ( ExternalReference  ext)
void lui ( Register  rd,
int32_t  j 
)
void lwc1 ( FPURegister  fd,
const MemOperand src 
)
void lwl ( Register  rd,
const MemOperand rs 
)
void lwr ( Register  rd,
const MemOperand rs 
)
void mcr ( Coprocessor  coproc,
int  opcode_1,
Register  rd,
CRegister  crn,
CRegister  crm,
int  opcode_2 = 0,
Condition  cond = al 
)
void mcr2 ( Coprocessor  coproc,
int  opcode_1,
Register  rd,
CRegister  crn,
CRegister  crm,
int  opcode_2 = 0 
)
void mfc1 ( Register  rt,
FPURegister  fs 
)

Referenced by MacroAssembler::Move().

void mfhi ( Register  rd)
void mflo ( Register  rd)
void mla ( Register  dst,
Register  src1,
Register  src2,
Register  srcA,
SBit  s = LeaveCC,
Condition  cond = al 
)
void mls ( Register  dst,
Register  src1,
Register  src2,
Register  srcA,
Condition  cond = al 
)
void mov ( Register  dst,
int32_t  imm32 
)
void mov ( Register  dst,
const Immediate &  x 
)
void mov ( Register  dst,
Handle< Object handle 
)
void mov ( Register  dst,
const Operand &  src 
)
void mov ( Register  dst,
Register  src 
)
void mov ( const Operand &  dst,
const Immediate &  x 
)
void mov ( const Operand &  dst,
Handle< Object handle 
)
void mov ( const Operand &  dst,
Register  src 
)
void mov ( Register  dst,
const Operand &  src,
SBit  s = LeaveCC,
Condition  cond = al 
)

Referenced by Assembler::mov().

void mov ( Register  dst,
Register  src,
SBit  s = LeaveCC,
Condition  cond = al 
)
inline

Definition at line 856 of file assembler-arm.h.

References Assembler::mov().

void mov_b ( Register  dst,
Register  src 
)
inline

Definition at line 704 of file assembler-ia32.h.

References Assembler::mov_b().

Referenced by Assembler::mov_b().

void mov_b ( Register  dst,
const Operand &  src 
)
void mov_b ( Register  dst,
int8_t  imm8 
)
inline

Definition at line 706 of file assembler-ia32.h.

References Assembler::mov_b().

Referenced by Assembler::mov_b().

void mov_b ( const Operand &  dst,
int8_t  imm8 
)
void mov_b ( const Operand &  dst,
Register  src 
)
void mov_d ( FPURegister  fd,
FPURegister  fs 
)

Referenced by MacroAssembler::Move().

void mov_w ( Register  dst,
const Operand &  src 
)
void mov_w ( const Operand &  dst,
Register  src 
)
void movapd ( XMMRegister  dst,
XMMRegister  src 
)
void movaps ( XMMRegister  dst,
XMMRegister  src 
)
void movaps ( XMMRegister  dst,
XMMRegister  src 
)
void movb ( Register  dst,
const Operand &  src 
)
void movb ( Register  dst,
Immediate  imm 
)
void movb ( const Operand &  dst,
Register  src 
)
void movd ( XMMRegister  dst,
Register  src 
)
inline

Definition at line 1037 of file assembler-ia32.h.

References Assembler::movd().

Referenced by Assembler::movd().

void movd ( XMMRegister  dst,
const Operand &  src 
)
void movd ( Register  dst,
XMMRegister  src 
)
inline

Definition at line 1039 of file assembler-ia32.h.

References Assembler::movd().

Referenced by Assembler::movd().

void movd ( const Operand &  dst,
XMMRegister  src 
)
void movd ( XMMRegister  dst,
Register  src 
)
void movd ( Register  dst,
XMMRegister  src 
)
void movdbl ( XMMRegister  dst,
const Operand &  src 
)
void movdbl ( const Operand &  dst,
XMMRegister  src 
)
void movdqa ( XMMRegister  dst,
const Operand &  src 
)
void movdqa ( const Operand &  dst,
XMMRegister  src 
)
void movdqa ( const Operand &  dst,
XMMRegister  src 
)
void movdqa ( XMMRegister  dst,
const Operand &  src 
)
void movdqu ( XMMRegister  dst,
const Operand &  src 
)
void movdqu ( const Operand &  dst,
XMMRegister  src 
)
void movf ( Register  rd,
Register  rs,
uint16_t  cc = 0 
)
void movl ( Register  dst,
Register  src 
)
void movl ( Register  dst,
const Operand &  src 
)
void movl ( const Operand &  dst,
Register  src 
)
void movl ( const Operand &  dst,
Immediate  imm 
)
void movl ( Register  dst,
Immediate  imm32 
)
void movl ( const Operand &  dst,
Label *  src 
)
void movmskpd ( Register  dst,
XMMRegister  src 
)
void movmskpd ( Register  dst,
XMMRegister  src 
)
void movn ( Register  rd,
Register  rs,
Register  rt 
)
void movntdq ( const Operand &  dst,
XMMRegister  src 
)
void movntdqa ( XMMRegister  dst,
const Operand &  src 
)
void movq ( Register  dst,
const Operand &  src 
)
void movq ( Register  dst,
Register  src 
)
void movq ( Register  dst,
Immediate  x 
)
void movq ( const Operand &  dst,
Immediate  value 
)
void movq ( Register  dst,
void *  ptr,
RelocInfo::Mode  rmode 
)
void movq ( Register  dst,
int64_t  value,
RelocInfo::Mode  rmode 
)
void movq ( Register  dst,
const char *  s,
RelocInfo::Mode  rmode 
)
void movq ( Register  dst,
ExternalReference  ext 
)
void movq ( Register  dst,
Handle< Object handle,
RelocInfo::Mode  rmode 
)
void movq ( XMMRegister  dst,
Register  src 
)
void movq ( Register  dst,
XMMRegister  src 
)
void movq ( XMMRegister  dst,
XMMRegister  src 
)
void movsd ( XMMRegister  dst,
XMMRegister  src 
)
void movsd ( XMMRegister  dst,
const Operand &  src 
)
protected
void movsd ( const Operand &  dst,
XMMRegister  src 
)
protected
void movsd ( XMMRegister  dst,
XMMRegister  src 
)
void movsd ( const Operand &  dst,
XMMRegister  src 
)
void movsd ( XMMRegister  dst,
const Operand &  src 
)
void movss ( XMMRegister  dst,
const Operand &  src 
)
void movss ( const Operand &  dst,
XMMRegister  src 
)
void movss ( XMMRegister  dst,
XMMRegister  src 
)
void movss ( XMMRegister  dst,
const Operand &  src 
)
void movss ( const Operand &  dst,
XMMRegister  src 
)
void movsx_b ( Register  dst,
Register  src 
)
inline

Definition at line 722 of file assembler-ia32.h.

References Assembler::movsx_b().

Referenced by Assembler::movsx_b().

void movsx_b ( Register  dst,
const Operand &  src 
)
void movsx_w ( Register  dst,
Register  src 
)
inline

Definition at line 725 of file assembler-ia32.h.

References Assembler::movsx_w().

Referenced by Assembler::movsx_w().

void movsx_w ( Register  dst,
const Operand &  src 
)
void movsxbq ( Register  dst,
const Operand &  src 
)
void movsxlq ( Register  dst,
Register  src 
)
void movsxlq ( Register  dst,
const Operand &  src 
)
void movsxwq ( Register  dst,
const Operand &  src 
)
void movt ( Register  rd,
Register  rs,
uint16_t  cc = 0 
)
void movt ( Register  reg,
uint32_t  immediate,
Condition  cond = al 
)
void movw ( const Operand &  dst,
Register  src 
)
void movw ( Register  reg,
uint32_t  immediate,
Condition  cond = al 
)
void movz ( Register  rd,
Register  rs,
Register  rt 
)
void movzx_b ( Register  dst,
Register  src 
)
inline

Definition at line 728 of file assembler-ia32.h.

References Assembler::movzx_b().

Referenced by Assembler::movzx_b().

void movzx_b ( Register  dst,
const Operand &  src 
)
void movzx_w ( Register  dst,
Register  src 
)
inline

Definition at line 731 of file assembler-ia32.h.

References Assembler::movzx_w().

Referenced by Assembler::movzx_w().

void movzx_w ( Register  dst,
const Operand &  src 
)
void movzxbl ( Register  dst,
const Operand &  src 
)
void movzxbq ( Register  dst,
const Operand &  src 
)
void movzxwl ( Register  dst,
const Operand &  src 
)
void movzxwq ( Register  dst,
const Operand &  src 
)
void mrc ( Coprocessor  coproc,
int  opcode_1,
Register  rd,
CRegister  crn,
CRegister  crm,
int  opcode_2 = 0,
Condition  cond = al 
)
void mrc2 ( Coprocessor  coproc,
int  opcode_1,
Register  rd,
CRegister  crn,
CRegister  crm,
int  opcode_2 = 0 
)
void mrs ( Register  dst,
SRegister  s,
Condition  cond = al 
)
void msr ( SRegisterFieldMask  fields,
const Operand &  src,
Condition  cond = al 
)
void mtc1 ( Register  rt,
FPURegister  fs 
)

Referenced by MacroAssembler::Move().

void mul ( Register  rd,
Register  rs,
Register  rt 
)
void mul ( Register  src)
void mul ( Register  dst,
Register  src1,
Register  src2,
SBit  s = LeaveCC,
Condition  cond = al 
)
void mul ( Register  src)
void mul_d ( FPURegister  fd,
FPURegister  fs,
FPURegister  ft 
)
void mulsd ( XMMRegister  dst,
XMMRegister  src 
)
void mulsd ( XMMRegister  dst,
XMMRegister  src 
)
void mult ( Register  rs,
Register  rt 
)
void multu ( Register  rs,
Register  rt 
)
bool MustUseReg ( RelocInfo::Mode  rmode)
protected
void mvn ( Register  dst,
const Operand &  src,
SBit  s = LeaveCC,
Condition  cond = al 
)
void neg ( Register  dst)
void neg ( Register  dst)
void neg ( const Operand &  dst)
void neg_d ( FPURegister  fd,
FPURegister  fs 
)
void negl ( Register  dst)
void Nop ( int  bytes = 1)
void nop ( unsigned int  type = 0)
inline

Definition at line 678 of file assembler-mips.h.

References ASSERT, and Assembler::sll().

void Nop ( int  bytes = 1)
void nop ( )
void nop ( int  type = 0)
void nop ( )
void nor ( Register  rd,
Register  rs,
Register  rt 
)
void not_ ( Register  dst)
void not_ ( Register  dst)
void not_ ( const Operand &  dst)
void notl ( Register  dst)
void or_ ( Register  rd,
Register  rs,
Register  rt 
)
void or_ ( Register  dst,
int32_t  imm32 
)

Referenced by MacroAssembler::mov().

void or_ ( Register  dst,
Register  src 
)
inline

Definition at line 812 of file assembler-ia32.h.

References Assembler::or_().

Referenced by Assembler::or_().

void or_ ( Register  dst,
const Operand &  src 
)
void or_ ( const Operand &  dst,
Register  src 
)
void or_ ( Register  dst,
const Immediate &  imm 
)
inline

Definition at line 815 of file assembler-ia32.h.

References Assembler::or_().

Referenced by Assembler::or_().

void or_ ( const Operand &  dst,
const Immediate &  x 
)
void or_ ( Register  dst,
Register  src 
)
inline

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

void or_ ( Register  dst,
const Operand &  src 
)
inline

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

void or_ ( const Operand &  dst,
Register  src 
)
inline

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

void or_ ( Register  dst,
Immediate  src 
)
inline

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

void or_ ( const Operand &  dst,
Immediate  src 
)
inline

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

void ori ( Register  rd,
Register  rs,
int32_t  j 
)
void orl ( Register  dst,
Register  src 
)
inline

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

void orl ( Register  dst,
const Operand &  src 
)
inline

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

void orl ( Register  dst,
Immediate  src 
)
inline

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

void orl ( const Operand &  dst,
Immediate  src 
)
inline

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

void orpd ( XMMRegister  dst,
XMMRegister  src 
)
void orpd ( XMMRegister  dst,
XMMRegister  src 
)
void orr ( Register  dst,
Register  src1,
const Operand &  src2,
SBit  s = LeaveCC,
Condition  cond = al 
)

Referenced by Assembler::orr().

void orr ( Register  dst,
Register  src1,
Register  src2,
SBit  s = LeaveCC,
Condition  cond = al 
)
inline

Definition at line 849 of file assembler-arm.h.

References Assembler::orr().

bool overflow ( ) const
inline

Definition at line 961 of file assembler-mips.h.

bool overflow ( ) const
inline

Definition at line 1105 of file assembler-ia32.h.

void pand ( XMMRegister  dst,
XMMRegister  src 
)
int32_t pc_offset ( ) const
inline

Definition at line 950 of file assembler-mips.h.

int pc_offset ( ) const
inline

Definition at line 1100 of file assembler-ia32.h.

int pc_offset ( ) const
inline

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

void pcmpeqd ( XMMRegister  dst,
XMMRegister  src 
)
void pextrd ( Register  dst,
XMMRegister  src,
int8_t  offset 
)
inline

Definition at line 1058 of file assembler-ia32.h.

void pextrd ( const Operand &  dst,
XMMRegister  src,
int8_t  offset 
)
void pinsrd ( XMMRegister  dst,
Register  src,
int8_t  offset 
)
inline

Definition at line 1062 of file assembler-ia32.h.

void pinsrd ( XMMRegister  dst,
const Operand &  src,
int8_t  offset 
)
void pop ( Register  dst)
void pop ( const Operand &  dst)
void pop ( Register  dst)
void pop ( const Operand &  dst)
void pop ( Register  dst,
Condition  cond = al 
)
inline

Definition at line 1177 of file assembler-arm.h.

References Assembler::ldr(), v8::internal::PostIndex, and v8::internal::sp.

void pop ( )
inline

Definition at line 1181 of file assembler-arm.h.

References Assembler::add(), v8::internal::kPointerSize, and v8::internal::sp.

void popad ( )
void popfd ( )
void popfq ( )
void por ( XMMRegister  dst,
XMMRegister  src 
)
PositionsRecorder* positions_recorder ( )
inline

Definition at line 952 of file assembler-mips.h.

PositionsRecorder* positions_recorder ( )
inline

Definition at line 1112 of file assembler-ia32.h.

PositionsRecorder* positions_recorder ( )
inline
PositionsRecorder* positions_recorder ( )
inline

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

bool predictable_code_size ( ) const
inlineprotected

Definition at line 1127 of file assembler-ia32.h.

bool predictable_code_size ( ) const
inline
bool predictable_code_size ( ) const
inlineprotected

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

void prefetch ( const Operand &  src,
int  level 
)
void Print ( )
void Print ( )
void pshufd ( XMMRegister  dst,
XMMRegister  src,
int8_t  shuffle 
)
void psllq ( XMMRegister  reg,
int8_t  shift 
)
void psllq ( XMMRegister  dst,
XMMRegister  src 
)
void psrlq ( XMMRegister  reg,
int8_t  shift 
)
void psrlq ( XMMRegister  dst,
XMMRegister  src 
)
void ptest ( XMMRegister  dst,
XMMRegister  src 
)
void push ( Immediate  value)
void push ( Register  src)
void push ( const Operand &  src)
void push ( const Immediate &  x)
void push ( Register  src)
void push ( const Operand &  src)
void push ( Register  src,
Condition  cond = al 
)
inline

Definition at line 1173 of file assembler-arm.h.

References v8::internal::NegPreIndex, v8::internal::sp, and Assembler::str().

void push_imm32 ( int32_t  imm32)
void push_imm32 ( int32_t  imm32)
void pushad ( )
void pushfd ( )
void pushfq ( )
void pxor ( XMMRegister  dst,
XMMRegister  src 
)
static void QuietNaN ( HeapObject nan)
static
void rcl ( Register  dst,
uint8_t  imm8 
)
void rcl ( Register  dst,
Immediate  imm8 
)
inline

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

void rcr ( Register  dst,
uint8_t  imm8 
)
void rcr ( Register  dst,
Immediate  imm8 
)
inline

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

void rdtsc ( )
void rdtsc ( )
void RecordComment ( const char *  msg)
void RecordComment ( const char *  msg,
bool  force = false 
)
void RecordComment ( const char *  msg)
void RecordComment ( const char *  msg,
bool  force = false 
)
void RecordConstPool ( int  size)
void RecordDebugBreakSlot ( )
void RecordDebugBreakSlot ( )
void RecordDebugBreakSlot ( )
void RecordDebugBreakSlot ( )
TypeFeedbackId RecordedAstId ( )
inline

Definition at line 932 of file assembler-mips.h.

References ASSERT, TypeFeedbackId::IsNone(), and Assembler::recorded_ast_id_.

TypeFeedbackId RecordedAstId ( )
inline

Definition at line 1248 of file assembler-arm.h.

References ASSERT, TypeFeedbackId::IsNone(), and Assembler::recorded_ast_id_.

void RecordJSReturn ( )
void RecordJSReturn ( )
void RecordJSReturn ( )
void RecordJSReturn ( )
void RecordRelocInfo ( RelocInfo::Mode  rmode,
intptr_t  data = 0 
)
protected
static int RelocateInternalReference ( byte pc,
intptr_t  pc_delta 
)
static
int relocation_writer_size ( )
inline

Definition at line 1114 of file assembler-ia32.h.

void rep_movs ( )
void rep_stos ( )
void repmovsb ( )
void repmovsl ( )
void repmovsq ( )
void repmovsw ( )
void ret ( int  imm16)
void ret ( int  imm16)
void rol ( Register  dst,
Immediate  imm8 
)
inline

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

void ror ( Register  dst,
Immediate  imm8 
)
inline

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

void rotr ( Register  rd,
Register  rt,
uint16_t  sa 
)
void rotrv ( Register  rd,
Register  rt,
Register  rs 
)
void round_l_d ( FPURegister  fd,
FPURegister  fs 
)
void round_l_s ( FPURegister  fd,
FPURegister  fs 
)
void round_w_d ( FPURegister  fd,
FPURegister  fs 
)
void round_w_s ( FPURegister  fd,
FPURegister  fs 
)
void roundsd ( XMMRegister  dst,
XMMRegister  src,
RoundingMode  mode 
)
void roundsd ( XMMRegister  dst,
XMMRegister  src,
RoundingMode  mode 
)
void rsb ( Register  dst,
Register  src1,
const Operand &  src2,
SBit  s = LeaveCC,
Condition  cond = al 
)
void rsc ( Register  dst,
Register  src1,
const Operand &  src2,
SBit  s = LeaveCC,
Condition  cond = al 
)
void sahf ( )
void sahf ( )
void sar ( Register  dst,
uint8_t  imm8 
)
void sar ( Register  dst,
Immediate  shift_amount 
)
inline

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

void sar_cl ( Register  dst)
void sar_cl ( Register  dst)
inline

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

void sarl ( Register  dst,
Immediate  shift_amount 
)
inline

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

void sarl_cl ( Register  dst)
inline

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

void sb ( Register  rd,
const MemOperand rs 
)
void sbb ( Register  dst,
const Operand &  src 
)
void sbbl ( Register  dst,
Register  src 
)
inline

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

void sbbq ( Register  dst,
Register  src 
)
inline

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

void sbc ( Register  dst,
Register  src1,
const Operand &  src2,
SBit  s = LeaveCC,
Condition  cond = al 
)
void sbfx ( Register  dst,
Register  src,
int  lsb,
int  width,
Condition  cond = al 
)
void sdc1 ( FPURegister  fs,
const MemOperand dst 
)
void sdiv ( Register  dst,
Register  src1,
Register  src2,
Condition  cond = al 
)
void set_byte_at ( int  pos,
byte  value 
)
inline

Definition at line 1123 of file assembler-ia32.h.

void set_byte_at ( int  pos,
byte  value 
)
inline

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

void set_emit_debug_code ( bool  value)
inline

Definition at line 529 of file assembler-mips.h.

void set_emit_debug_code ( bool  value)
inline

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

void set_emit_debug_code ( bool  value)
inline

Definition at line 588 of file assembler-ia32.h.

void set_emit_debug_code ( bool  value)
inline

Definition at line 653 of file assembler-arm.h.

Referenced by FullCodeGenerator::Initialize().

static void set_external_target_at ( Address  instruction_payload,
Address  target 
)
inlinestatic

Definition at line 597 of file assembler-mips.h.

References Assembler::set_target_address_at().

static void set_external_target_at ( Address  instruction_payload,
Address  target 
)
inlinestatic

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

static void set_external_target_at ( Address  instruction_payload,
Address  target 
)
inlinestatic

Definition at line 617 of file assembler-ia32.h.

References Assembler::set_target_address_at().

void set_external_target_at ( Address  constant_pool_entry,
Address  target 
)
inlinestatic

Definition at line 432 of file assembler-arm-inl.h.

References Memory::Address_at().

void set_predictable_code_size ( bool  value)
inline

Definition at line 532 of file assembler-mips.h.

void set_predictable_code_size ( bool  value)
inline

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

void set_predictable_code_size ( bool  value)
inline

Definition at line 593 of file assembler-ia32.h.

void set_predictable_code_size ( bool  value)
inline
static void set_target_address_at ( Address  pc,
Address  target 
)
static
static void set_target_address_at ( Address  pc,
Address  target 
)
inlinestatic
void set_target_address_at ( Address  pc,
Address  target 
)
inlinestatic
static Instr SetAddImmediateOffset ( Instr  instr,
int16_t  offset 
)
static
static Instr SetAddRegisterImmediateOffset ( Instr  instr,
int  offset 
)
static
void setcc ( Condition  cc,
Register  reg 
)
void setcc ( Condition  cc,
Register  reg 
)
static Instr SetLdrRegisterImmediateOffset ( Instr  instr,
int  offset 
)
static
static Instr SetLwOffset ( Instr  instr,
int16_t  offset 
)
static
void SetRecordedAstId ( TypeFeedbackId  ast_id)
inline

Definition at line 927 of file assembler-mips.h.

References ASSERT, TypeFeedbackId::IsNone(), and Assembler::recorded_ast_id_.

void SetRecordedAstId ( TypeFeedbackId  ast_id)
inline

Definition at line 1243 of file assembler-arm.h.

References ASSERT, TypeFeedbackId::IsNone(), and Assembler::recorded_ast_id_.

static Instr SetStrRegisterImmediateOffset ( Instr  instr,
int  offset 
)
static
static Instr SetSwOffset ( Instr  instr,
int16_t  offset 
)
static
void sh ( Register  rd,
const MemOperand rs 
)
int32_t shifted_branch_offset ( Label *  L,
bool  jump_elimination_allowed 
)
inline

Definition at line 562 of file assembler-mips.h.

References ASSERT, and Assembler::branch_offset().

void shl ( Register  dst,
uint8_t  imm8 
)
void shl ( Register  dst,
Immediate  shift_amount 
)
inline

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

void shl_cl ( Register  dst)
void shl_cl ( Register  dst)
inline

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

void shld ( Register  dst,
Register  src 
)
inline

Definition at line 826 of file assembler-ia32.h.

References Assembler::shld().

Referenced by Assembler::shld().

void shld ( Register  dst,
const Operand &  src 
)
void shld ( Register  dst,
Register  src 
)
void shll ( Register  dst,
Immediate  shift_amount 
)
inline

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

void shll_cl ( Register  dst)
inline

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

void shr ( Register  dst,
uint8_t  imm8 
)
void shr ( Register  dst,
Immediate  shift_amount 
)
inline

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

void shr_cl ( Register  dst)
void shr_cl ( Register  dst)
inline

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

void shrd ( Register  dst,
Register  src 
)
inline

Definition at line 832 of file assembler-ia32.h.

References Assembler::shrd().

Referenced by Assembler::shrd().

void shrd ( Register  dst,
const Operand &  src 
)
void shrd ( Register  dst,
Register  src 
)
void shrl ( Register  dst,
Immediate  shift_amount 
)
inline

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

void shrl_cl ( Register  dst)
inline

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

int SizeOfCodeGeneratedSince ( Label *  label)
inline

Definition at line 873 of file assembler-mips.h.

References Assembler::pc_offset().

int SizeOfCodeGeneratedSince ( Label *  label)
inline

Definition at line 1080 of file assembler-ia32.h.

References Assembler::pc_offset().

int SizeOfCodeGeneratedSince ( Label *  label)
inline

Definition at line 1205 of file assembler-arm.h.

References Assembler::pc_offset().

Referenced by Assembler::InstructionsGeneratedSince().

int SizeOfCodeGeneratedSince ( Label *  label)
inline

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

References Assembler::pc_offset().

void sll ( Register  rd,
Register  rt,
uint16_t  sa,
bool  coming_from_nop = false 
)

Referenced by Assembler::nop().

void sllv ( Register  rd,
Register  rt,
Register  rs 
)
void slt ( Register  rd,
Register  rs,
Register  rt 
)
void slti ( Register  rd,
Register  rs,
int32_t  j 
)
void sltiu ( Register  rd,
Register  rs,
int32_t  j 
)
void sltu ( Register  rd,
Register  rs,
Register  rt 
)
void smlal ( Register  dstL,
Register  dstH,
Register  src1,
Register  src2,
SBit  s = LeaveCC,
Condition  cond = al 
)
void smull ( Register  dstL,
Register  dstH,
Register  src1,
Register  src2,
SBit  s = LeaveCC,
Condition  cond = al 
)
void sqrt_d ( FPURegister  fd,
FPURegister  fs 
)
void sqrtsd ( XMMRegister  dst,
XMMRegister  src 
)
void sqrtsd ( XMMRegister  dst,
XMMRegister  src 
)
void sra ( Register  rt,
Register  rd,
uint16_t  sa 
)
void srav ( Register  rt,
Register  rd,
Register  rs 
)
void srl ( Register  rd,
Register  rt,
uint16_t  sa 
)
void srlv ( Register  rd,
Register  rt,
Register  rs 
)
void StartBlockConstPool ( )
inlineprotected
void StartBlockGrowBuffer ( )
inlineprotected

Definition at line 1081 of file assembler-mips.h.

References ASSERT.

Referenced by Assembler::BlockGrowBufferScope::BlockGrowBufferScope().

void StartBlockTrampolinePool ( )
inlineprotected
void stm ( BlockAddrMode  am,
Register  base,
RegList  src,
Condition  cond = al 
)

Referenced by MacroAssembler::Push().

void stop ( const char *  msg,
uint32_t  code = kMaxStopCode 
)
void stop ( const char *  msg,
Condition  cond = al,
int32_t  code = kDefaultStopCode 
)
void store_rax ( void *  dst,
RelocInfo::Mode  mode 
)
void store_rax ( ExternalReference  ref)
void stos ( )
void str ( Register  src,
const MemOperand dst,
Condition  cond = al 
)
void strb ( Register  src,
const MemOperand dst,
Condition  cond = al 
)
void strd ( Register  src1,
Register  src2,
const MemOperand dst,
Condition  cond = al 
)
void strh ( Register  src,
const MemOperand dst,
Condition  cond = al 
)
void sub ( Register  dst,
Register  src1,
const Operand &  src2,
SBit  s = LeaveCC,
Condition  cond = al 
)

Referenced by Assembler::sub().

void sub ( Register  dst,
Register  src1,
Register  src2,
SBit  s = LeaveCC,
Condition  cond = al 
)
inline

Definition at line 808 of file assembler-arm.h.

References Assembler::sub().

void sub ( Register  dst,
const Immediate &  imm 
)
inline

Definition at line 838 of file assembler-ia32.h.

References Assembler::sub().

Referenced by Assembler::sub().

void sub ( const Operand &  dst,
const Immediate &  x 
)
void sub ( Register  dst,
Register  src 
)
inline

Definition at line 840 of file assembler-ia32.h.

References Assembler::sub().

Referenced by Assembler::sub().

void sub ( Register  dst,
const Operand &  src 
)
void sub ( const Operand &  dst,
Register  src 
)
void sub_d ( FPURegister  fd,
FPURegister  fs,
FPURegister  ft 
)
void subb ( Register  dst,
Immediate  src 
)
inline

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

void subl ( Register  dst,
Register  src 
)
inline

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

void subl ( Register  dst,
const Operand &  src 
)
inline

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

void subl ( const Operand &  dst,
Immediate  src 
)
inline

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

void subl ( Register  dst,
Immediate  src 
)
inline

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

void subq ( Register  dst,
Register  src 
)
inline

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

void subq ( Register  dst,
const Operand &  src 
)
inline

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

void subq ( const Operand &  dst,
Register  src 
)
inline

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

void subq ( Register  dst,
Immediate  src 
)
inline

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

void subq ( const Operand &  dst,
Immediate  src 
)
inline

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

void subsd ( XMMRegister  dst,
XMMRegister  src 
)
void subsd ( XMMRegister  dst,
XMMRegister  src 
)
void subu ( Register  rd,
Register  rs,
Register  rt 
)
void svc ( uint32_t  imm24,
Condition  cond = al 
)
void sw ( Register  rd,
const MemOperand rs 
)
void swc1 ( FPURegister  fs,
const MemOperand dst 
)
void swl ( Register  rd,
const MemOperand rs 
)
void swr ( Register  rd,
const MemOperand rs 
)
static Address target_address_at ( Address  pc)
static
static Address target_address_at ( Address  pc)
inlinestatic
Address target_address_at ( Address  pc)
inlinestatic

Definition at line 475 of file assembler-arm-inl.h.

Referenced by IC::address(), and IC::GetTargetAtAddress().

static Address target_address_from_return_address ( Address  pc)
inlinestatic
static Address target_address_from_return_address ( Address  pc)
inlinestatic
Address target_address_from_return_address ( Address  pc)
inlinestatic
int target_at ( int32_t  pos)
protected
int target_at ( int  pos)
protected
void target_at_put ( int32_t  pos,
int32_t  target_pos 
)
protected
void target_at_put ( int  pos,
int  target_pos 
)
protected
void teq ( Register  rs,
Register  rt,
uint16_t  code 
)
void teq ( Register  src1,
const Operand &  src2,
Condition  cond = al 
)
void test ( Register  reg,
const Immediate &  imm 
)
void test ( Register  reg0,
Register  reg1 
)
inline

Definition at line 845 of file assembler-ia32.h.

References Assembler::test().

Referenced by Assembler::test().

void test ( Register  reg,
const Operand &  op 
)
void test ( const Operand &  op,
const Immediate &  imm 
)
void test_b ( Register  reg,
const Operand &  op 
)
void test_b ( Register  reg,
uint8_t  imm8 
)
inline

Definition at line 849 of file assembler-ia32.h.

References Assembler::test_b().

Referenced by Assembler::test_b().

void test_b ( const Operand &  op,
uint8_t  imm8 
)
void testb ( Register  dst,
Register  src 
)
void testb ( Register  reg,
Immediate  mask 
)
void testb ( const Operand &  op,
Immediate  mask 
)
void testb ( const Operand &  op,
Register  reg 
)
void testl ( Register  dst,
Register  src 
)
void testl ( Register  reg,
Immediate  mask 
)
void testl ( const Operand &  op,
Immediate  mask 
)
void testq ( const Operand &  op,
Register  reg 
)
void testq ( Register  dst,
Register  src 
)
void testq ( Register  dst,
Immediate  mask 
)
void tge ( Register  rs,
Register  rt,
uint16_t  code 
)
void tgeu ( Register  rs,
Register  rt,
uint16_t  code 
)
void tlt ( Register  rs,
Register  rt,
uint16_t  code 
)
void tltu ( Register  rs,
Register  rt,
uint16_t  code 
)
void tne ( Register  rs,
Register  rt,
uint16_t  code 
)
void trunc_l_d ( FPURegister  fd,
FPURegister  fs 
)
void trunc_l_s ( FPURegister  fd,
FPURegister  fs 
)
void trunc_w_d ( FPURegister  fd,
FPURegister  fs 
)
void trunc_w_s ( FPURegister  fd,
FPURegister  fs 
)
void tst ( Register  src1,
const Operand &  src2,
Condition  cond = al 
)
void tst ( Register  src1,
Register  src2,
Condition  cond = al 
)
inline

Definition at line 833 of file assembler-arm.h.

References Assembler::tst().

void ubfx ( Register  dst,
Register  src,
int  lsb,
int  width,
Condition  cond = al 
)
void ucomisd ( XMMRegister  dst,
XMMRegister  src 
)
void ucomisd ( XMMRegister  dst,
const Operand &  src 
)
void ucomisd ( XMMRegister  dst,
XMMRegister  src 
)
void ucomisd ( XMMRegister  dst,
const Operand &  src 
)
void umlal ( Register  dstL,
Register  dstH,
Register  src1,
Register  src2,
SBit  s = LeaveCC,
Condition  cond = al 
)
void umull ( Register  dstL,
Register  dstH,
Register  src1,
Register  src2,
SBit  s = LeaveCC,
Condition  cond = al 
)
void usat ( Register  dst,
int  satpos,
const Operand &  src,
Condition  cond = al 
)
static bool use_immediate_embedded_pointer_loads ( const Assembler assembler)
inlinestatic
void vabs ( const DwVfpRegister  dst,
const DwVfpRegister  src,
const Condition  cond = al 
)
void vadd ( const DwVfpRegister  dst,
const DwVfpRegister  src1,
const DwVfpRegister  src2,
const Condition  cond = al 
)
void vcmp ( const DwVfpRegister  src1,
const DwVfpRegister  src2,
const Condition  cond = al 
)
void vcmp ( const DwVfpRegister  src1,
const double  src2,
const Condition  cond = al 
)
void vcvt_f32_f64 ( const SwVfpRegister  dst,
const DwVfpRegister  src,
VFPConversionMode  mode = kDefaultRoundToZero,
const Condition  cond = al 
)
void vcvt_f32_s32 ( const SwVfpRegister  dst,
const SwVfpRegister  src,
VFPConversionMode  mode = kDefaultRoundToZero,
const Condition  cond = al 
)
void vcvt_f64_f32 ( const DwVfpRegister  dst,
const SwVfpRegister  src,
VFPConversionMode  mode = kDefaultRoundToZero,
const Condition  cond = al 
)
void vcvt_f64_s32 ( const DwVfpRegister  dst,
const SwVfpRegister  src,
VFPConversionMode  mode = kDefaultRoundToZero,
const Condition  cond = al 
)
void vcvt_f64_u32 ( const DwVfpRegister  dst,
const SwVfpRegister  src,
VFPConversionMode  mode = kDefaultRoundToZero,
const Condition  cond = al 
)
void vcvt_s32_f64 ( const SwVfpRegister  dst,
const DwVfpRegister  src,
VFPConversionMode  mode = kDefaultRoundToZero,
const Condition  cond = al 
)
void vcvt_u32_f64 ( const SwVfpRegister  dst,
const DwVfpRegister  src,
VFPConversionMode  mode = kDefaultRoundToZero,
const Condition  cond = al 
)
void vdiv ( const DwVfpRegister  dst,
const DwVfpRegister  src1,
const DwVfpRegister  src2,
const Condition  cond = al 
)
void vldm ( BlockAddrMode  am,
Register  base,
DwVfpRegister  first,
DwVfpRegister  last,
Condition  cond = al 
)
void vldm ( BlockAddrMode  am,
Register  base,
SwVfpRegister  first,
SwVfpRegister  last,
Condition  cond = al 
)
void vldr ( const DwVfpRegister  dst,
const Register  base,
int  offset,
const Condition  cond = al 
)
void vldr ( const DwVfpRegister  dst,
const MemOperand src,
const Condition  cond = al 
)
void vldr ( const SwVfpRegister  dst,
const Register  base,
int  offset,
const Condition  cond = al 
)
void vldr ( const SwVfpRegister  dst,
const MemOperand src,
const Condition  cond = al 
)
void vmov ( const DwVfpRegister  dst,
double  imm,
const Register  scratch = no_reg,
const Condition  cond = al 
)
void vmov ( const SwVfpRegister  dst,
const SwVfpRegister  src,
const Condition  cond = al 
)
void vmov ( const DwVfpRegister  dst,
const DwVfpRegister  src,
const Condition  cond = al 
)
void vmov ( const DwVfpRegister  dst,
const Register  src1,
const Register  src2,
const Condition  cond = al 
)
void vmov ( const Register  dst1,
const Register  dst2,
const DwVfpRegister  src,
const Condition  cond = al 
)
void vmov ( const SwVfpRegister  dst,
const Register  src,
const Condition  cond = al 
)
void vmov ( const Register  dst,
const SwVfpRegister  src,
const Condition  cond = al 
)
void vmrs ( const Register  dst,
const Condition  cond = al 
)
void vmsr ( const Register  dst,
const Condition  cond = al 
)
void vmul ( const DwVfpRegister  dst,
const DwVfpRegister  src1,
const DwVfpRegister  src2,
const Condition  cond = al 
)
void vneg ( const DwVfpRegister  dst,
const DwVfpRegister  src,
const Condition  cond = al 
)
void vsqrt ( const DwVfpRegister  dst,
const DwVfpRegister  src,
const Condition  cond = al 
)
void vstm ( BlockAddrMode  am,
Register  base,
DwVfpRegister  first,
DwVfpRegister  last,
Condition  cond = al 
)
void vstm ( BlockAddrMode  am,
Register  base,
SwVfpRegister  first,
SwVfpRegister  last,
Condition  cond = al 
)
void vstr ( const DwVfpRegister  src,
const Register  base,
int  offset,
const Condition  cond = al 
)
void vstr ( const DwVfpRegister  src,
const MemOperand dst,
const Condition  cond = al 
)
void vstr ( const SwVfpRegister  src,
const Register  base,
int  offset,
const Condition  cond = al 
)
void vstr ( const SwVfpRegister  src,
const MemOperand dst,
const Condition  cond = al 
)
void vsub ( const DwVfpRegister  dst,
const DwVfpRegister  src1,
const DwVfpRegister  src2,
const Condition  cond = al 
)
void xchg ( Register  dst,
Register  src 
)
void xchg ( Register  dst,
Register  src 
)
void xor_ ( Register  rd,
Register  rs,
Register  rt 
)
void xor_ ( Register  dst,
int32_t  imm32 
)
void xor_ ( Register  dst,
Register  src 
)
inline

Definition at line 853 of file assembler-ia32.h.

References Assembler::xor_().

Referenced by Assembler::xor_().

void xor_ ( Register  dst,
const Operand &  src 
)
void xor_ ( const Operand &  dst,
Register  src 
)
void xor_ ( Register  dst,
const Immediate &  imm 
)
inline

Definition at line 856 of file assembler-ia32.h.

References Assembler::xor_().

Referenced by Assembler::xor_().

void xor_ ( const Operand &  dst,
const Immediate &  x 
)
void xor_ ( Register  dst,
Register  src 
)
inline

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

void xor_ ( Register  dst,
const Operand &  src 
)
inline

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

void xor_ ( const Operand &  dst,
Register  src 
)
inline

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

void xor_ ( Register  dst,
Immediate  src 
)
inline

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

void xor_ ( const Operand &  dst,
Immediate  src 
)
inline

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

void xori ( Register  rd,
Register  rs,
int32_t  j 
)
void xorl ( Register  dst,
Register  src 
)
inline

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

void xorl ( Register  dst,
const Operand &  src 
)
inline

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

void xorl ( Register  dst,
Immediate  src 
)
inline

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

void xorl ( const Operand &  dst,
Immediate  src 
)
inline

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

void xorpd ( XMMRegister  dst,
XMMRegister  src 
)
void xorpd ( XMMRegister  dst,
XMMRegister  src 
)
void xorps ( XMMRegister  dst,
XMMRegister  src 
)
void xorps ( XMMRegister  dst,
XMMRegister  src 
)

Friends And Related Function Documentation

friend class BlockConstPoolScope
friend

Definition at line 1495 of file assembler-arm.h.

friend class BlockTrampolinePoolScope
friend

Definition at line 1285 of file assembler-mips.h.

CodePatcher
friend

Definition at line 1494 of file assembler-arm.h.

EnsureSpace
friend

Definition at line 1503 of file assembler-arm.h.

PositionsRecorder
friend

Definition at line 1502 of file assembler-arm.h.

friend class RegExpMacroAssemblerARM
friend

Definition at line 1492 of file assembler-arm.h.

friend class RegExpMacroAssemblerMIPS
friend

Definition at line 1282 of file assembler-mips.h.

friend class RegExpMacroAssemblerX64
friend

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

RelocInfo
friend

Definition at line 1493 of file assembler-arm.h.

Field Documentation

const int kBranchPCOffset = 4
static

Definition at line 606 of file assembler-mips.h.

static const int kCallInstructionLength = 5
static

Definition at line 635 of file assembler-ia32.h.

Referenced by MacroAssembler::CallSize().

static const int kCallTargetAddressOffset = kPointerSize
static

Definition at line 626 of file assembler-ia32.h.

static const int kDebugBreakSlotInstructions = 3
static

Definition at line 768 of file assembler-arm.h.

static const int kDebugBreakSlotLength
static
Initial value:

Definition at line 769 of file assembler-arm.h.

const int kInstructionsFor32BitConstant = 3
static

Definition at line 623 of file assembler-mips.h.

Referenced by Assembler::deserialization_set_special_target_at().

static const byte kJccShortPrefix = 0x70
static

Definition at line 650 of file assembler-ia32.h.

static const byte kJcShortOpcode = kJccShortPrefix | carry
static

Definition at line 652 of file assembler-ia32.h.

const byte kJmpShortOpcode = 0xEB
static

Definition at line 648 of file assembler-ia32.h.

static const byte kJncShortOpcode = kJccShortPrefix | not_carry
static

Definition at line 651 of file assembler-ia32.h.

static const byte kJnzShortOpcode = kJccShortPrefix | not_zero
static

Definition at line 653 of file assembler-ia32.h.

static const int kJSReturnSequenceInstructions = 4
static

Definition at line 767 of file assembler-arm.h.

static const int kJSReturnSequenceLength = 6
static

Definition at line 637 of file assembler-ia32.h.

const int kJumpInstructionLength = 13
static

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

static const byte kJzShortOpcode = kJccShortPrefix | zero
static

Definition at line 654 of file assembler-ia32.h.

const int kMaxDistToPool = 4*KB
static

Definition at line 1330 of file assembler-arm.h.

Referenced by Assembler::EndBlockConstPool().

static const int kMaximalBufferSize = 512*MB
static

Definition at line 1119 of file assembler-ia32.h.

const int kMaxNumPendingRelocInfo = kMaxDistToPool/kInstrSize
static

Definition at line 1331 of file assembler-arm.h.

static const int kMinimalBufferSize = 4*KB
static

Definition at line 1120 of file assembler-ia32.h.

static const byte kNopByte = 0x90
static

Definition at line 645 of file assembler-ia32.h.

static const int kPatchDebugBreakSlotAddressOffset = 0 * kInstrSize
static

Definition at line 749 of file assembler-arm.h.

static const int kPatchDebugBreakSlotReturnOffset = 2 * kInstrSize
static

Definition at line 758 of file assembler-arm.h.

static const int kPatchReturnSequenceAddressOffset = 0 * kInstrSize
static

Definition at line 735 of file assembler-arm.h.

static const int kPcLoadDelta = 8
static

Definition at line 765 of file assembler-arm.h.

const int kRealPatchReturnSequenceAddressOffset = 2
static

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

const int kShortCallInstructionLength = 5
static

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

Referenced by MacroAssembler::CallSize().

static const int kSpecialTargetSize = kPointerSize
static

Definition at line 724 of file assembler-arm.h.

static const byte kTestAlByte = 0xA8
static

Definition at line 643 of file assembler-ia32.h.

const byte kTestEaxByte = 0xA9
static

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

TypeFeedbackId recorded_ast_id_
protected

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