![]() |
v8
3.25.30(node0.11.13)
V8 is Google's open source JavaScript engine
|
#include <assembler-arm64.h>


Public Member Functions | |
| PatchingAssembler (Instruction *start, unsigned count) | |
| PatchingAssembler (byte *start, unsigned count) | |
| ~PatchingAssembler () | |
Public Member Functions inherited from Assembler | |
| Assembler (Isolate *isolate, void *buffer, int buffer_size) | |
| virtual | ~Assembler () |
| void | GetCode (CodeDesc *desc) |
| void | bind (Label *L) |
| int | branch_offset (Label *L, bool jump_elimination_allowed) |
| INLINE (static Address target_pointer_address_at(Address pc)) | |
| INLINE (static Address target_constant_pool_address_at(Address pc, ConstantPoolArray *constant_pool)) | |
| INLINE (static Address target_address_at(Address pc, ConstantPoolArray *constant_pool)) | |
| INLINE (static void set_target_address_at(Address pc, ConstantPoolArray *constant_pool, Address target)) | |
| INLINE (static Address target_address_at(Address pc, Code *code)) | |
| INLINE (static void set_target_address_at(Address pc, Code *code, 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 | mov_label_offset (Register dst, Label *label) |
| 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 | pkhbt (Register dst, Register src1, const Operand &src2, Condition cond=al) |
| void | pkhtb (Register dst, Register src1, const Operand &src2, Condition cond=al) |
| void | uxtb (Register dst, const Operand &src, Condition cond=al) |
| void | uxtab (Register dst, Register src1, const Operand &src2, Condition cond=al) |
| void | uxtb16 (Register dst, const Operand &src, 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 | pld (const MemOperand &address) |
| 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) |
| 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 VmovIndex index, const Register src, const Condition cond=al) |
| void | vmov (const Register dst, const VmovIndex index, 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 | vcvt_f64_s32 (const DwVfpRegister dst, int fraction_bits, 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 | vmla (const DwVfpRegister dst, const DwVfpRegister src1, const DwVfpRegister src2, const Condition cond=al) |
| void | vmls (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 | vld1 (NeonSize size, const NeonListOperand &dst, const NeonMemOperand &src) |
| void | vst1 (NeonSize size, const NeonListOperand &src, const NeonMemOperand &dst) |
| void | vmovl (NeonDataType dt, QwNeonRegister dst, DwVfpRegister src) |
| 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) |
| int | SizeOfCodeGeneratedSince (Label *label) |
| int | InstructionsGeneratedSince (Label *label) |
| bool | ImmediateFitsAddrMode1Instruction (int32_t imm32) |
| bool | ImmediateFitsAddrMode2Instruction (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) |
| void | emit_code_stub_address (Code *stub) |
| PositionsRecorder * | positions_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) |
| MaybeObject * | AllocateConstantPool (Heap *heap) |
| void | PopulateConstantPool (ConstantPoolArray *constant_pool) |
| bool | can_use_constant_pool () const |
| void | set_constant_pool_full () |
| Assembler (Isolate *arg_isolate, void *buffer, int buffer_size) | |
| virtual | ~Assembler () |
| virtual void | AbortedCodeGeneration () |
| void | Reset () |
| void | GetCode (CodeDesc *desc) |
| void | Align (int m) |
| void | Unreachable () |
| void | bind (Label *label) |
| void | RecordRelocInfo (RelocInfo::Mode rmode, intptr_t data=0) |
| uint64_t | SizeOfGeneratedCode () const |
| uint64_t | SizeOfCodeGeneratedSince (const Label *label) |
| void | AssertSizeOfCodeGeneratedSince (const Label *label, ptrdiff_t size) |
| int | InstructionsGeneratedSince (const Label *label) |
| void | StartBlockConstPool () |
| void | EndBlockConstPool () |
| bool | is_const_pool_blocked () const |
| void | ConstantPoolMarker (uint32_t size) |
| void | EmitPoolGuard () |
| void | ConstantPoolGuard () |
| void | StartBlockVeneerPool () |
| void | EndBlockVeneerPool () |
| bool | is_veneer_pool_blocked () const |
| void | StartBlockPools () |
| void | EndBlockPools () |
| PositionsRecorder * | positions_recorder () |
| void | RecordComment (const char *msg) |
| int | buffer_space () const |
| void | RecordJSReturn () |
| void | RecordDebugBreakSlot () |
| void | RecordConstPool (int size) |
| void | br (const Register &xn) |
| void | blr (const Register &xn) |
| void | ret (const Register &xn=lr) |
| void | b (Label *label) |
| void | b (Label *label, Condition cond) |
| void | b (int imm26) |
| void | b (int imm19, Condition cond) |
| void | bl (Label *label) |
| void | bl (int imm26) |
| void | cbz (const Register &rt, Label *label) |
| void | cbz (const Register &rt, int imm19) |
| void | cbnz (const Register &rt, Label *label) |
| void | cbnz (const Register &rt, int imm19) |
| void | tbz (const Register &rt, unsigned bit_pos, Label *label) |
| void | tbz (const Register &rt, unsigned bit_pos, int imm14) |
| void | tbnz (const Register &rt, unsigned bit_pos, Label *label) |
| void | tbnz (const Register &rt, unsigned bit_pos, int imm14) |
| void | adr (const Register &rd, Label *label) |
| void | adr (const Register &rd, int imm21) |
| void | add (const Register &rd, const Register &rn, const Operand &operand) |
| void | adds (const Register &rd, const Register &rn, const Operand &operand) |
| void | cmn (const Register &rn, const Operand &operand) |
| void | sub (const Register &rd, const Register &rn, const Operand &operand) |
| void | subs (const Register &rd, const Register &rn, const Operand &operand) |
| void | cmp (const Register &rn, const Operand &operand) |
| void | neg (const Register &rd, const Operand &operand) |
| void | negs (const Register &rd, const Operand &operand) |
| void | adc (const Register &rd, const Register &rn, const Operand &operand) |
| void | adcs (const Register &rd, const Register &rn, const Operand &operand) |
| void | sbc (const Register &rd, const Register &rn, const Operand &operand) |
| void | sbcs (const Register &rd, const Register &rn, const Operand &operand) |
| void | ngc (const Register &rd, const Operand &operand) |
| void | ngcs (const Register &rd, const Operand &operand) |
| void | and_ (const Register &rd, const Register &rn, const Operand &operand) |
| void | ands (const Register &rd, const Register &rn, const Operand &operand) |
| void | tst (const Register &rn, const Operand &operand) |
| void | bic (const Register &rd, const Register &rn, const Operand &operand) |
| void | bics (const Register &rd, const Register &rn, const Operand &operand) |
| void | orr (const Register &rd, const Register &rn, const Operand &operand) |
| void | orn (const Register &rd, const Register &rn, const Operand &operand) |
| void | eor (const Register &rd, const Register &rn, const Operand &operand) |
| void | eon (const Register &rd, const Register &rn, const Operand &operand) |
| void | lslv (const Register &rd, const Register &rn, const Register &rm) |
| void | lsrv (const Register &rd, const Register &rn, const Register &rm) |
| void | asrv (const Register &rd, const Register &rn, const Register &rm) |
| void | rorv (const Register &rd, const Register &rn, const Register &rm) |
| void | bfm (const Register &rd, const Register &rn, unsigned immr, unsigned imms) |
| void | sbfm (const Register &rd, const Register &rn, unsigned immr, unsigned imms) |
| void | ubfm (const Register &rd, const Register &rn, unsigned immr, unsigned imms) |
| void | bfi (const Register &rd, const Register &rn, unsigned lsb, unsigned width) |
| void | bfxil (const Register &rd, const Register &rn, unsigned lsb, unsigned width) |
| void | asr (const Register &rd, const Register &rn, unsigned shift) |
| void | sbfiz (const Register &rd, const Register &rn, unsigned lsb, unsigned width) |
| void | sbfx (const Register &rd, const Register &rn, unsigned lsb, unsigned width) |
| void | sxtb (const Register &rd, const Register &rn) |
| void | sxth (const Register &rd, const Register &rn) |
| void | sxtw (const Register &rd, const Register &rn) |
| void | lsl (const Register &rd, const Register &rn, unsigned shift) |
| void | lsr (const Register &rd, const Register &rn, unsigned shift) |
| void | ubfiz (const Register &rd, const Register &rn, unsigned lsb, unsigned width) |
| void | ubfx (const Register &rd, const Register &rn, unsigned lsb, unsigned width) |
| void | uxtb (const Register &rd, const Register &rn) |
| void | uxth (const Register &rd, const Register &rn) |
| void | uxtw (const Register &rd, const Register &rn) |
| void | extr (const Register &rd, const Register &rn, const Register &rm, unsigned lsb) |
| void | csel (const Register &rd, const Register &rn, const Register &rm, Condition cond) |
| void | csinc (const Register &rd, const Register &rn, const Register &rm, Condition cond) |
| void | csinv (const Register &rd, const Register &rn, const Register &rm, Condition cond) |
| void | csneg (const Register &rd, const Register &rn, const Register &rm, Condition cond) |
| void | cset (const Register &rd, Condition cond) |
| void | csetm (const Register &rd, Condition cond) |
| void | cinc (const Register &rd, const Register &rn, Condition cond) |
| void | cinv (const Register &rd, const Register &rn, Condition cond) |
| void | cneg (const Register &rd, const Register &rn, Condition cond) |
| void | ror (const Register &rd, const Register &rs, unsigned shift) |
| void | ccmn (const Register &rn, const Operand &operand, StatusFlags nzcv, Condition cond) |
| void | ccmp (const Register &rn, const Operand &operand, StatusFlags nzcv, Condition cond) |
| void | mul (const Register &rd, const Register &rn, const Register &rm) |
| void | madd (const Register &rd, const Register &rn, const Register &rm, const Register &ra) |
| void | mneg (const Register &rd, const Register &rn, const Register &rm) |
| void | msub (const Register &rd, const Register &rn, const Register &rm, const Register &ra) |
| void | smull (const Register &rd, const Register &rn, const Register &rm) |
| void | smulh (const Register &rd, const Register &rn, const Register &rm) |
| void | smaddl (const Register &rd, const Register &rn, const Register &rm, const Register &ra) |
| void | umaddl (const Register &rd, const Register &rn, const Register &rm, const Register &ra) |
| void | smsubl (const Register &rd, const Register &rn, const Register &rm, const Register &ra) |
| void | umsubl (const Register &rd, const Register &rn, const Register &rm, const Register &ra) |
| void | sdiv (const Register &rd, const Register &rn, const Register &rm) |
| void | udiv (const Register &rd, const Register &rn, const Register &rm) |
| void | rbit (const Register &rd, const Register &rn) |
| void | rev16 (const Register &rd, const Register &rn) |
| void | rev32 (const Register &rd, const Register &rn) |
| void | rev (const Register &rd, const Register &rn) |
| void | clz (const Register &rd, const Register &rn) |
| void | cls (const Register &rd, const Register &rn) |
| void | LoadLiteral (const CPURegister &rt, int offset_from_pc) |
| void | ldr (const CPURegister &rt, const MemOperand &src) |
| void | str (const CPURegister &rt, const MemOperand &dst) |
| void | ldrsw (const Register &rt, const MemOperand &src) |
| void | ldrb (const Register &rt, const MemOperand &src) |
| void | strb (const Register &rt, const MemOperand &dst) |
| void | ldrsb (const Register &rt, const MemOperand &src) |
| void | ldrh (const Register &rt, const MemOperand &src) |
| void | strh (const Register &rt, const MemOperand &dst) |
| void | ldrsh (const Register &rt, const MemOperand &src) |
| void | ldp (const CPURegister &rt, const CPURegister &rt2, const MemOperand &src) |
| void | stp (const CPURegister &rt, const CPURegister &rt2, const MemOperand &dst) |
| void | ldpsw (const Register &rt, const Register &rt2, const MemOperand &src) |
| void | ldnp (const CPURegister &rt, const CPURegister &rt2, const MemOperand &src) |
| void | stnp (const CPURegister &rt, const CPURegister &rt2, const MemOperand &dst) |
| void | ldr (const Register &rt, uint64_t imm) |
| void | ldr (const FPRegister &ft, double imm) |
| void | ldr (const FPRegister &ft, float imm) |
| void | movk (const Register &rd, uint64_t imm, int shift=-1) |
| void | movn (const Register &rd, uint64_t imm, int shift=-1) |
| void | movz (const Register &rd, uint64_t imm, int shift=-1) |
| void | brk (int code) |
| void | hlt (int code) |
| void | mov (const Register &rd, const Register &rn) |
| void | mvn (const Register &rd, const Operand &operand) |
| void | mrs (const Register &rt, SystemRegister sysreg) |
| void | msr (SystemRegister sysreg, const Register &rt) |
| void | hint (SystemHint code) |
| void | dmb (BarrierDomain domain, BarrierType type) |
| void | dsb (BarrierDomain domain, BarrierType type) |
| void | isb () |
| void | nop () |
| void | nop (NopMarkerTypes n) |
| void | fmov (FPRegister fd, double imm) |
| void | fmov (FPRegister fd, float imm) |
| void | fmov (Register rd, FPRegister fn) |
| void | fmov (FPRegister fd, Register rn) |
| void | fmov (FPRegister fd, FPRegister fn) |
| void | fadd (const FPRegister &fd, const FPRegister &fn, const FPRegister &fm) |
| void | fsub (const FPRegister &fd, const FPRegister &fn, const FPRegister &fm) |
| void | fmul (const FPRegister &fd, const FPRegister &fn, const FPRegister &fm) |
| void | fmadd (const FPRegister &fd, const FPRegister &fn, const FPRegister &fm, const FPRegister &fa) |
| void | fmsub (const FPRegister &fd, const FPRegister &fn, const FPRegister &fm, const FPRegister &fa) |
| void | fnmadd (const FPRegister &fd, const FPRegister &fn, const FPRegister &fm, const FPRegister &fa) |
| void | fnmsub (const FPRegister &fd, const FPRegister &fn, const FPRegister &fm, const FPRegister &fa) |
| void | fdiv (const FPRegister &fd, const FPRegister &fn, const FPRegister &fm) |
| void | fmax (const FPRegister &fd, const FPRegister &fn, const FPRegister &fm) |
| void | fmin (const FPRegister &fd, const FPRegister &fn, const FPRegister &fm) |
| void | fmaxnm (const FPRegister &fd, const FPRegister &fn, const FPRegister &fm) |
| void | fminnm (const FPRegister &fd, const FPRegister &fn, const FPRegister &fm) |
| void | fabs (const FPRegister &fd, const FPRegister &fn) |
| void | fneg (const FPRegister &fd, const FPRegister &fn) |
| void | fsqrt (const FPRegister &fd, const FPRegister &fn) |
| void | frinta (const FPRegister &fd, const FPRegister &fn) |
| void | frintn (const FPRegister &fd, const FPRegister &fn) |
| void | frintz (const FPRegister &fd, const FPRegister &fn) |
| void | fcmp (const FPRegister &fn, const FPRegister &fm) |
| void | fcmp (const FPRegister &fn, double value) |
| void | fccmp (const FPRegister &fn, const FPRegister &fm, StatusFlags nzcv, Condition cond) |
| void | fcsel (const FPRegister &fd, const FPRegister &fn, const FPRegister &fm, Condition cond) |
| void | FPConvertToInt (const Register &rd, const FPRegister &fn, FPIntegerConvertOp op) |
| void | fcvt (const FPRegister &fd, const FPRegister &fn) |
| void | fcvtau (const Register &rd, const FPRegister &fn) |
| void | fcvtas (const Register &rd, const FPRegister &fn) |
| void | fcvtmu (const Register &rd, const FPRegister &fn) |
| void | fcvtms (const Register &rd, const FPRegister &fn) |
| void | fcvtnu (const Register &rd, const FPRegister &fn) |
| void | fcvtns (const Register &rd, const FPRegister &fn) |
| void | fcvtzu (const Register &rd, const FPRegister &fn) |
| void | fcvtzs (const Register &rd, const FPRegister &fn) |
| void | scvtf (const FPRegister &fd, const Register &rn, unsigned fbits=0) |
| void | ucvtf (const FPRegister &fd, const Register &rn, unsigned fbits=0) |
| void | dci (Instr raw_inst) |
| void | dc8 (uint8_t data) |
| void | dc32 (uint32_t data) |
| void | dc64 (uint64_t data) |
| void | EmitStringData (const char *string) |
| void | debug (const char *message, uint32_t code, Instr params=BREAK) |
| void | dd (uint32_t data) |
| void | db (uint8_t data) |
| unsigned | num_pending_reloc_info () const |
| Instruction * | InstructionAt (int offset) const |
| void | CheckConstPool (bool force_emit, bool require_jump) |
| MaybeObject * | AllocateConstantPool (Heap *heap) |
| void | PopulateConstantPool (ConstantPoolArray *constant_pool) |
| bool | ShouldEmitVeneer (int max_reachable_pc, int margin=kVeneerDistanceMargin) |
| bool | ShouldEmitVeneers (int margin=kVeneerDistanceMargin) |
| void | RecordVeneerPool (int location_offset, int size) |
| void | EmitVeneers (bool force_emit, bool need_protection, int margin=kVeneerDistanceMargin) |
| void | EmitVeneersGuard () |
| void | CheckVeneerPool (bool force_emit, bool require_jump, int margin=kVeneerDistanceMargin) |
| void | LoadRelocated (const CPURegister &rt, const Operand &operand) |
| Assembler (Isolate *isolate, void *buffer, int buffer_size) | |
| virtual | ~Assembler () |
| 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_w (const Operand &dst, int16_t imm16) |
| 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 | ror (Register dst, uint8_t imm8) |
| void | ror_cl (Register dst) |
| 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 | bsr (Register dst, Register src) |
| void | bsr (Register dst, const Operand &src) |
| void | hlt () |
| void | int3 () |
| void | nop () |
| 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 | fst_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 | fadd_i (int i) |
| void | fsub (int i) |
| void | fsub_i (int i) |
| void | fmul (int i) |
| void | fmul_i (int i) |
| void | fdiv (int i) |
| void | fdiv_i (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 | movaps (XMMRegister dst, XMMRegister src) |
| void | shufps (XMMRegister dst, XMMRegister src, byte imm8) |
| void | andps (XMMRegister dst, const Operand &src) |
| void | andps (XMMRegister dst, XMMRegister src) |
| void | xorps (XMMRegister dst, const Operand &src) |
| void | xorps (XMMRegister dst, XMMRegister src) |
| void | orps (XMMRegister dst, const Operand &src) |
| void | orps (XMMRegister dst, XMMRegister src) |
| void | addps (XMMRegister dst, const Operand &src) |
| void | addps (XMMRegister dst, XMMRegister src) |
| void | subps (XMMRegister dst, const Operand &src) |
| void | subps (XMMRegister dst, XMMRegister src) |
| void | mulps (XMMRegister dst, const Operand &src) |
| void | mulps (XMMRegister dst, XMMRegister src) |
| void | divps (XMMRegister dst, const Operand &src) |
| void | divps (XMMRegister dst, XMMRegister src) |
| void | cvttss2si (Register dst, const Operand &src) |
| void | cvttss2si (Register dst, XMMRegister 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 | addsd (XMMRegister dst, const Operand &src) |
| void | subsd (XMMRegister dst, XMMRegister src) |
| void | mulsd (XMMRegister dst, XMMRegister src) |
| void | mulsd (XMMRegister dst, const Operand &src) |
| void | divsd (XMMRegister dst, XMMRegister src) |
| void | xorpd (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 | movmskps (Register dst, XMMRegister src) |
| void | cmpltsd (XMMRegister dst, XMMRegister src) |
| void | pcmpeqd (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 | movdq (bool aligned, XMMRegister dst, const Operand &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 | movsd (XMMRegister dst, const Operand &src) |
| void | movsd (const Operand &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, uint8_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) |
| bool | buffer_overflow () const |
| int | available_space () const |
| PositionsRecorder * | positions_recorder () |
| int | relocation_writer_size () |
| byte | byte_at (int pos) |
| void | set_byte_at (int pos, byte value) |
| MaybeObject * | AllocateConstantPool (Heap *heap) |
| void | PopulateConstantPool (ConstantPoolArray *constant_pool) |
| Assembler (Isolate *isolate, void *buffer, int buffer_size) | |
| virtual | ~Assembler () |
| 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) |
| INLINE (static Address target_address_at(Address pc, ConstantPoolArray *constant_pool)) | |
| INLINE (static void set_target_address_at(Address pc, ConstantPoolArray *constant_pool, Address target)) | |
| INLINE (static Address target_address_at(Address pc, Code *code)) | |
| INLINE (static void set_target_address_at(Address pc, Code *code, Address target)) | |
| 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 | pref (int32_t hint, 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 | madd_d (FPURegister fd, FPURegister fr, 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) |
| void | emit_code_stub_address (Code *stub) |
| PositionsRecorder * | positions_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 () |
| MaybeObject * | AllocateConstantPool (Heap *heap) |
| void | PopulateConstantPool (ConstantPoolArray *constant_pool) |
| Assembler (Isolate *isolate, void *buffer, int buffer_size) | |
| virtual | ~Assembler () |
| void | GetCode (CodeDesc *desc) |
| Handle< Object > | code_target_object_handle_at (Address pc) |
| Address | runtime_entry_at (Address pc) |
| void | Align (int m) |
| void | Nop (int bytes=1) |
| void | CodeTargetAlign () |
| void | pushfq () |
| void | popfq () |
| void | pushq (Immediate value) |
| void | pushq_imm32 (int32_t imm32) |
| void | pushq (Register src) |
| void | pushq (const Operand &src) |
| void | popq (Register dst) |
| void | popq (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 | movb (const Operand &dst, Immediate imm) |
| void | movw (Register dst, const Operand &src) |
| void | movw (const Operand &dst, Register src) |
| void | movw (const Operand &dst, Immediate imm) |
| void | movl (const Operand &dst, Label *src) |
| void | movp (Register dst, void *ptr, RelocInfo::Mode rmode) |
| void | movq (Register dst, int64_t value) |
| void | movq (Register dst, uint64_t value) |
| 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 | repmovsb () |
| void | repmovsw () |
| void | repmovsp () |
| 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 | 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 | andb (Register dst, Immediate src) |
| void | decb (Register dst) |
| void | decb (const Operand &dst) |
| void | cqo () |
| void | cdq () |
| void | mul (Register src) |
| void | rcl (Register dst, Immediate imm8) |
| void | rol (Register dst, Immediate imm8) |
| void | roll (Register dst, Immediate imm8) |
| void | rcr (Register dst, Immediate imm8) |
| void | ror (Register dst, Immediate imm8) |
| void | rorl (Register dst, Immediate imm8) |
| void | rorl_cl (Register dst) |
| 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 | 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 | bt (const Operand &dst, Register src) |
| void | bts (const Operand &dst, Register src) |
| void | bsrl (Register dst, Register src) |
| void | clc () |
| void | cld () |
| void | cpuid () |
| void | hlt () |
| void | int3 () |
| void | nop () |
| void | ret (int imm16) |
| void | setcc (Condition cc, Register reg) |
| void | bind (Label *L) |
| void | call (Label *L) |
| void | call (Address entry, RelocInfo::Mode rmode) |
| 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 | jmp (Label *L, Label::Distance distance=Label::kFar) |
| void | jmp (Address entry, RelocInfo::Mode rmode) |
| void | jmp (Handle< Code > target, RelocInfo::Mode rmode) |
| void | jmp (Register adr) |
| void | j (Condition cc, Label *L, Label::Distance distance=Label::kFar) |
| void | j (Condition cc, Address entry, RelocInfo::Mode rmode) |
| 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 | movaps (XMMRegister dst, XMMRegister src) |
| void | movss (XMMRegister dst, const Operand &src) |
| void | movss (const Operand &dst, XMMRegister src) |
| void | shufps (XMMRegister dst, XMMRegister src, byte imm8) |
| void | cvttss2si (Register dst, const Operand &src) |
| void | cvttss2si (Register dst, XMMRegister src) |
| void | cvtlsi2ss (XMMRegister dst, Register src) |
| void | andps (XMMRegister dst, XMMRegister src) |
| void | andps (XMMRegister dst, const Operand &src) |
| void | orps (XMMRegister dst, XMMRegister src) |
| void | orps (XMMRegister dst, const Operand &src) |
| void | xorps (XMMRegister dst, XMMRegister src) |
| void | xorps (XMMRegister dst, const Operand &src) |
| void | addps (XMMRegister dst, XMMRegister src) |
| void | addps (XMMRegister dst, const Operand &src) |
| void | subps (XMMRegister dst, XMMRegister src) |
| void | subps (XMMRegister dst, const Operand &src) |
| void | mulps (XMMRegister dst, XMMRegister src) |
| void | mulps (XMMRegister dst, const Operand &src) |
| void | divps (XMMRegister dst, XMMRegister src) |
| void | divps (XMMRegister dst, const Operand &src) |
| void | movmskps (Register dst, XMMRegister src) |
| 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 | 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 | movdqu (const Operand &dst, XMMRegister src) |
| void | movdqu (XMMRegister dst, const Operand &src) |
| void | movapd (XMMRegister dst, XMMRegister src) |
| void | psllq (XMMRegister reg, byte imm8) |
| 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 | 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 | addsd (XMMRegister dst, const Operand &src) |
| void | subsd (XMMRegister dst, XMMRegister src) |
| void | mulsd (XMMRegister dst, XMMRegister src) |
| void | mulsd (XMMRegister dst, const Operand &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 | sqrtsd (XMMRegister dst, XMMRegister src) |
| void | ucomisd (XMMRegister dst, XMMRegister src) |
| void | ucomisd (XMMRegister dst, const Operand &src) |
| void | cmpltsd (XMMRegister dst, XMMRegister src) |
| void | movmskpd (Register dst, XMMRegister src) |
| void | extractps (Register dst, XMMRegister src, byte imm8) |
| void | roundsd (XMMRegister dst, XMMRegister src, RoundingMode mode) |
| void | Print () |
| int | SizeOfCodeGeneratedSince (Label *label) |
| void | RecordJSReturn () |
| void | RecordDebugBreakSlot () |
| void | RecordComment (const char *msg, bool force=false) |
| MaybeObject * | AllocateConstantPool (Heap *heap) |
| void | PopulateConstantPool (ConstantPoolArray *constant_pool) |
| void | db (uint8_t data) |
| void | dd (uint32_t data) |
| PositionsRecorder * | positions_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, void *buffer, int buffer_size) | |
| virtual | ~AssemblerBase () |
| Isolate * | isolate () const |
| int | jit_cookie () const |
| bool | emit_debug_code () const |
| void | set_emit_debug_code (bool value) |
| bool | predictable_code_size () const |
| void | set_predictable_code_size (bool value) |
| uint64_t | enabled_cpu_features () const |
| void | set_enabled_cpu_features (uint64_t features) |
| bool | IsEnabled (CpuFeature f) |
| int | pc_offset () const |
Public Member Functions inherited from Malloced | |
| void * | operator new (size_t size) |
| void | operator delete (void *p) |
Definition at line 2186 of file assembler-arm64.h.
|
inline |
Definition at line 2196 of file assembler-arm64.h.
References Assembler::StartBlockPools().
|
inline |
Definition at line 2203 of file assembler-arm64.h.
References Assembler::StartBlockPools().
|
inline |
Definition at line 2209 of file assembler-arm64.h.
References ASSERT, AssemblerBase::buffer_, AssemblerBase::buffer_size_, Assembler::EndBlockPools(), Assembler::is_const_pool_blocked(), Assembler::num_pending_reloc_info(), and AssemblerBase::pc_offset().