asmjit::x86::InstDB::InstInfo Struct Reference

Instruction information (X86).

Public Members

Member Functions

Member Function Documentation

const CommonInfo& x86::InstDB::InstInfo::commonInfo() constnoexcept

Returns common information, see CommonInfo.

bool x86::InstDB::InstInfo::hasFlag(uint32_t flag) constnoexcept

Tests whether the instruction has flag flag, see Flags.

uint32_t x86::InstDB::InstInfo::flags() constnoexcept

Returns instruction flags, see Flags.

bool x86::InstDB::InstInfo::isFpu() constnoexcept

Tests whether the instruction is FPU instruction.

bool x86::InstDB::InstInfo::isMmx() constnoexcept

Tests whether the instruction is MMX/3DNOW instruction that accesses MMX registers (includes EMMS and FEMMS).

bool x86::InstDB::InstInfo::isVec() constnoexcept

Tests whether the instruction is SSE|AVX|AVX512 instruction that accesses XMM|YMM|ZMM registers.

bool x86::InstDB::InstInfo::isSse() constnoexcept

Tests whether the instruction is SSE+ (SSE4.2, AES, SHA included) instruction that accesses XMM registers.

bool x86::InstDB::InstInfo::isAvx() constnoexcept

Tests whether the instruction is AVX+ (FMA included) instruction that accesses XMM|YMM|ZMM registers.

bool x86::InstDB::InstInfo::hasLockPrefix() constnoexcept

Tests whether the instruction can be prefixed with LOCK prefix.

bool x86::InstDB::InstInfo::hasRepPrefix() constnoexcept

Tests whether the instruction can be prefixed with REP (REPE|REPZ) prefix.

bool x86::InstDB::InstInfo::hasXAcquirePrefix() constnoexcept

Tests whether the instruction can be prefixed with XACQUIRE prefix.

bool x86::InstDB::InstInfo::hasXReleasePrefix() constnoexcept

Tests whether the instruction can be prefixed with XRELEASE prefix.

bool x86::InstDB::InstInfo::isRepIgnored() constnoexcept

Tests whether the rep prefix is supported by the instruction, but ignored (has no effect).

bool x86::InstDB::InstInfo::isMibOp() constnoexcept

Tests whether the instruction uses MIB.

bool x86::InstDB::InstInfo::isVsibOp() constnoexcept

Tests whether the instruction uses VSIB.

bool x86::InstDB::InstInfo::isVex() constnoexcept

Tests whether the instruction uses VEX (can be set together with EVEX if both are encodable).

bool x86::InstDB::InstInfo::isEvex() constnoexcept

Tests whether the instruction uses EVEX (can be set together with VEX if both are encodable).

bool x86::InstDB::InstInfo::isVexOrEvex() constnoexcept

Tests whether the instruction uses EVEX (can be set together with VEX if both are encodable).

bool x86::InstDB::InstInfo::hasAvx512K() constnoexcept

Tests whether the instruction supports AVX512 masking {k}.

bool x86::InstDB::InstInfo::hasAvx512Z() constnoexcept

Tests whether the instruction supports AVX512 zeroing {k}{z}.

bool x86::InstDB::InstInfo::hasAvx512ER() constnoexcept

Tests whether the instruction supports AVX512 embedded-rounding {er}.

bool x86::InstDB::InstInfo::hasAvx512SAE() constnoexcept

Tests whether the instruction supports AVX512 suppress-all-exceptions {sae}.

bool x86::InstDB::InstInfo::hasAvx512B() constnoexcept

Tests whether the instruction supports AVX512 broadcast (either 32-bit or 64-bit).

bool x86::InstDB::InstInfo::hasAvx512B32() constnoexcept

Tests whether the instruction supports AVX512 broadcast (32-bit).

bool x86::InstDB::InstInfo::hasAvx512B64() constnoexcept

Tests whether the instruction supports AVX512 broadcast (64-bit).

uint32_t x86::InstDB::InstInfo::controlType() constnoexcept

Gets the control-flow type of the instruction.

Member Data Documentation

uint32_t x86::InstDB::InstInfo::_nameDataIndex

Index to _nameData.

uint32_t x86::InstDB::InstInfo::_commonInfoIndex

Index to _commonInfoTable.

uint32_t x86::InstDB::InstInfo::_commonInfoIndexB

Index to _commonInfoTableB.

uint8_t x86::InstDB::InstInfo::_encoding

Instruction encoding (internal encoding identifier used by Assembler).

uint8_t x86::InstDB::InstInfo::_mainOpcodeValue

Main opcode value (0..255).

uint8_t x86::InstDB::InstInfo::_mainOpcodeIndex

Index to _mainOpcodeTable` that is combined with _mainOpcodeValue to form the final opcode.

uint8_t x86::InstDB::InstInfo::_altOpcodeIndex

Index to _altOpcodeTable that contains a full alternative opcode.