Skip to main content

Module asm

Module asm 

Source
Expand description

Re-exports the assembler used by InjectionBuilder::asm.

This is [iced_x86]’s code_asm module (CodeAssembler, register constants such as rax and xmm0, operand helpers such as qword_ptr) plus IcedError.

Modules§

asm_traits
registers
This module contains all registers that can be used.

Structs§

AsmMemoryOperand
A memory operand passed to CodeAssembler methods.
AsmRegister8
All 8-bit general purpose registers.
AsmRegister16
All 16-bit general purpose registers.
AsmRegister32
All 32-bit general purpose registers.
AsmRegister64
All 64-bit general purpose registers.
AsmRegisterBnd
All bound registers.
AsmRegisterCr
All control registers.
AsmRegisterDr
All debug registers.
AsmRegisterK
All opmask registers.
AsmRegisterMm
All MMX registers.
AsmRegisterSegment
All segment registers.
AsmRegisterSt
All FPU registers.
AsmRegisterTmm
All tile registers.
AsmRegisterTr
All test registers.
AsmRegisterXmm
All 128-bit vector registers (XMM).
AsmRegisterYmm
All 256-bit vector registers (YMM).
AsmRegisterZmm
All 512-bit vector registers (ZMM).
CodeAssembler
Creates and encodes instructions. It’s easier to use this struct than to call Instruction::with*() functions.
CodeAssemblerResult
Result of assembling the instructions
CodeLabel
A label created by CodeAssembler
IcedError
iced error

Constants§

ah
al
ax
bh
bl
bnd0
bnd1
bnd2
bnd3
bp
bpl
bx
ch
cl
cr0
cr1
cr2
cr3
cr4
cr5
cr6
cr7
cr8
cr9
cr10
cr11
cr12
cr13
cr14
cr15
cs
cx
dh
di
dil
dl
dr0
dr1
dr2
dr3
dr4
dr5
dr6
dr7
dr8
dr9
dr10
dr11
dr12
dr13
dr14
dr15
ds
dx
eax
ebp
ebx
ecx
edi
edx
es
esi
esp
fs
gs
k0
k1
k2
k3
k4
k5
k6
k7
mm0
mm1
mm2
mm3
mm4
mm5
mm6
mm7
r8
r9
r8b
r8d
r8w
r9b
r9d
r9w
r10
r11
r12
r13
r14
r15
r10b
r10d
r10w
r11b
r11d
r11w
r12b
r12d
r12w
r13b
r13d
r13w
r14b
r14d
r14w
r15b
r15d
r15w
rax
rbp
rbx
rcx
rdi
rdx
rsi
rsp
si
sil
sp
spl
ss
st0
st1
st2
st3
st4
st5
st6
st7
tmm0
tmm1
tmm2
tmm3
tmm4
tmm5
tmm6
tmm7
tr0
tr1
tr2
tr3
tr4
tr5
tr6
tr7
xmm0
xmm1
xmm2
xmm3
xmm4
xmm5
xmm6
xmm7
xmm8
xmm9
xmm10
xmm11
xmm12
xmm13
xmm14
xmm15
xmm16
xmm17
xmm18
xmm19
xmm20
xmm21
xmm22
xmm23
xmm24
xmm25
xmm26
xmm27
xmm28
xmm29
xmm30
xmm31
ymm0
ymm1
ymm2
ymm3
ymm4
ymm5
ymm6
ymm7
ymm8
ymm9
ymm10
ymm11
ymm12
ymm13
ymm14
ymm15
ymm16
ymm17
ymm18
ymm19
ymm20
ymm21
ymm22
ymm23
ymm24
ymm25
ymm26
ymm27
ymm28
ymm29
ymm30
ymm31
zmm0
zmm1
zmm2
zmm3
zmm4
zmm5
zmm6
zmm7
zmm8
zmm9
zmm10
zmm11
zmm12
zmm13
zmm14
zmm15
zmm16
zmm17
zmm18
zmm19
zmm20
zmm21
zmm22
zmm23
zmm24
zmm25
zmm26
zmm27
zmm28
zmm29
zmm30
zmm31

Functions§

bcst
Creates a broadcast memory operand with no size hint
byte_ptr
Creates a memory operand with a BYTE PTR size hint
dword_bcst
Creates a broadcast memory operand with a DWORD BCST size hint
dword_ptr
Creates a memory operand with a DWORD PTR size hint
fword_ptr
Creates a memory operand with an FWORD PTR size hint
get_bnd
Gets a BND register or None if input is invalid.
get_cr
Gets a CR register or None if input is invalid.
get_dr
Gets a DR register or None if input is invalid.
get_gpr8
Gets a GPR8 register or None if input is invalid.
get_gpr16
Gets a GPR16 register or None if input is invalid.
get_gpr32
Gets a GPR32 register or None if input is invalid.
get_gpr64
Gets a GPR64 register or None if input is invalid.
get_k
Gets a K register or None if input is invalid.
get_mm
Gets an MM register or None if input is invalid.
get_segment
Gets a SEGMENT register or None if input is invalid.
get_st
Gets an ST register or None if input is invalid.
get_tmm
Gets a TMM register or None if input is invalid.
get_tr
Gets a TR register or None if input is invalid.
get_xmm
Gets an XMM register or None if input is invalid.
get_ymm
Gets a YMM register or None if input is invalid.
get_zmm
Gets a ZMM register or None if input is invalid.
mmword_ptr
Creates a memory operand with an MMWORD PTR size hint
oword_ptr
Creates a memory operand with an OWORD PTR size hint
ptr
Creates a memory operand with no size hint
qword_bcst
Creates a broadcast memory operand with a QWORD BCST size hint
qword_ptr
Creates a memory operand with a QWORD PTR size hint
tbyte_ptr
Creates a memory operand with a TBYTE PTR size hint
tword_ptr
Creates a memory operand with a TWORD PTR size hint
word_bcst
Creates a broadcast memory operand with a WORD BCST size hint
word_ptr
Creates a memory operand with a WORD PTR size hint
xmmword_ptr
Creates a memory operand with an XMMWORD PTR size hint
ymmword_ptr
Creates a memory operand with a YMMWORD PTR size hint
zmmword_ptr
Creates a memory operand with a ZMMWORD PTR size hint