public class AMD64MacroAssembler extends AMD64Assembler
AMD64Assembler.AMD64BinaryArithmetic, AMD64Assembler.AMD64ImmOp, AMD64Assembler.AMD64MIOp, AMD64Assembler.AMD64MOp, AMD64Assembler.AMD64MROp, AMD64Assembler.AMD64Op, AMD64Assembler.AMD64RMIOp, AMD64Assembler.AMD64RMOp, AMD64Assembler.AMD64RROp, AMD64Assembler.AMD64Shift, AMD64Assembler.ConditionFlag, AMD64Assembler.OperandSize, AMD64Assembler.SSEOp
Assembler.InstructionCounter, Assembler.LabelHint
frameRegister
Constructor and Description |
---|
AMD64MacroAssembler(TargetDescription target,
RegisterConfig registerConfig) |
Modifier and Type | Method and Description |
---|---|
void |
cmpptr(Register src1,
AMD64Address src2) |
void |
cmpptr(Register src1,
Register src2) |
void |
decrementl(AMD64Address dst,
int value) |
void |
decrementl(Register reg,
int value) |
void |
decrementq(AMD64Address dst,
int value) |
void |
decrementq(Register reg,
int value) |
void |
fcos(Register dest,
Register value) |
void |
flog(Register dest,
Register value,
boolean base10) |
void |
fpop() |
void |
fsin(Register dest,
Register value) |
void |
ftan(Register dest,
Register value) |
void |
incrementl(AMD64Address dst,
int value) |
void |
incrementl(Register reg,
int value) |
void |
incrementq(AMD64Address dst,
int value) |
void |
incrementq(Register reg,
int value) |
void |
movdbl(AMD64Address dst,
Register src) |
void |
movdbl(Register dst,
AMD64Address src) |
void |
movdbl(Register dst,
Register src) |
void |
movflt(AMD64Address dst,
Register src) |
void |
movflt(Register dst,
AMD64Address src) |
void |
movflt(Register dst,
Register src) |
void |
movlong(AMD64Address dst,
long src)
Non-atomic write of a 64-bit constant to memory.
|
void |
movptr(AMD64Address dst,
int src) |
void |
movptr(AMD64Address dst,
Register src) |
void |
movptr(Register dst,
AMD64Address src) |
void |
restore(CalleeSaveLayout csl,
int frameToCSA) |
void |
save(CalleeSaveLayout csl,
int frameToCSA)
Emit code to save a given set of callee save registers in the CSA within the frame.
|
private void |
trigEpilogue(Register dest,
AMD64Address tmp) |
private AMD64Address |
trigPrologue(Register value) |
addl, addl, addq, addq, addq, addq, align, andl, andq, bswapl, bswapq, call, call, cdql, cdqq, cmovl, cmovl, cmovq, cmovq, cmpl, cmpl, cmpl, cmpl, cmpq, cmpq, cmpq, cmpxchgl, cmpxchgq, decl, decl, decq, decq, emitModRM, emitModRM, emitOperandHelper, emitOperandHelper, ensureUniquePC, fcos, ffree, fincstp, fldd, fldlg2, fldln2, flds, fnstswAX, fprem, fptan, fsin, fstp, fstpd, fstps, fwait, fxch, fyl2x, getPlaceholder, getRXB, getRXB, hlt, illegal, imull, incl, incl, incq, incq, int3, jcc, jcc, jccb, jmp, jmp, jmp, jmpb, leaq, leave, lock, makeAddress, membar, movapd, movaps, movb, movb, movdq, movdqu, movl, movl, movl, movl, movl, movlpd, movq, movq, movq, movq, movsbl, movsbl, movsbq, movsbq, movsd, movsd, movsd, movslq, movslq, movslq, movslq, movss, movss, movss, movswl, movw, movw, movzbl, movzwl, negq, nop, nop, nullCheck, patchJumpTarget, pop, popfq, prefetchnta, prefetchr, prefetcht0, prefetcht1, prefetcht2, prefetchw, ptest, push, pushfq, pxor, ret, shlq, shrq, subl, subl, subq, subq, subq, subqWide, testl, testl, testl, testq, xaddl, xaddq, xchgl, xchgq, xorl, xorpd, xorps
bind, close, createLabelName, emitByte, emitByte, emitInt, emitInt, emitLong, emitLong, emitShort, emitShort, emitString, emitString, emitString0, getByte, getInstructionCounter, getInt, getShort, nameOf, position, requestLabelHint, reset
public AMD64MacroAssembler(TargetDescription target, RegisterConfig registerConfig)
public final void decrementq(Register reg, int value)
public final void decrementq(AMD64Address dst, int value)
public void incrementq(Register reg, int value)
public final void incrementq(AMD64Address dst, int value)
public final void movptr(Register dst, AMD64Address src)
public final void movptr(AMD64Address dst, Register src)
public final void movptr(AMD64Address dst, int src)
public final void cmpptr(Register src1, AMD64Address src2)
public final void decrementl(Register reg, int value)
public final void decrementl(AMD64Address dst, int value)
public final void incrementl(Register reg, int value)
public final void incrementl(AMD64Address dst, int value)
public void movflt(Register dst, AMD64Address src)
public void movflt(AMD64Address dst, Register src)
public void movdbl(Register dst, AMD64Address src)
public void movdbl(AMD64Address dst, Register src)
public final void movlong(AMD64Address dst, long src)
public final void fpop()
private AMD64Address trigPrologue(Register value)
private void trigEpilogue(Register dest, AMD64Address tmp)
public final void save(CalleeSaveLayout csl, int frameToCSA)
csl
- the description of the CSAframeToCSA
- offset from the frame pointer to the CSApublic final void restore(CalleeSaveLayout csl, int frameToCSA)