IndexX86 Backendasmjit::x86::InstDB::CommonInfo
asmjit::x86::InstDB::CommonInfo Struct Reference

Instruction common information.

Aggregated information shared across one or more instruction.

Public Members

Member Functions

Accessors

InstFlags x86::InstDB::CommonInfo::flags() constnoexcept[¶]

Returns instruction flags.

bool x86::InstDB::CommonInfo::hasFlag() constnoexcept[¶]

Tests whether the instruction has a flag.

Avx512Flags x86::InstDB::CommonInfo::avx512Flags() constnoexcept[¶]

Returns instruction AVX-512 flags.

bool x86::InstDB::CommonInfo::hasAvx512Flag() constnoexcept[¶]

Tests whether the instruction has an AVX-512 flag.

bool x86::InstDB::CommonInfo::isFpu() constnoexcept[¶]

Tests whether the instruction is FPU instruction.

bool x86::InstDB::CommonInfo::isMmx() constnoexcept[¶]

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

bool x86::InstDB::CommonInfo::isVec() constnoexcept[¶]

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

bool x86::InstDB::CommonInfo::isSse() constnoexcept[¶]

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

bool x86::InstDB::CommonInfo::isAvx() constnoexcept[¶]

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

bool x86::InstDB::CommonInfo::hasLockPrefix() constnoexcept[¶]

Tests whether the instruction can be prefixed with LOCK prefix.

bool x86::InstDB::CommonInfo::hasRepPrefix() constnoexcept[¶]

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

bool x86::InstDB::CommonInfo::hasXAcquirePrefix() constnoexcept[¶]

Tests whether the instruction can be prefixed with XACQUIRE prefix.

bool x86::InstDB::CommonInfo::hasXReleasePrefix() constnoexcept[¶]

Tests whether the instruction can be prefixed with XRELEASE prefix.

bool x86::InstDB::CommonInfo::isRepIgnored() constnoexcept[¶]

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

bool x86::InstDB::CommonInfo::isMibOp() constnoexcept[¶]

Tests whether the instruction uses MIB.

bool x86::InstDB::CommonInfo::isVsibOp() constnoexcept[¶]

Tests whether the instruction uses VSIB.

bool x86::InstDB::CommonInfo::isTsibOp() constnoexcept[¶]

Tests whether the instruction uses TSIB (AMX, instruction requires MOD+SIB).

bool x86::InstDB::CommonInfo::isVex() constnoexcept[¶]

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

bool x86::InstDB::CommonInfo::isEvex() constnoexcept[¶]

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

bool x86::InstDB::CommonInfo::isVexOrEvex() constnoexcept[¶]

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

bool x86::InstDB::CommonInfo::preferEvex() constnoexcept[¶]

Tests whether the instruction should prefer EVEX prefix instead of VEX prefix.

bool x86::InstDB::CommonInfo::hasAvx512K() constnoexcept[¶]

Tests whether the instruction supports AVX512 masking {k}.

bool x86::InstDB::CommonInfo::hasAvx512Z() constnoexcept[¶]

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

bool x86::InstDB::CommonInfo::hasAvx512ER() constnoexcept[¶]

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

bool x86::InstDB::CommonInfo::hasAvx512SAE() constnoexcept[¶]

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

bool x86::InstDB::CommonInfo::hasAvx512B() constnoexcept[¶]

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

bool x86::InstDB::CommonInfo::hasAvx512B16() constnoexcept[¶]

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

bool x86::InstDB::CommonInfo::hasAvx512B32() constnoexcept[¶]

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

bool x86::InstDB::CommonInfo::hasAvx512B64() constnoexcept[¶]

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

InstControlFlow x86::InstDB::CommonInfo::controlFlow() constnoexcept[¶]

Returns a control flow category of the instruction.

InstSameRegHint x86::InstDB::CommonInfo::sameRegHint() constnoexcept[¶]

Returns a hint that can be used when both inputs are the same register.

uint32_t x86::InstDB::CommonInfo::_flags[¶]

Instruction flags.

uint32_t x86::InstDB::CommonInfo::_avx512Flags[¶]

Reserved for future use.

uint32_t x86::InstDB::CommonInfo::_iSignatureIndex[¶]

First InstSignature entry in the database.

uint32_t x86::InstDB::CommonInfo::_iSignatureCount[¶]

Number of relevant ISignature entries.

uint32_t x86::InstDB::CommonInfo::_controlFlow[¶]

Instruction control flow category, see InstControlFlow.

uint32_t x86::InstDB::CommonInfo::_sameRegHint[¶]

Specifies what happens if all source operands share the same register.