mirror of https://github.com/x64dbg/zydis
Added some undocumented `PREFETCH` instructions
This commit is contained in:
parent
626d0bc238
commit
e314c71db3
|
@ -33,10 +33,10 @@
|
|||
* the condition encoded in the immediate operand).
|
||||
*/
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <inttypes.h>
|
||||
#include <Zydis/Zydis.h>
|
||||
#include "FormatHelper.h"
|
||||
#include <stdlib.h>
|
||||
|
||||
/* ============================================================================================== */
|
||||
/* Static data */
|
||||
|
|
|
@ -588,7 +588,7 @@ enum ZydisMnemonics
|
|||
ZYDIS_MNEMONIC_POPFD,
|
||||
ZYDIS_MNEMONIC_POPFQ,
|
||||
ZYDIS_MNEMONIC_POR,
|
||||
ZYDIS_MNEMONIC_PREFETCH_EXCLUSIVE,
|
||||
ZYDIS_MNEMONIC_PREFETCH,
|
||||
ZYDIS_MNEMONIC_PREFETCHNTA,
|
||||
ZYDIS_MNEMONIC_PREFETCHT0,
|
||||
ZYDIS_MNEMONIC_PREFETCHT1,
|
||||
|
|
|
@ -50,7 +50,7 @@ typedef uint32_t ZydisStatus;
|
|||
/**
|
||||
* @brief Values that represent a zydis status-codes.
|
||||
*/
|
||||
enum ZydisStatusCode
|
||||
enum ZydisStatusCodes
|
||||
{
|
||||
/* ------------------------------------------------------------------------------------------ */
|
||||
/* General */
|
||||
|
|
File diff suppressed because one or more lines are too long
|
@ -580,7 +580,7 @@ static const char* zydisMnemonicStrings[] =
|
|||
"popfd",
|
||||
"popfq",
|
||||
"por",
|
||||
"prefetch_exclusive",
|
||||
"prefetch",
|
||||
"prefetchnta",
|
||||
"prefetcht0",
|
||||
"prefetcht1",
|
||||
|
|
|
@ -1284,13 +1284,12 @@ const ZydisInstructionDefinitionDEFAULT instructionDefinitionsDEFAULT[] =
|
|||
{ ZYDIS_MNEMONIC_POR, 2, 0xC82, 0, 0x4, ZYDIS_FALSE, ZYDIS_TRUE, ZYDIS_CATEGORY_LOGICAL, ZYDIS_ISA_SET_MMX, ZYDIS_ISA_EXT_PENTIUMMMX, ZYDIS_EXCEPTION_CLASS_NONE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_TRUE },
|
||||
{ ZYDIS_MNEMONIC_POR, 2, 0xC85, 0, 0x4, ZYDIS_FALSE, ZYDIS_TRUE, ZYDIS_CATEGORY_LOGICAL, ZYDIS_ISA_SET_SSE2, ZYDIS_ISA_EXT_SSE2, ZYDIS_EXCEPTION_CLASS_SSE4, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE },
|
||||
{ ZYDIS_MNEMONIC_POR, 2, 0xC88, 0, 0x4, ZYDIS_FALSE, ZYDIS_TRUE, ZYDIS_CATEGORY_LOGICAL, ZYDIS_ISA_SET_SSE2, ZYDIS_ISA_EXT_SSE2, ZYDIS_EXCEPTION_CLASS_SSE4, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_TRUE },
|
||||
{ ZYDIS_MNEMONIC_PREFETCH_EXCLUSIVE, 1, 0x1956, 0, 0x4, ZYDIS_FALSE, ZYDIS_TRUE, ZYDIS_CATEGORY_PREFETCH, ZYDIS_ISA_SET_AMD3DNOW, ZYDIS_ISA_EXT_PREFETCH_NOP, ZYDIS_EXCEPTION_CLASS_NONE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_TRUE },
|
||||
{ ZYDIS_MNEMONIC_PREFETCH, 1, 0x1956, 0, 0x4, ZYDIS_FALSE, ZYDIS_TRUE, ZYDIS_CATEGORY_PREFETCH, ZYDIS_ISA_SET_AMD3DNOW, ZYDIS_ISA_EXT_PREFETCH_NOP, ZYDIS_EXCEPTION_CLASS_NONE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_TRUE },
|
||||
{ ZYDIS_MNEMONIC_PREFETCHNTA, 1, 0x1956, 0, 0x4, ZYDIS_FALSE, ZYDIS_TRUE, ZYDIS_CATEGORY_PREFETCH, ZYDIS_ISA_SET_SSE, ZYDIS_ISA_EXT_SSE_PREFETCH, ZYDIS_EXCEPTION_CLASS_NONE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_TRUE },
|
||||
{ ZYDIS_MNEMONIC_PREFETCHT0, 1, 0x1956, 0, 0x4, ZYDIS_FALSE, ZYDIS_TRUE, ZYDIS_CATEGORY_PREFETCH, ZYDIS_ISA_SET_SSE, ZYDIS_ISA_EXT_SSE_PREFETCH, ZYDIS_EXCEPTION_CLASS_NONE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_TRUE },
|
||||
{ ZYDIS_MNEMONIC_PREFETCHT1, 1, 0x1956, 0, 0x4, ZYDIS_FALSE, ZYDIS_TRUE, ZYDIS_CATEGORY_PREFETCH, ZYDIS_ISA_SET_SSE, ZYDIS_ISA_EXT_SSE_PREFETCH, ZYDIS_EXCEPTION_CLASS_NONE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_TRUE },
|
||||
{ ZYDIS_MNEMONIC_PREFETCHT2, 1, 0x1956, 0, 0x4, ZYDIS_FALSE, ZYDIS_TRUE, ZYDIS_CATEGORY_PREFETCH, ZYDIS_ISA_SET_SSE, ZYDIS_ISA_EXT_SSE_PREFETCH, ZYDIS_EXCEPTION_CLASS_NONE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_TRUE },
|
||||
{ ZYDIS_MNEMONIC_PREFETCHW, 1, 0x1956, 0, 0x4, ZYDIS_FALSE, ZYDIS_TRUE, ZYDIS_CATEGORY_PREFETCH, ZYDIS_ISA_SET_AMD3DNOW, ZYDIS_ISA_EXT_PREFETCH_NOP, ZYDIS_EXCEPTION_CLASS_NONE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_TRUE },
|
||||
{ ZYDIS_MNEMONIC_PREFETCHW, 1, 0x1956, 0, 0x4, ZYDIS_FALSE, ZYDIS_TRUE, ZYDIS_CATEGORY_PREFETCH, ZYDIS_ISA_SET_AMD3DNOW, ZYDIS_ISA_EXT_PREFETCH_NOP, ZYDIS_EXCEPTION_CLASS_NONE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_TRUE },
|
||||
{ ZYDIS_MNEMONIC_PREFETCHWT1, 1, 0x4A1, 0, 0x4, ZYDIS_FALSE, ZYDIS_TRUE, ZYDIS_CATEGORY_PREFETCHWT1, ZYDIS_ISA_SET_PREFETCHWT1, ZYDIS_ISA_EXT_PREFETCHWT1, ZYDIS_EXCEPTION_CLASS_NONE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_TRUE },
|
||||
{ ZYDIS_MNEMONIC_PSADBW, 2, 0xC7F, 0, 0x4, ZYDIS_FALSE, ZYDIS_TRUE, ZYDIS_CATEGORY_MMX, ZYDIS_ISA_SET_MMX, ZYDIS_ISA_EXT_PENTIUMMMX, ZYDIS_EXCEPTION_CLASS_NONE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE },
|
||||
{ ZYDIS_MNEMONIC_PSADBW, 2, 0xC82, 0, 0x4, ZYDIS_FALSE, ZYDIS_TRUE, ZYDIS_CATEGORY_MMX, ZYDIS_ISA_SET_MMX, ZYDIS_ISA_EXT_PENTIUMMMX, ZYDIS_EXCEPTION_CLASS_NONE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_FALSE, ZYDIS_TRUE },
|
||||
|
|
|
@ -26,7 +26,8 @@
|
|||
|
||||
/**
|
||||
* @file
|
||||
* @brief TODO
|
||||
* @brief Disassembles a given hex-buffer and prints detailed information about the decoded
|
||||
* instruction, the operands and additional attributes.
|
||||
*/
|
||||
|
||||
#include <stdlib.h>
|
||||
|
@ -578,7 +579,7 @@ int main(int argc, char** argv)
|
|||
|
||||
if (argc < 3)
|
||||
{
|
||||
fputs("Usage: ZydisInfo -[16|32|64] [hexbytes]\n", stderr);
|
||||
fputs("Usage: ZydisInfo -[real|16|32|64] [hexbytes]\n", stderr);
|
||||
return ZYDIS_STATUS_INVALID_PARAMETER;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue