Commit Graph

22 Commits (1eb1c9d0d2f2ec9cd997d457a0b4b8906bf04254)

Author SHA1 Message Date
Andrei Vlad LUTAS 1eb1c9d0d2 Fixed https://github.com/bitdefender/bddisasm/issues/38.
3 years ago
Andrei Vlad LUTAS 98ea9e1d9a Fixed https://github.com/bitdefender/bddisasm/issues/34, https://github.com/bitdefender/bddisasm/issues/35, https://github.com/bitdefender/bddisasm/issues/36 and https://github.com/bitdefender/bddisasm/issues/37.
3 years ago
Andrei Vlad LUTAS f8a3011a49 Added support for AESDEC, AESDECLAST and AESIMC emulation, using compiler intrinsics - they will be used only if the SHEMU_OPT_SUPPORT_AES is set (so the integrator can properly check for AES-NI support in hardware).
3 years ago
Andrei Vlad LUTAS e89f56289d As per Intel SDM version 73 released in November 2020, make sure we don't decode 32-bit EVEX instructions that have EVEX.V' cleared, and 64-bit EVEX instructions that don't use EVEX.V' field, but have it cleared.
3 years ago
Andrei Vlad LUTAS 58197cc518 Removed support for PCOMMIT and CL1INVMB (not implemented by any x86/x64 CPUs), and marked MOV to/from test registers as being invalid in long mode.
4 years ago
Andrei Vlad LUTAS bcf9a89d69 Fixed https://github.com/bitdefender/bddisasm/issues/22 and https://github.com/bitdefender/bddisasm/issues/23.
4 years ago
Andrei Vlad LUTAS e26971b4f0 Added missing Default 64 flag for the ENTER instruction.
4 years ago
Andrei Vlad LUTAS 9652450125 Added support for UINTR, HRESET and AVX-VNNI instructions, as per Intel® Architecture Instruction Set Extensions Programming Reference 41 (October 2020).
4 years ago
Andrei Vlad LUTAS 4f8b030ddd Added support for Intel Key Locker instructions, as per https://software.intel.com/content/www/us/en/develop/download/intel-key-locker-specification.html.
4 years ago
Andrei Vlad LUTAS 33078e4670 Added support for TDX instructions, per https://software.intel.com/content/dam/develop/external/us/en/documents/intel-tdx-cpu-architectural-specification.pdf.
4 years ago
Andrei Vlad LUTAS ea28907359 Fix potential division error in bdshemu, when the destination operand is not large enough to hold the result.
4 years ago
Andrei Vlad LUTAS 1d43b7b1ba Improved stack string detection heuristic: only consider registers which have been modified during emulation; registers which were provided as "input" can be ignored, as they most likely contain addresses or other data relevant to the emulated code. We are only interested in string dynamically built during our emulation.
4 years ago
Andrei Vlad LUTAS ed564dba32 Specifically flag multi-byte NOP operands as not-accessed.
4 years ago
Andrei Vlad LUTAS 144baa5140 Renamed REG_* fields to NDR_*, so that we don't conflict with _GNU_SOURCES.
4 years ago
Ionel-Cristinel ANICHITEI 049ecc0ab7 Don't use reserved identifiers for include guards
4 years ago
Andrei Vlad LUTAS d622f56211 Added SERIAL flag to the SERIALIZE instruction.
4 years ago
Andrei Vlad LUTAS 4b2f2aee66 Added dedicated Prefetch operand access type.
4 years ago
Andrei Vlad LUTAS cfb0f97897 Truncate the output of a relative addressing if 0x67 prefix is used.
4 years ago
Andrei Vlad LUTAS 752bc626c4 Fixed RET with immediate - the immediate is not sign-extended.
4 years ago
Andrei Vlad LUTAS 8392c97f97 Use the documented byte granularity for cache-line accesses.
4 years ago
Andrei Vlad LUTAS 811c3d0f7c Fixed several issues with CET instructions specification - shadow stack and shadow stack pointer implicit operands were missing from SETSSBSY instruction, and flags access was missing from them.
4 years ago
Andrei Vlad LUTAS 698ba367a1 Initial commit.
4 years ago