Package jnr.x86asm
Class Asm
java.lang.Object
jnr.x86asm.Asm
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final Register
8 bit General purpose register.static final Register
8 bit General purpose register.static final Register
16 bit General purpose register.static final Register
8 bit General purpose register.static final Register
8 bit General purpose register.static final Register
16 bit General purpose register.static final Register
16 bit General purpose register.static final Register
8 bit General purpose register.static final Register
8 bit General purpose register.static final Register
16 bit General purpose register.static final Register
8 bit General purpose register.static final Register
16 bit General purpose register.static final Register
8 bit General purpose register.static final Register
16 bit General purpose register.static final Register
32 bit General purpose register.static final Register
32 bit General purpose register.static final Register
32 bit General purpose register.static final Register
32 bit General purpose register.static final Register
32 bit General purpose register.static final Register
32 bit General purpose register.static final Register
32 bit General purpose register.static final Register
32 bit General purpose register.static final CPU
Deprecated.static final MMRegister
64 bit MMX register.static final MMRegister
64 bit MMX register.static final MMRegister
64 bit MMX register.static final MMRegister
64 bit MMX register.static final MMRegister
64 bit MMX register.static final MMRegister
64 bit MMX register.static final MMRegister
64 bit MMX register.static final MMRegister
64 bit MMX register.static final Register
No register, can be used only in @c Mem operand.static final Register
64 bit General purpose register (64 bit mode only).static final Register
8 bit General purpose register (64 bit mode only).static final Register
16 bit General purpose register (64 bit mode only).static final Register
64 bit General purpose register (64 bit mode only).static final Register
8 bit General purpose register (64 bit mode only).static final Register
16 bit General purpose register (64 bit mode only).static final Register
64 bit General purpose register (64 bit mode only).static final Register
8 bit General purpose register (64 bit mode only).static final Register
16 bit General purpose register (64 bit mode only).static final Register
64 bit General purpose register (64 bit mode only).static final Register
8 bit General purpose register (64 bit mode only).static final Register
16 bit General purpose register (64 bit mode only).static final Register
64 bit General purpose register (64 bit mode only).static final Register
8 bit General purpose register (64 bit mode only).static final Register
16 bit General purpose register (64 bit mode only).static final Register
64 bit General purpose register (64 bit mode only).static final Register
8 bit General purpose register (64 bit mode only).static final Register
16 bit General purpose register (64 bit mode only).static final Register
64 bit General purpose register (64 bit mode only).static final Register
8 bit General purpose register (64 bit mode only).static final Register
16 bit General purpose register (64 bit mode only).static final Register
64 bit General purpose register (64 bit mode only).static final Register
8 bit General purpose register (64 bit mode only).static final Register
16 bit General purpose register (64 bit mode only).static final Register
64 bit General purpose register (64 bit mode only).static final Register
64 bit General purpose register (64 bit mode only).static final Register
64 bit General purpose register (64 bit mode only).static final Register
64 bit General purpose register (64 bit mode only).static final Register
64 bit General purpose register (64 bit mode only).static final Register
64 bit General purpose register (64 bit mode only).static final Register
64 bit General purpose register (64 bit mode only).static final Register
64 bit General purpose register (64 bit mode only).static final Register
16 bit General purpose register.static final Register
16 bit General purpose register.static final CPU
static final CPU
static final XMMRegister
128 bit SSE register.static final XMMRegister
128 bit SSE register.static final XMMRegister
128 bit SSE register (64 bit mode only).static final XMMRegister
128 bit SSE register (64 bit mode only).static final XMMRegister
128 bit SSE register (64 bit mode only).static final XMMRegister
128 bit SSE register (64 bit mode only).static final XMMRegister
128 bit SSE register (64 bit mode only).static final XMMRegister
128 bit SSE register (64 bit mode only).static final XMMRegister
128 bit SSE register.static final XMMRegister
128 bit SSE register.static final XMMRegister
128 bit SSE register.static final XMMRegister
128 bit SSE register.static final XMMRegister
128 bit SSE register.static final XMMRegister
128 bit SSE register.static final XMMRegister
128 bit SSE register (64 bit mode only).static final XMMRegister
128 bit SSE register (64 bit mode only). -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescription(package private) static final Mem
_ptr_build
(Label label, long disp, int ptrSize) (package private) static final Mem
_ptr_build
(Label label, Register index, int shift, long disp, int ptrSize) (package private) static final Mem
_ptr_build
(Register base, long disp, int ptrSize) (package private) static final Mem
_ptr_build
(Register base, Register index, int shift, long disp, int ptrSize) (package private) static final Mem
_ptr_build_abs
(long target, long disp, SEGMENT segmentPrefix, int ptrSize) Absolute addressing(package private) static final Mem
_ptr_build_abs
(long target, Register index, int shift, long disp, SEGMENT segmentPrefix, int ptrSize) static final Mem
Create byte pointer operand.static final Mem
Create byte pointer operand.static final Mem
Create byte pointer operand.static final Mem
Create byte pointer operand.static final Mem
Create byte pointer operand.static final Mem
byte_ptr_abs
(long target, long disp, SEGMENT segmentPrefix) Create byte pointer operand.static final Mem
byte_ptr_abs
(long target, Register index, int shift, long disp, SEGMENT segmentPrefix) Create byte pointer operand.static final Mem
dqword_ptr
(Label label) Create dqword (16 Bytes) pointer operand.static final Mem
dqword_ptr
(Label label, long disp) Create dqword (16 Bytes) pointer operand.static final Mem
dqword_ptr
(Label label, Register index, int shift, long disp) Create dqword (16 Bytes) pointer operand.static final Mem
dqword_ptr
(Register base, long disp) Create dqword (16 Bytes) pointer operand.static final Mem
dqword_ptr
(Register base, Register index, int shift, long disp) Create dqword (16 Bytes) pointer operand.static final Mem
dqword_ptr_abs
(long target, long disp, SEGMENT segmentPrefix) Create dqword (16 Bytes) pointer operand.static final Mem
dqword_ptr_abs
(long target, Register index, int shift, long disp, SEGMENT segmentPrefix) Create dqword (16 Bytes) pointer operand.static final Mem
Create dword (4 Bytes) pointer operand.static final Mem
Create dword (4 Bytes) pointer operand.static final Mem
Create dword (4 Bytes) pointer operand.static final Mem
Create dword (4 Bytes) pointer operand.static final Mem
Create dword (4 Bytes) pointer operand.static final Mem
dword_ptr_abs
(long target, long disp, SEGMENT segmentPrefix) Create dword (4 Bytes) pointer operand.static final Mem
dword_ptr_abs
(long target, Register index, int shift, long disp, SEGMENT segmentPrefix) Create dword (4 Bytes) pointer operand.static final Immediate
imm
(long value) static final Mem
mmword_ptr
(Label label) Create mmword (8 bytes) pointer operand Note:This constructor is provided only for convenience for mmx programming.static final Mem
mmword_ptr
(Label label, long disp) Create mmword (8 bytes) pointer operand Note:This constructor is provided only for convenience for mmx programming.static final Mem
mmword_ptr
(Label label, Register index, int shift, long disp) Create mmword (8 bytes) pointer operand //! //! @note This constructor is provided only for convenience for mmx programming.static final Mem
mmword_ptr
(Register base, long disp) Create mmword (8 bytes) pointer operand //! //! @note This constructor is provided only for convenience for mmx programming.static final Mem
mmword_ptr
(Register base, Register index, int shift, long disp) Create mmword (8 Bytes) pointer operand).static final Mem
mmword_ptr_abs
(long target, long disp, SEGMENT segmentPrefix) Create mmword (8 bytes) pointer operand //! //! @note This constructor is provided only for convenience for mmx programming.static final Mem
mmword_ptr_abs
(long target, Register index, int shift, long disp, SEGMENT segmentPrefix) Create mmword (8 bytes) pointer operand //! //! @note This constructor is provided only for convenience for mmx programming.static final Mem
Create pointer operand with not specified size.static final Mem
Create pointer operand with not specified size.static final Mem
Create pointer operand with not specified size.static final Mem
Create pointer operand with not specified size.static final Mem
Create pointer operand with not specified size.static final Mem
Create pointer operand with not specified size.static final Mem
Create pointer operand with not specified size.static final Mem
Create qword (8 Bytes) pointer operand.static final Mem
Create qword (8 Bytes) pointer operand.static final Mem
Create qword (8 Bytes) pointer operand.static final Mem
Create qword (8 Bytes) pointer operand.static final Mem
Create qword (8 Bytes) pointer operand.static final Mem
qword_ptr_abs
(long target, long disp, SEGMENT segmentPrefix) Create qword (8 Bytes) pointer operand.static final Mem
qword_ptr_abs
(long target, Register index, int shift, long disp, SEGMENT segmentPrefix) Create qword (8 Bytes) pointer operand.static final Mem
Create tword (10 Bytes) pointer operand (used for 80 bit floating points).static final Mem
Create tword (10 Bytes) pointer operand (used for 80 bit floating points).static final Mem
Create tword (10 Bytes) pointer operand (used for 80 bit floating points).static final Mem
Create tword (10 Bytes) pointer operand (used for 80 bit floating points).static final Mem
Create tword (10 Bytes) pointer operand (used for 80 bit floating points).static final Mem
tword_ptr_abs
(long target, long disp, SEGMENT segmentPrefix) Create tword (10 Bytes) pointer operand (used for 80 bit floating points).static final Mem
tword_ptr_abs
(long target, Register index, int shift, long disp, SEGMENT segmentPrefix) Create tword (10 Bytes) pointer operand (used for 80 bit floating points).static final Immediate
uimm
(long value) static final Mem
Create word (2 Bytes) pointer operand.static final Mem
Create word (2 Bytes) pointer operand.static final Mem
Create word (2 Bytes) pointer operand.static final Mem
Create word (2 Bytes) pointer operand.static final Mem
Create word (2 Bytes) pointer operand.static final Mem
word_ptr_abs
(long target, long disp, SEGMENT segmentPrefix) Create word (2 Bytes) pointer operand.static final Mem
word_ptr_abs
(long target, Register index, int shift, long disp, SEGMENT segmentPrefix) Create word (2 Bytes) pointer operand.static final Mem
xmmword_ptr
(Label label) Create xmmword (16 bytes) pointer operand //! //! @note This constructor is provided only for convenience for sse programming.static final Mem
xmmword_ptr
(Label label, long disp) Create xmmword (16 bytes) pointer operand //! //! @note This constructor is provided only for convenience for sse programming.static final Mem
xmmword_ptr
(Label label, Register index, int shift, long disp) Create xmmword (16 bytes) pointer operand //! //! @note This constructor is provided only for convenience for sse programming.static final Mem
xmmword_ptr
(Register base, long disp) Create xmmword (16 bytes) pointer operand //! //! @note This constructor is provided only for convenience for sse programming.static final Mem
xmmword_ptr
(Register base, Register index, int shift, long disp) Create xmmword (16 Bytes) pointer operand.static final Mem
xmmword_ptr_abs
(long target, long disp, SEGMENT segmentPrefix) Create xmmword (16 bytes) pointer operand //! //! @note This constructor is provided only for convenience for sse programming.static final Mem
xmmword_ptr_abs
(long target, Register index, int shift, long disp, SEGMENT segmentPrefix) Create xmmword (16 bytes) pointer operand //! //! @note This constructor is provided only for convenience for sse programming.
-
Field Details
-
I386
Deprecated.UseX86_32
-
X86_32
-
X86_64
-
no_reg
No register, can be used only in @c Mem operand. -
al
8 bit General purpose register. -
cl
8 bit General purpose register. -
dl
8 bit General purpose register. -
bl
8 bit General purpose register. -
ah
8 bit General purpose register. -
ch
8 bit General purpose register. -
dh
8 bit General purpose register. -
bh
8 bit General purpose register. -
r8b
8 bit General purpose register (64 bit mode only). -
r9b
8 bit General purpose register (64 bit mode only). -
r10b
8 bit General purpose register (64 bit mode only). -
r11b
8 bit General purpose register (64 bit mode only). -
r12b
8 bit General purpose register (64 bit mode only). -
r13b
8 bit General purpose register (64 bit mode only). -
r14b
8 bit General purpose register (64 bit mode only). -
r15b
8 bit General purpose register (64 bit mode only). -
ax
16 bit General purpose register. -
cx
16 bit General purpose register. -
dx
16 bit General purpose register. -
bx
16 bit General purpose register. -
sp
16 bit General purpose register. -
bp
16 bit General purpose register. -
si
16 bit General purpose register. -
di
16 bit General purpose register. -
r8w
16 bit General purpose register (64 bit mode only). -
r9w
16 bit General purpose register (64 bit mode only). -
r10w
16 bit General purpose register (64 bit mode only). -
r11w
16 bit General purpose register (64 bit mode only). -
r12w
16 bit General purpose register (64 bit mode only). -
r13w
16 bit General purpose register (64 bit mode only). -
r14w
16 bit General purpose register (64 bit mode only). -
r15w
16 bit General purpose register (64 bit mode only). -
eax
32 bit General purpose register. -
ecx
32 bit General purpose register. -
edx
32 bit General purpose register. -
ebx
32 bit General purpose register. -
esp
32 bit General purpose register. -
ebp
32 bit General purpose register. -
esi
32 bit General purpose register. -
edi
32 bit General purpose register. -
rax
64 bit General purpose register (64 bit mode only). -
rcx
64 bit General purpose register (64 bit mode only). -
rdx
64 bit General purpose register (64 bit mode only). -
rbx
64 bit General purpose register (64 bit mode only). -
rsp
64 bit General purpose register (64 bit mode only). -
rbp
64 bit General purpose register (64 bit mode only). -
rsi
64 bit General purpose register (64 bit mode only). -
rdi
64 bit General purpose register (64 bit mode only). -
r8
64 bit General purpose register (64 bit mode only). -
r9
64 bit General purpose register (64 bit mode only). -
r10
64 bit General purpose register (64 bit mode only). -
r11
64 bit General purpose register (64 bit mode only). -
r12
64 bit General purpose register (64 bit mode only). -
r13
64 bit General purpose register (64 bit mode only). -
r14
64 bit General purpose register (64 bit mode only). -
r15
64 bit General purpose register (64 bit mode only). -
mm0
64 bit MMX register. -
mm1
64 bit MMX register. -
mm2
64 bit MMX register. -
mm3
64 bit MMX register. -
mm4
64 bit MMX register. -
mm5
64 bit MMX register. -
mm6
64 bit MMX register. -
mm7
64 bit MMX register. -
xmm0
128 bit SSE register. -
xmm1
128 bit SSE register. -
xmm2
128 bit SSE register. -
xmm3
128 bit SSE register. -
xmm4
128 bit SSE register. -
xmm5
128 bit SSE register. -
xmm6
128 bit SSE register. -
xmm7
128 bit SSE register. -
xmm8
128 bit SSE register (64 bit mode only). -
xmm9
128 bit SSE register (64 bit mode only). -
xmm10
128 bit SSE register (64 bit mode only). -
xmm11
128 bit SSE register (64 bit mode only). -
xmm12
128 bit SSE register (64 bit mode only). -
xmm13
128 bit SSE register (64 bit mode only). -
xmm14
128 bit SSE register (64 bit mode only). -
xmm15
128 bit SSE register (64 bit mode only).
-
-
Constructor Details
-
Asm
private Asm()
-
-
Method Details
-
_ptr_build
-
_ptr_build
-
_ptr_build_abs
Absolute addressing -
_ptr_build_abs
-
_ptr_build
-
_ptr_build
-
ptr
Create pointer operand with not specified size. -
ptr
Create pointer operand with not specified size. -
byte_ptr
Create byte pointer operand. -
byte_ptr
Create byte pointer operand. -
word_ptr
Create word (2 Bytes) pointer operand. -
word_ptr
Create word (2 Bytes) pointer operand. -
dword_ptr
Create dword (4 Bytes) pointer operand. -
dword_ptr
Create dword (4 Bytes) pointer operand. -
qword_ptr
Create qword (8 Bytes) pointer operand. -
qword_ptr
Create qword (8 Bytes) pointer operand. -
tword_ptr
Create tword (10 Bytes) pointer operand (used for 80 bit floating points). -
tword_ptr
Create tword (10 Bytes) pointer operand (used for 80 bit floating points). -
dqword_ptr
Create dqword (16 Bytes) pointer operand. -
dqword_ptr
Create dqword (16 Bytes) pointer operand. -
mmword_ptr
Create mmword (8 bytes) pointer operand Note:This constructor is provided only for convenience for mmx programming. -
mmword_ptr
Create mmword (8 bytes) pointer operand Note:This constructor is provided only for convenience for mmx programming. -
xmmword_ptr
Create xmmword (16 bytes) pointer operand //! //! @note This constructor is provided only for convenience for sse programming. -
xmmword_ptr
Create xmmword (16 bytes) pointer operand //! //! @note This constructor is provided only for convenience for sse programming. -
ptr
Create pointer operand with not specified size. -
byte_ptr
Create byte pointer operand. -
word_ptr
Create word (2 Bytes) pointer operand. -
dword_ptr
Create dword (4 Bytes) pointer operand. -
qword_ptr
Create qword (8 Bytes) pointer operand. -
tword_ptr
Create tword (10 Bytes) pointer operand (used for 80 bit floating points). -
dqword_ptr
Create dqword (16 Bytes) pointer operand. -
mmword_ptr
Create mmword (8 bytes) pointer operand //! //! @note This constructor is provided only for convenience for mmx programming. -
xmmword_ptr
Create xmmword (16 bytes) pointer operand //! //! @note This constructor is provided only for convenience for sse programming. -
ptr_abs
Create pointer operand with not specified size. -
byte_ptr_abs
Create byte pointer operand. -
word_ptr_abs
Create word (2 Bytes) pointer operand. -
dword_ptr_abs
Create dword (4 Bytes) pointer operand. -
qword_ptr_abs
Create qword (8 Bytes) pointer operand. -
tword_ptr_abs
Create tword (10 Bytes) pointer operand (used for 80 bit floating points). -
dqword_ptr_abs
Create dqword (16 Bytes) pointer operand. -
mmword_ptr_abs
Create mmword (8 bytes) pointer operand //! //! @note This constructor is provided only for convenience for mmx programming. -
xmmword_ptr_abs
Create xmmword (16 bytes) pointer operand //! //! @note This constructor is provided only for convenience for sse programming. -
ptr_abs
public static final Mem ptr_abs(long target, Register index, int shift, long disp, SEGMENT segmentPrefix) Create pointer operand with not specified size. -
byte_ptr_abs
public static final Mem byte_ptr_abs(long target, Register index, int shift, long disp, SEGMENT segmentPrefix) Create byte pointer operand. -
word_ptr_abs
public static final Mem word_ptr_abs(long target, Register index, int shift, long disp, SEGMENT segmentPrefix) Create word (2 Bytes) pointer operand. -
dword_ptr_abs
public static final Mem dword_ptr_abs(long target, Register index, int shift, long disp, SEGMENT segmentPrefix) Create dword (4 Bytes) pointer operand. -
qword_ptr_abs
public static final Mem qword_ptr_abs(long target, Register index, int shift, long disp, SEGMENT segmentPrefix) Create qword (8 Bytes) pointer operand. -
tword_ptr_abs
public static final Mem tword_ptr_abs(long target, Register index, int shift, long disp, SEGMENT segmentPrefix) Create tword (10 Bytes) pointer operand (used for 80 bit floating points). -
dqword_ptr_abs
public static final Mem dqword_ptr_abs(long target, Register index, int shift, long disp, SEGMENT segmentPrefix) Create dqword (16 Bytes) pointer operand. -
mmword_ptr_abs
public static final Mem mmword_ptr_abs(long target, Register index, int shift, long disp, SEGMENT segmentPrefix) Create mmword (8 bytes) pointer operand //! //! @note This constructor is provided only for convenience for mmx programming. -
xmmword_ptr_abs
public static final Mem xmmword_ptr_abs(long target, Register index, int shift, long disp, SEGMENT segmentPrefix) Create xmmword (16 bytes) pointer operand //! //! @note This constructor is provided only for convenience for sse programming. -
ptr
Create pointer operand with not specified size. -
byte_ptr
Create byte pointer operand. -
word_ptr
Create word (2 Bytes) pointer operand. -
dword_ptr
Create dword (4 Bytes) pointer operand. -
qword_ptr
Create qword (8 Bytes) pointer operand. -
tword_ptr
Create tword (10 Bytes) pointer operand (used for 80 bit floating points). -
dqword_ptr
Create dqword (16 Bytes) pointer operand. -
mmword_ptr
Create mmword (8 bytes) pointer operand //! //! @note This constructor is provided only for convenience for mmx programming. -
xmmword_ptr
Create xmmword (16 bytes) pointer operand //! //! @note This constructor is provided only for convenience for sse programming. -
ptr
Create pointer operand with not specified size. -
byte_ptr
Create byte pointer operand. -
word_ptr
Create word (2 Bytes) pointer operand. -
dword_ptr
Create dword (4 Bytes) pointer operand. -
qword_ptr
Create qword (8 Bytes) pointer operand. -
tword_ptr
Create tword (10 Bytes) pointer operand (used for 80 bit floating points). -
dqword_ptr
Create dqword (16 Bytes) pointer operand. -
mmword_ptr
Create mmword (8 Bytes) pointer operand). //! //! @note This constructor is provided only for convenience for mmx programming. -
xmmword_ptr
Create xmmword (16 Bytes) pointer operand. //! //! @note This constructor is provided only for convenience for sse programming. -
imm
-
uimm
-
X86_32