1 /** 2 * @brief Defines the `ZydisInstructionCategory` enum. 3 */ 4 typedef enum ZydisInstructionCategory_ 5 { 6 ZYDIS_CATEGORY_INVALID, 7 ZYDIS_CATEGORY_ADOX_ADCX, 8 ZYDIS_CATEGORY_AES, 9 ZYDIS_CATEGORY_AMD3DNOW, 10 ZYDIS_CATEGORY_AVX, 11 ZYDIS_CATEGORY_AVX2, 12 ZYDIS_CATEGORY_AVX2GATHER, 13 ZYDIS_CATEGORY_AVX512, 14 ZYDIS_CATEGORY_AVX512_4FMAPS, 15 ZYDIS_CATEGORY_AVX512_4VNNIW, 16 ZYDIS_CATEGORY_AVX512_BITALG, 17 ZYDIS_CATEGORY_AVX512_VBMI, 18 ZYDIS_CATEGORY_AVX512_VP2INTERSECT, 19 ZYDIS_CATEGORY_BINARY, 20 ZYDIS_CATEGORY_BITBYTE, 21 ZYDIS_CATEGORY_BLEND, 22 ZYDIS_CATEGORY_BMI1, 23 ZYDIS_CATEGORY_BMI2, 24 ZYDIS_CATEGORY_BROADCAST, 25 ZYDIS_CATEGORY_CALL, 26 ZYDIS_CATEGORY_CET, 27 ZYDIS_CATEGORY_CLDEMOTE, 28 ZYDIS_CATEGORY_CLFLUSHOPT, 29 ZYDIS_CATEGORY_CLWB, 30 ZYDIS_CATEGORY_CLZERO, 31 ZYDIS_CATEGORY_CMOV, 32 ZYDIS_CATEGORY_COMPRESS, 33 ZYDIS_CATEGORY_COND_BR, 34 ZYDIS_CATEGORY_CONFLICT, 35 ZYDIS_CATEGORY_CONVERT, 36 ZYDIS_CATEGORY_DATAXFER, 37 ZYDIS_CATEGORY_DECIMAL, 38 ZYDIS_CATEGORY_ENQCMD, 39 ZYDIS_CATEGORY_EXPAND, 40 ZYDIS_CATEGORY_FCMOV, 41 ZYDIS_CATEGORY_FLAGOP, 42 ZYDIS_CATEGORY_FMA4, 43 ZYDIS_CATEGORY_GATHER, 44 ZYDIS_CATEGORY_GFNI, 45 ZYDIS_CATEGORY_IFMA, 46 ZYDIS_CATEGORY_INTERRUPT, 47 ZYDIS_CATEGORY_IO, 48 ZYDIS_CATEGORY_IOSTRINGOP, 49 ZYDIS_CATEGORY_KMASK, 50 ZYDIS_CATEGORY_KNC, 51 ZYDIS_CATEGORY_KNCMASK, 52 ZYDIS_CATEGORY_KNCSCALAR, 53 ZYDIS_CATEGORY_LOGICAL, 54 ZYDIS_CATEGORY_LOGICAL_FP, 55 ZYDIS_CATEGORY_LZCNT, 56 ZYDIS_CATEGORY_MISC, 57 ZYDIS_CATEGORY_MMX, 58 ZYDIS_CATEGORY_MOVDIR, 59 ZYDIS_CATEGORY_MPX, 60 ZYDIS_CATEGORY_NOP, 61 ZYDIS_CATEGORY_PADLOCK, 62 ZYDIS_CATEGORY_PCLMULQDQ, 63 ZYDIS_CATEGORY_PCONFIG, 64 ZYDIS_CATEGORY_PKU, 65 ZYDIS_CATEGORY_POP, 66 ZYDIS_CATEGORY_PREFETCH, 67 ZYDIS_CATEGORY_PREFETCHWT1, 68 ZYDIS_CATEGORY_PT, 69 ZYDIS_CATEGORY_PUSH, 70 ZYDIS_CATEGORY_RDPID, 71 ZYDIS_CATEGORY_RDPRU, 72 ZYDIS_CATEGORY_RDRAND, 73 ZYDIS_CATEGORY_RDSEED, 74 ZYDIS_CATEGORY_RDWRFSGS, 75 ZYDIS_CATEGORY_RET, 76 ZYDIS_CATEGORY_ROTATE, 77 ZYDIS_CATEGORY_SCATTER, 78 ZYDIS_CATEGORY_SEGOP, 79 ZYDIS_CATEGORY_SEMAPHORE, 80 ZYDIS_CATEGORY_SETCC, 81 ZYDIS_CATEGORY_SGX, 82 ZYDIS_CATEGORY_SHA, 83 ZYDIS_CATEGORY_SHIFT, 84 ZYDIS_CATEGORY_SMAP, 85 ZYDIS_CATEGORY_SSE, 86 ZYDIS_CATEGORY_STRINGOP, 87 ZYDIS_CATEGORY_STTNI, 88 ZYDIS_CATEGORY_SYSCALL, 89 ZYDIS_CATEGORY_SYSRET, 90 ZYDIS_CATEGORY_SYSTEM, 91 ZYDIS_CATEGORY_TBM, 92 ZYDIS_CATEGORY_UFMA, 93 ZYDIS_CATEGORY_UNCOND_BR, 94 ZYDIS_CATEGORY_VAES, 95 ZYDIS_CATEGORY_VBMI2, 96 ZYDIS_CATEGORY_VFMA, 97 ZYDIS_CATEGORY_VPCLMULQDQ, 98 ZYDIS_CATEGORY_VTX, 99 ZYDIS_CATEGORY_WAITPKG, 100 ZYDIS_CATEGORY_WIDENOP, 101 ZYDIS_CATEGORY_X87_ALU, 102 ZYDIS_CATEGORY_XOP, 103 ZYDIS_CATEGORY_XSAVE, 104 ZYDIS_CATEGORY_XSAVEOPT, 105 106 /** 107 * @brief Maximum value of this enum. 108 */ 109 ZYDIS_CATEGORY_MAX_VALUE = ZYDIS_CATEGORY_XSAVEOPT, 110 /** 111 * @brief The minimum number of bits required to represent all values of this enum. 112 */ 113 ZYDIS_CATEGORY_REQUIRED_BITS = ZYAN_BITS_TO_REPRESENT(ZYDIS_CATEGORY_MAX_VALUE) 114 } ZydisInstructionCategory; 115