aboutsummaryrefslogtreecommitdiff
path: root/opcodes/i386-gen.c
diff options
context:
space:
mode:
Diffstat (limited to 'opcodes/i386-gen.c')
-rw-r--r--opcodes/i386-gen.c695
1 files changed, 349 insertions, 346 deletions
diff --git a/opcodes/i386-gen.c b/opcodes/i386-gen.c
index 101f686..f616318 100644
--- a/opcodes/i386-gen.c
+++ b/opcodes/i386-gen.c
@@ -46,435 +46,435 @@ typedef struct initializer
static initializer cpu_flag_init[] =
{
{ "CPU_UNKNOWN_FLAGS",
- "~CpuIAMCU" },
+ "~IAMCU" },
{ "CPU_GENERIC32_FLAGS",
- "Cpu186|Cpu286|Cpu386" },
+ "186|286|386" },
{ "CPU_GENERIC64_FLAGS",
- "CPU_PENTIUMPRO_FLAGS|CpuClflush|CpuSYSCALL|CPU_MMX_FLAGS|CPU_SSE2_FLAGS|CpuLM" },
+ "CPU_PENTIUMPRO_FLAGS|Clflush|SYSCALL|CPU_MMX_FLAGS|CPU_SSE2_FLAGS|LM" },
{ "CPU_NONE_FLAGS",
"0" },
{ "CPU_I186_FLAGS",
- "Cpu186" },
+ "186" },
{ "CPU_I286_FLAGS",
- "CPU_I186_FLAGS|Cpu286" },
+ "CPU_I186_FLAGS|286" },
{ "CPU_I386_FLAGS",
- "CPU_I286_FLAGS|Cpu386" },
+ "CPU_I286_FLAGS|386" },
{ "CPU_I486_FLAGS",
- "CPU_I386_FLAGS|Cpu486" },
+ "CPU_I386_FLAGS|486" },
{ "CPU_I586_FLAGS",
- "CPU_I486_FLAGS|Cpu387|Cpu586" },
+ "CPU_I486_FLAGS|387|586" },
{ "CPU_I686_FLAGS",
- "CPU_I586_FLAGS|Cpu686|Cpu687|CpuCMOV|CpuFXSR" },
+ "CPU_I586_FLAGS|686|687|CMOV|FXSR" },
{ "CPU_PENTIUMPRO_FLAGS",
- "CPU_I686_FLAGS|CpuNop" },
+ "CPU_I686_FLAGS|Nop" },
{ "CPU_P2_FLAGS",
"CPU_PENTIUMPRO_FLAGS|CPU_MMX_FLAGS" },
{ "CPU_P3_FLAGS",
"CPU_P2_FLAGS|CPU_SSE_FLAGS" },
{ "CPU_P4_FLAGS",
- "CPU_P3_FLAGS|CpuClflush|CPU_SSE2_FLAGS" },
+ "CPU_P3_FLAGS|Clflush|CPU_SSE2_FLAGS" },
{ "CPU_NOCONA_FLAGS",
- "CPU_GENERIC64_FLAGS|CpuFISTTP|CPU_SSE3_FLAGS|CpuCX16" },
+ "CPU_GENERIC64_FLAGS|FISTTP|CPU_SSE3_FLAGS|CX16" },
{ "CPU_CORE_FLAGS",
- "CPU_P4_FLAGS|CpuFISTTP|CPU_SSE3_FLAGS|CpuCX16" },
+ "CPU_P4_FLAGS|FISTTP|CPU_SSE3_FLAGS|CX16" },
{ "CPU_CORE2_FLAGS",
"CPU_NOCONA_FLAGS|CPU_SSSE3_FLAGS" },
{ "CPU_COREI7_FLAGS",
- "CPU_CORE2_FLAGS|CPU_SSE4_2_FLAGS|CpuRdtscp" },
+ "CPU_CORE2_FLAGS|CPU_SSE4_2_FLAGS|Rdtscp" },
{ "CPU_K6_FLAGS",
- "Cpu186|Cpu286|Cpu386|Cpu486|Cpu586|CpuSYSCALL|Cpu387|CPU_MMX_FLAGS" },
+ "186|286|386|486|586|SYSCALL|387|CPU_MMX_FLAGS" },
{ "CPU_K6_2_FLAGS",
- "CPU_K6_FLAGS|Cpu3dnow" },
+ "CPU_K6_FLAGS|3dnow" },
{ "CPU_ATHLON_FLAGS",
- "CPU_K6_2_FLAGS|Cpu686|Cpu687|CpuNop|Cpu3dnowA" },
+ "CPU_K6_2_FLAGS|686|687|Nop|3dnowA" },
{ "CPU_K8_FLAGS",
- "CPU_ATHLON_FLAGS|CpuRdtscp|CPU_SSE2_FLAGS|CpuLM" },
+ "CPU_ATHLON_FLAGS|Rdtscp|CPU_SSE2_FLAGS|LM" },
{ "CPU_AMDFAM10_FLAGS",
- "CPU_K8_FLAGS|CpuFISTTP|CPU_SSE4A_FLAGS|CpuLZCNT|CpuPOPCNT" },
+ "CPU_K8_FLAGS|FISTTP|CPU_SSE4A_FLAGS|LZCNT|POPCNT" },
{ "CPU_BDVER1_FLAGS",
- "CPU_GENERIC64_FLAGS|CpuFISTTP|CpuRdtscp|CpuCX16|CPU_XOP_FLAGS|CpuLZCNT|CpuPOPCNT|CpuLWP|CpuSVME|CpuAES|CpuPCLMUL|CpuPRFCHW" },
+ "CPU_GENERIC64_FLAGS|FISTTP|Rdtscp|CX16|CPU_XOP_FLAGS|LZCNT|POPCNT|LWP|SVME|AES|PCLMUL|PRFCHW" },
{ "CPU_BDVER2_FLAGS",
- "CPU_BDVER1_FLAGS|CpuFMA|CpuBMI|CpuTBM|CpuF16C" },
+ "CPU_BDVER1_FLAGS|FMA|BMI|TBM|F16C" },
{ "CPU_BDVER3_FLAGS",
- "CPU_BDVER2_FLAGS|CpuXsaveopt|CpuFSGSBase" },
+ "CPU_BDVER2_FLAGS|Xsaveopt|FSGSBase" },
{ "CPU_BDVER4_FLAGS",
- "CPU_BDVER3_FLAGS|CpuAVX2|CpuMovbe|CpuBMI2|CpuRdRnd|CpuMWAITX" },
+ "CPU_BDVER3_FLAGS|AVX2|Movbe|BMI2|RdRnd|MWAITX" },
{ "CPU_ZNVER1_FLAGS",
- "CPU_GENERIC64_FLAGS|CpuFISTTP|CpuRdtscp|CpuCX16|CPU_AVX2_FLAGS|CpuSSE4A|CpuLZCNT|CpuPOPCNT|CpuSVME|CpuAES|CpuPCLMUL|CpuPRFCHW|CpuFMA|CpuBMI|CpuF16C|CpuXsaveopt|CpuFSGSBase|CpuMovbe|CpuBMI2|CpuRdRnd|CpuADX|CpuRdSeed|CpuSMAP|CpuSHA|CpuXSAVEC|CpuXSAVES|CpuClflushOpt|CpuCLZERO|CpuMWAITX" },
+ "CPU_GENERIC64_FLAGS|FISTTP|Rdtscp|CX16|CPU_AVX2_FLAGS|SSE4A|LZCNT|POPCNT|SVME|AES|PCLMUL|PRFCHW|FMA|BMI|F16C|Xsaveopt|FSGSBase|Movbe|BMI2|RdRnd|ADX|RdSeed|SMAP|SHA|XSAVEC|XSAVES|ClflushOpt|CLZERO|MWAITX" },
{ "CPU_ZNVER2_FLAGS",
- "CPU_ZNVER1_FLAGS|CpuCLWB|CpuRDPID|CpuRDPRU|CpuMCOMMIT|CpuWBNOINVD" },
+ "CPU_ZNVER1_FLAGS|CLWB|RDPID|RDPRU|MCOMMIT|WBNOINVD" },
{ "CPU_ZNVER3_FLAGS",
- "CPU_ZNVER2_FLAGS|CpuINVLPGB|CpuTLBSYNC|CpuVAES|CpuVPCLMULQDQ|CpuINVPCID|CpuSNP|CpuOSPKE" },
+ "CPU_ZNVER2_FLAGS|INVLPGB|TLBSYNC|VAES|VPCLMULQDQ|INVPCID|SNP|OSPKE" },
{ "CPU_ZNVER4_FLAGS",
- "CPU_ZNVER3_FLAGS|CpuAVX512F|CpuAVX512DQ|CpuAVX512IFMA|CpuAVX512CD|CpuAVX512BW|CpuAVX512VL|CpuAVX512_BF16|CpuAVX512VBMI|CpuAVX512_VBMI2|CpuAVX512_VNNI|CpuAVX512_BITALG|CpuAVX512_VPOPCNTDQ|CpuGFNI|CpuRMPQUERY" },
+ "CPU_ZNVER3_FLAGS|AVX512F|AVX512DQ|AVX512IFMA|AVX512CD|AVX512BW|AVX512VL|AVX512_BF16|AVX512VBMI|AVX512_VBMI2|AVX512_VNNI|AVX512_BITALG|AVX512_VPOPCNTDQ|GFNI|RMPQUERY" },
{ "CPU_BTVER1_FLAGS",
- "CPU_GENERIC64_FLAGS|CpuFISTTP|CpuCX16|CpuRdtscp|CPU_SSSE3_FLAGS|CpuSSE4A|CpuLZCNT|CpuPOPCNT|CpuPRFCHW|CpuCX16|CpuClflush|CpuFISTTP|CpuSVME" },
+ "CPU_GENERIC64_FLAGS|FISTTP|CX16|Rdtscp|CPU_SSSE3_FLAGS|SSE4A|LZCNT|POPCNT|PRFCHW|CX16|Clflush|FISTTP|SVME" },
{ "CPU_BTVER2_FLAGS",
- "CPU_BTVER1_FLAGS|CPU_AVX_FLAGS|CpuBMI|CpuF16C|CpuAES|CpuPCLMUL|CpuMovbe|CpuXsaveopt|CpuPRFCHW" },
+ "CPU_BTVER1_FLAGS|CPU_AVX_FLAGS|BMI|F16C|AES|PCLMUL|Movbe|Xsaveopt|PRFCHW" },
{ "CPU_8087_FLAGS",
- "Cpu8087" },
+ "8087" },
{ "CPU_287_FLAGS",
- "Cpu287" },
+ "287" },
{ "CPU_387_FLAGS",
- "Cpu387" },
+ "387" },
{ "CPU_687_FLAGS",
- "CPU_387_FLAGS|Cpu687" },
+ "CPU_387_FLAGS|687" },
{ "CPU_CMOV_FLAGS",
- "CpuCMOV" },
+ "CMOV" },
{ "CPU_FXSR_FLAGS",
- "CpuFXSR" },
+ "FXSR" },
{ "CPU_CLFLUSH_FLAGS",
- "CpuClflush" },
+ "Clflush" },
{ "CPU_NOP_FLAGS",
- "CpuNop" },
+ "Nop" },
{ "CPU_SYSCALL_FLAGS",
- "CpuSYSCALL" },
+ "SYSCALL" },
{ "CPU_MMX_FLAGS",
- "CpuMMX" },
+ "MMX" },
{ "CPU_SSE_FLAGS",
- "CpuSSE" },
+ "SSE" },
{ "CPU_SSE2_FLAGS",
- "CPU_SSE_FLAGS|CpuSSE2" },
+ "CPU_SSE_FLAGS|SSE2" },
{ "CPU_SSE3_FLAGS",
- "CPU_SSE2_FLAGS|CpuSSE3" },
+ "CPU_SSE2_FLAGS|SSE3" },
{ "CPU_SSSE3_FLAGS",
- "CPU_SSE3_FLAGS|CpuSSSE3" },
+ "CPU_SSE3_FLAGS|SSSE3" },
{ "CPU_SSE4_1_FLAGS",
- "CPU_SSSE3_FLAGS|CpuSSE4_1" },
+ "CPU_SSSE3_FLAGS|SSE4_1" },
{ "CPU_SSE4_2_FLAGS",
- "CPU_SSE4_1_FLAGS|CpuSSE4_2|CpuPOPCNT" },
+ "CPU_SSE4_1_FLAGS|SSE4_2|POPCNT" },
{ "CPU_VMX_FLAGS",
- "CpuVMX" },
+ "VMX" },
{ "CPU_SMX_FLAGS",
- "CpuSMX" },
+ "SMX" },
{ "CPU_XSAVE_FLAGS",
- "CpuXsave" },
+ "Xsave" },
{ "CPU_XSAVEOPT_FLAGS",
- "CPU_XSAVE_FLAGS|CpuXsaveopt" },
+ "CPU_XSAVE_FLAGS|Xsaveopt" },
{ "CPU_AES_FLAGS",
- "CPU_SSE2_FLAGS|CpuAES" },
+ "CPU_SSE2_FLAGS|AES" },
{ "CPU_PCLMUL_FLAGS",
- "CPU_SSE2_FLAGS|CpuPCLMUL" },
+ "CPU_SSE2_FLAGS|PCLMUL" },
{ "CPU_FMA_FLAGS",
- "CPU_AVX_FLAGS|CpuFMA" },
+ "CPU_AVX_FLAGS|FMA" },
{ "CPU_FMA4_FLAGS",
- "CPU_AVX_FLAGS|CpuFMA4" },
+ "CPU_AVX_FLAGS|FMA4" },
{ "CPU_XOP_FLAGS",
- "CPU_SSE4A_FLAGS|CPU_FMA4_FLAGS|CpuXOP" },
+ "CPU_SSE4A_FLAGS|CPU_FMA4_FLAGS|XOP" },
{ "CPU_LWP_FLAGS",
- "CPU_XSAVE_FLAGS|CpuLWP" },
+ "CPU_XSAVE_FLAGS|LWP" },
{ "CPU_BMI_FLAGS",
- "CpuBMI" },
+ "BMI" },
{ "CPU_TBM_FLAGS",
- "CpuTBM" },
+ "TBM" },
{ "CPU_MOVBE_FLAGS",
- "CpuMovbe" },
+ "Movbe" },
{ "CPU_CX16_FLAGS",
- "CpuCX16" },
+ "CX16" },
{ "CPU_RDTSCP_FLAGS",
- "CpuRdtscp" },
+ "Rdtscp" },
{ "CPU_EPT_FLAGS",
- "CpuEPT" },
+ "EPT" },
{ "CPU_FSGSBASE_FLAGS",
- "CpuFSGSBase" },
+ "FSGSBase" },
{ "CPU_RDRND_FLAGS",
- "CpuRdRnd" },
+ "RdRnd" },
{ "CPU_F16C_FLAGS",
- "CPU_AVX_FLAGS|CpuF16C" },
+ "CPU_AVX_FLAGS|F16C" },
{ "CPU_BMI2_FLAGS",
- "CpuBMI2" },
+ "BMI2" },
{ "CPU_LZCNT_FLAGS",
- "CpuLZCNT" },
+ "LZCNT" },
{ "CPU_POPCNT_FLAGS",
- "CpuPOPCNT" },
+ "POPCNT" },
{ "CPU_HLE_FLAGS",
- "CpuHLE" },
+ "HLE" },
{ "CPU_RTM_FLAGS",
- "CpuRTM" },
+ "RTM" },
{ "CPU_INVPCID_FLAGS",
- "CpuINVPCID" },
+ "INVPCID" },
{ "CPU_VMFUNC_FLAGS",
- "CpuVMFUNC" },
+ "VMFUNC" },
{ "CPU_3DNOW_FLAGS",
- "CPU_MMX_FLAGS|Cpu3dnow" },
+ "CPU_MMX_FLAGS|3dnow" },
{ "CPU_3DNOWA_FLAGS",
- "CPU_3DNOW_FLAGS|Cpu3dnowA" },
+ "CPU_3DNOW_FLAGS|3dnowA" },
{ "CPU_PADLOCK_FLAGS",
- "CpuPadLock" },
+ "PadLock" },
{ "CPU_SVME_FLAGS",
- "CpuSVME" },
+ "SVME" },
{ "CPU_SSE4A_FLAGS",
- "CPU_SSE3_FLAGS|CpuSSE4a" },
+ "CPU_SSE3_FLAGS|SSE4a" },
{ "CPU_ABM_FLAGS",
- "CpuLZCNT|CpuPOPCNT" },
+ "LZCNT|POPCNT" },
{ "CPU_AVX_FLAGS",
- "CPU_SSE4_2_FLAGS|CPU_XSAVE_FLAGS|CpuAVX" },
+ "CPU_SSE4_2_FLAGS|CPU_XSAVE_FLAGS|AVX" },
{ "CPU_AVX2_FLAGS",
- "CPU_AVX_FLAGS|CpuAVX2" },
+ "CPU_AVX_FLAGS|AVX2" },
{ "CPU_AVX_VNNI_FLAGS",
- "CPU_AVX2_FLAGS|CpuAVX_VNNI" },
+ "CPU_AVX2_FLAGS|AVX_VNNI" },
{ "CPU_AVX512F_FLAGS",
- "CPU_AVX2_FLAGS|CpuAVX512F" },
+ "CPU_AVX2_FLAGS|AVX512F" },
{ "CPU_AVX512CD_FLAGS",
- "CPU_AVX512F_FLAGS|CpuAVX512CD" },
+ "CPU_AVX512F_FLAGS|AVX512CD" },
{ "CPU_AVX512ER_FLAGS",
- "CPU_AVX512F_FLAGS|CpuAVX512ER" },
+ "CPU_AVX512F_FLAGS|AVX512ER" },
{ "CPU_AVX512PF_FLAGS",
- "CPU_AVX512F_FLAGS|CpuAVX512PF" },
+ "CPU_AVX512F_FLAGS|AVX512PF" },
{ "CPU_AVX512DQ_FLAGS",
- "CPU_AVX512F_FLAGS|CpuAVX512DQ" },
+ "CPU_AVX512F_FLAGS|AVX512DQ" },
{ "CPU_AVX512BW_FLAGS",
- "CPU_AVX512F_FLAGS|CpuAVX512BW" },
+ "CPU_AVX512F_FLAGS|AVX512BW" },
{ "CPU_AVX512VL_FLAGS",
- "CPU_AVX512F_FLAGS|CpuAVX512VL" },
+ "CPU_AVX512F_FLAGS|AVX512VL" },
{ "CPU_AVX512IFMA_FLAGS",
- "CPU_AVX512F_FLAGS|CpuAVX512IFMA" },
+ "CPU_AVX512F_FLAGS|AVX512IFMA" },
{ "CPU_AVX512VBMI_FLAGS",
- "CPU_AVX512F_FLAGS|CpuAVX512VBMI" },
+ "CPU_AVX512F_FLAGS|AVX512VBMI" },
{ "CPU_AVX512_4FMAPS_FLAGS",
- "CPU_AVX512F_FLAGS|CpuAVX512_4FMAPS" },
+ "CPU_AVX512F_FLAGS|AVX512_4FMAPS" },
{ "CPU_AVX512_4VNNIW_FLAGS",
- "CPU_AVX512F_FLAGS|CpuAVX512_4VNNIW" },
+ "CPU_AVX512F_FLAGS|AVX512_4VNNIW" },
{ "CPU_AVX512_VPOPCNTDQ_FLAGS",
- "CPU_AVX512F_FLAGS|CpuAVX512_VPOPCNTDQ" },
+ "CPU_AVX512F_FLAGS|AVX512_VPOPCNTDQ" },
{ "CPU_AVX512_VBMI2_FLAGS",
- "CPU_AVX512F_FLAGS|CpuAVX512_VBMI2" },
+ "CPU_AVX512F_FLAGS|AVX512_VBMI2" },
{ "CPU_AVX512_VNNI_FLAGS",
- "CPU_AVX512F_FLAGS|CpuAVX512_VNNI" },
+ "CPU_AVX512F_FLAGS|AVX512_VNNI" },
{ "CPU_AVX512_BITALG_FLAGS",
- "CPU_AVX512F_FLAGS|CpuAVX512_BITALG" },
+ "CPU_AVX512F_FLAGS|AVX512_BITALG" },
{ "CPU_AVX512_BF16_FLAGS",
- "CPU_AVX512F_FLAGS|CpuAVX512_BF16" },
+ "CPU_AVX512F_FLAGS|AVX512_BF16" },
{ "CPU_AVX512_FP16_FLAGS",
- "CPU_AVX512BW_FLAGS|CpuAVX512_FP16" },
+ "CPU_AVX512BW_FLAGS|AVX512_FP16" },
{ "CPU_PREFETCHI_FLAGS",
- "CpuPREFETCHI"},
+ "PREFETCHI"},
{ "CPU_AVX_IFMA_FLAGS",
- "CPU_AVX2_FLAGS|CpuAVX_IFMA" },
+ "CPU_AVX2_FLAGS|AVX_IFMA" },
{ "CPU_AVX_VNNI_INT8_FLAGS",
- "CPU_AVX2_FLAGS|CpuAVX_VNNI_INT8" },
+ "CPU_AVX2_FLAGS|AVX_VNNI_INT8" },
{ "CPU_CMPCCXADD_FLAGS",
- "CpuCMPCCXADD" },
+ "CMPCCXADD" },
{ "CPU_WRMSRNS_FLAGS",
- "CpuWRMSRNS" },
+ "WRMSRNS" },
{ "CPU_MSRLIST_FLAGS",
- "CpuMSRLIST" },
+ "MSRLIST" },
{ "CPU_AVX_NE_CONVERT_FLAGS",
- "CPU_AVX2_FLAGS|CpuAVX_NE_CONVERT" },
+ "CPU_AVX2_FLAGS|AVX_NE_CONVERT" },
{ "CPU_RAO_INT_FLAGS",
- "CpuRAO_INT" },
+ "RAO_INT" },
{ "CPU_IAMCU_FLAGS",
- "Cpu186|Cpu286|Cpu386|Cpu486|Cpu586|CpuIAMCU" },
+ "186|286|386|486|586|IAMCU" },
{ "CPU_ADX_FLAGS",
- "CpuADX" },
+ "ADX" },
{ "CPU_RDSEED_FLAGS",
- "CpuRdSeed" },
+ "RdSeed" },
{ "CPU_PRFCHW_FLAGS",
- "CpuPRFCHW" },
+ "PRFCHW" },
{ "CPU_SMAP_FLAGS",
- "CpuSMAP" },
+ "SMAP" },
{ "CPU_MPX_FLAGS",
- "CPU_XSAVE_FLAGS|CpuMPX" },
+ "CPU_XSAVE_FLAGS|MPX" },
{ "CPU_SHA_FLAGS",
- "CPU_SSE2_FLAGS|CpuSHA" },
+ "CPU_SSE2_FLAGS|SHA" },
{ "CPU_CLFLUSHOPT_FLAGS",
- "CpuClflushOpt" },
+ "ClflushOpt" },
{ "CPU_XSAVES_FLAGS",
- "CPU_XSAVE_FLAGS|CpuXSAVES" },
+ "CPU_XSAVE_FLAGS|XSAVES" },
{ "CPU_XSAVEC_FLAGS",
- "CPU_XSAVE_FLAGS|CpuXSAVEC" },
+ "CPU_XSAVE_FLAGS|XSAVEC" },
{ "CPU_PREFETCHWT1_FLAGS",
- "CpuPREFETCHWT1" },
+ "PREFETCHWT1" },
{ "CPU_SE1_FLAGS",
- "CpuSE1" },
+ "SE1" },
{ "CPU_CLWB_FLAGS",
- "CpuCLWB" },
+ "CLWB" },
{ "CPU_CLZERO_FLAGS",
- "CpuCLZERO" },
+ "CLZERO" },
{ "CPU_MWAITX_FLAGS",
- "CpuMWAITX" },
+ "MWAITX" },
{ "CPU_OSPKE_FLAGS",
- "CPU_XSAVE_FLAGS|CpuOSPKE" },
+ "CPU_XSAVE_FLAGS|OSPKE" },
{ "CPU_RDPID_FLAGS",
- "CpuRDPID" },
+ "RDPID" },
{ "CPU_PTWRITE_FLAGS",
- "CpuPTWRITE" },
+ "PTWRITE" },
{ "CPU_IBT_FLAGS",
- "CpuIBT" },
+ "IBT" },
{ "CPU_SHSTK_FLAGS",
- "CpuSHSTK" },
+ "SHSTK" },
{ "CPU_GFNI_FLAGS",
- "CpuGFNI" },
+ "GFNI" },
{ "CPU_VAES_FLAGS",
- "CpuVAES" },
+ "VAES" },
{ "CPU_VPCLMULQDQ_FLAGS",
- "CpuVPCLMULQDQ" },
+ "VPCLMULQDQ" },
{ "CPU_WBNOINVD_FLAGS",
- "CpuWBNOINVD" },
+ "WBNOINVD" },
{ "CPU_PCONFIG_FLAGS",
- "CpuPCONFIG" },
+ "PCONFIG" },
{ "CPU_WAITPKG_FLAGS",
- "CpuWAITPKG" },
+ "WAITPKG" },
{ "CPU_UINTR_FLAGS",
- "CpuUINTR" },
+ "UINTR" },
{ "CPU_CLDEMOTE_FLAGS",
- "CpuCLDEMOTE" },
+ "CLDEMOTE" },
{ "CPU_AMX_INT8_FLAGS",
- "CPU_AMX_TILE_FLAGS|CpuAMX_INT8" },
+ "CPU_AMX_TILE_FLAGS|AMX_INT8" },
{ "CPU_AMX_BF16_FLAGS",
- "CPU_AMX_TILE_FLAGS|CpuAMX_BF16" },
+ "CPU_AMX_TILE_FLAGS|AMX_BF16" },
{ "CPU_AMX_FP16_FLAGS",
- "CPU_AMX_TILE_FLAGS|CpuAMX_FP16" },
+ "CPU_AMX_TILE_FLAGS|AMX_FP16" },
{ "CPU_AMX_TILE_FLAGS",
- "CpuAMX_TILE" },
+ "AMX_TILE" },
{ "CPU_MOVDIRI_FLAGS",
- "CpuMOVDIRI" },
+ "MOVDIRI" },
{ "CPU_MOVDIR64B_FLAGS",
- "CpuMOVDIR64B" },
+ "MOVDIR64B" },
{ "CPU_ENQCMD_FLAGS",
- "CpuENQCMD" },
+ "ENQCMD" },
{ "CPU_SERIALIZE_FLAGS",
- "CpuSERIALIZE" },
+ "SERIALIZE" },
{ "CPU_AVX512_VP2INTERSECT_FLAGS",
- "CpuAVX512_VP2INTERSECT" },
+ "AVX512_VP2INTERSECT" },
{ "CPU_TDX_FLAGS",
- "CpuTDX" },
+ "TDX" },
{ "CPU_RDPRU_FLAGS",
- "CpuRDPRU" },
+ "RDPRU" },
{ "CPU_MCOMMIT_FLAGS",
- "CpuMCOMMIT" },
+ "MCOMMIT" },
{ "CPU_SEV_ES_FLAGS",
- "CpuSEV_ES" },
+ "SEV_ES" },
{ "CPU_TSXLDTRK_FLAGS",
- "CpuTSXLDTRK"},
+ "TSXLDTRK"},
{ "CPU_KL_FLAGS",
- "CpuKL" },
+ "KL" },
{ "CPU_WIDEKL_FLAGS",
- "CpuWideKL" },
+ "WideKL" },
{ "CPU_HRESET_FLAGS",
- "CpuHRESET"},
+ "HRESET"},
{ "CPU_INVLPGB_FLAGS",
- "CpuINVLPGB" },
+ "INVLPGB" },
{ "CPU_TLBSYNC_FLAGS",
- "CpuTLBSYNC" },
+ "TLBSYNC" },
{ "CPU_SNP_FLAGS",
- "CpuSNP" },
+ "SNP" },
{ "CPU_RMPQUERY_FLAGS",
- "CpuRMPQUERY" },
+ "RMPQUERY" },
{ "CPU_ANY_X87_FLAGS",
- "CPU_ANY_287_FLAGS|Cpu8087" },
+ "CPU_ANY_287_FLAGS|8087" },
{ "CPU_ANY_287_FLAGS",
- "CPU_ANY_387_FLAGS|Cpu287" },
+ "CPU_ANY_387_FLAGS|287" },
{ "CPU_ANY_387_FLAGS",
- "CPU_ANY_687_FLAGS|Cpu387" },
+ "CPU_ANY_687_FLAGS|387" },
{ "CPU_ANY_687_FLAGS",
- "Cpu687|CpuFISTTP" },
+ "687|FISTTP" },
{ "CPU_ANY_CMOV_FLAGS",
- "CpuCMOV" },
+ "CMOV" },
{ "CPU_ANY_FXSR_FLAGS",
- "CpuFXSR" },
+ "FXSR" },
{ "CPU_ANY_MMX_FLAGS",
"CPU_3DNOWA_FLAGS" },
{ "CPU_ANY_SSE_FLAGS",
- "CPU_ANY_SSE2_FLAGS|CpuSSE" },
+ "CPU_ANY_SSE2_FLAGS|SSE" },
{ "CPU_ANY_SSE2_FLAGS",
- "CPU_ANY_SSE3_FLAGS|CpuSSE2" },
+ "CPU_ANY_SSE3_FLAGS|SSE2" },
{ "CPU_ANY_SSE3_FLAGS",
- "CPU_ANY_SSSE3_FLAGS|CpuSSE3|CpuSSE4a" },
+ "CPU_ANY_SSSE3_FLAGS|SSE3|SSE4a" },
{ "CPU_ANY_SSSE3_FLAGS",
- "CPU_ANY_SSE4_1_FLAGS|CpuSSSE3" },
+ "CPU_ANY_SSE4_1_FLAGS|SSSE3" },
{ "CPU_ANY_SSE4_1_FLAGS",
- "CPU_ANY_SSE4_2_FLAGS|CpuSSE4_1" },
+ "CPU_ANY_SSE4_2_FLAGS|SSE4_1" },
{ "CPU_ANY_SSE4_2_FLAGS",
- "CpuSSE4_2" },
+ "SSE4_2" },
{ "CPU_ANY_SSE4A_FLAGS",
- "CpuSSE4a" },
+ "SSE4a" },
{ "CPU_ANY_AVX_FLAGS",
- "CPU_ANY_AVX2_FLAGS|CpuF16C|CpuFMA|CpuFMA4|CpuXOP|CpuAVX" },
+ "CPU_ANY_AVX2_FLAGS|F16C|FMA|FMA4|XOP|AVX" },
{ "CPU_ANY_AVX2_FLAGS",
- "CPU_ANY_AVX512F_FLAGS|CpuAVX2|CpuAVX_VNNI|CpuAVX_IFMA|CpuAVX_VNNI_INT8|CpuAVX_NE_CONVERT" },
+ "CPU_ANY_AVX512F_FLAGS|AVX2|AVX_VNNI|AVX_IFMA|AVX_VNNI_INT8|AVX_NE_CONVERT" },
{ "CPU_ANY_AVX512F_FLAGS",
- "CpuAVX512F|CpuAVX512CD|CpuAVX512ER|CpuAVX512PF|CpuAVX512DQ|CPU_ANY_AVX512BW_FLAGS|CpuAVX512VL|CpuAVX512IFMA|CpuAVX512VBMI|CpuAVX512_4FMAPS|CpuAVX512_4VNNIW|CpuAVX512_VPOPCNTDQ|CpuAVX512_VBMI2|CpuAVX512_VNNI|CpuAVX512_BITALG|CpuAVX512_BF16|CpuAVX512_VP2INTERSECT" },
+ "AVX512F|AVX512CD|AVX512ER|AVX512PF|AVX512DQ|CPU_ANY_AVX512BW_FLAGS|AVX512VL|AVX512IFMA|AVX512VBMI|AVX512_4FMAPS|AVX512_4VNNIW|AVX512_VPOPCNTDQ|AVX512_VBMI2|AVX512_VNNI|AVX512_BITALG|AVX512_BF16|AVX512_VP2INTERSECT" },
{ "CPU_ANY_AVX512CD_FLAGS",
- "CpuAVX512CD" },
+ "AVX512CD" },
{ "CPU_ANY_AVX512ER_FLAGS",
- "CpuAVX512ER" },
+ "AVX512ER" },
{ "CPU_ANY_AVX512PF_FLAGS",
- "CpuAVX512PF" },
+ "AVX512PF" },
{ "CPU_ANY_AVX512DQ_FLAGS",
- "CpuAVX512DQ" },
+ "AVX512DQ" },
{ "CPU_ANY_AVX512BW_FLAGS",
- "CpuAVX512BW|CPU_ANY_AVX512_FP16_FLAGS" },
+ "AVX512BW|CPU_ANY_AVX512_FP16_FLAGS" },
{ "CPU_ANY_AVX512VL_FLAGS",
- "CpuAVX512VL" },
+ "AVX512VL" },
{ "CPU_ANY_AVX512IFMA_FLAGS",
- "CpuAVX512IFMA" },
+ "AVX512IFMA" },
{ "CPU_ANY_AVX512VBMI_FLAGS",
- "CpuAVX512VBMI" },
+ "AVX512VBMI" },
{ "CPU_ANY_AVX512_4FMAPS_FLAGS",
- "CpuAVX512_4FMAPS" },
+ "AVX512_4FMAPS" },
{ "CPU_ANY_AVX512_4VNNIW_FLAGS",
- "CpuAVX512_4VNNIW" },
+ "AVX512_4VNNIW" },
{ "CPU_ANY_AVX512_VPOPCNTDQ_FLAGS",
- "CpuAVX512_VPOPCNTDQ" },
+ "AVX512_VPOPCNTDQ" },
{ "CPU_ANY_IBT_FLAGS",
- "CpuIBT" },
+ "IBT" },
{ "CPU_ANY_SHSTK_FLAGS",
- "CpuSHSTK" },
+ "SHSTK" },
{ "CPU_ANY_AVX512_VBMI2_FLAGS",
- "CpuAVX512_VBMI2" },
+ "AVX512_VBMI2" },
{ "CPU_ANY_AVX512_VNNI_FLAGS",
- "CpuAVX512_VNNI" },
+ "AVX512_VNNI" },
{ "CPU_ANY_AVX512_BITALG_FLAGS",
- "CpuAVX512_BITALG" },
+ "AVX512_BITALG" },
{ "CPU_ANY_AVX512_BF16_FLAGS",
- "CpuAVX512_BF16" },
+ "AVX512_BF16" },
{ "CPU_ANY_AMX_INT8_FLAGS",
- "CpuAMX_INT8" },
+ "AMX_INT8" },
{ "CPU_ANY_AMX_BF16_FLAGS",
- "CpuAMX_BF16" },
+ "AMX_BF16" },
{ "CPU_ANY_AMX_TILE_FLAGS",
- "CpuAMX_TILE|CpuAMX_INT8|CpuAMX_BF16|CpuAMX_FP16" },
+ "AMX_TILE|AMX_INT8|AMX_BF16|AMX_FP16" },
{ "CPU_ANY_AVX_VNNI_FLAGS",
- "CpuAVX_VNNI" },
+ "AVX_VNNI" },
{ "CPU_ANY_MOVDIRI_FLAGS",
- "CpuMOVDIRI" },
+ "MOVDIRI" },
{ "CPU_ANY_UINTR_FLAGS",
- "CpuUINTR" },
+ "UINTR" },
{ "CPU_ANY_MOVDIR64B_FLAGS",
- "CpuMOVDIR64B" },
+ "MOVDIR64B" },
{ "CPU_ANY_ENQCMD_FLAGS",
- "CpuENQCMD" },
+ "ENQCMD" },
{ "CPU_ANY_SERIALIZE_FLAGS",
- "CpuSERIALIZE" },
+ "SERIALIZE" },
{ "CPU_ANY_AVX512_VP2INTERSECT_FLAGS",
- "CpuAVX512_VP2INTERSECT" },
+ "AVX512_VP2INTERSECT" },
{ "CPU_ANY_TDX_FLAGS",
- "CpuTDX" },
+ "TDX" },
{ "CPU_ANY_TSXLDTRK_FLAGS",
- "CpuTSXLDTRK" },
+ "TSXLDTRK" },
{ "CPU_ANY_KL_FLAGS",
- "CpuKL|CpuWideKL" },
+ "KL|WideKL" },
{ "CPU_ANY_WIDEKL_FLAGS",
- "CpuWideKL" },
+ "WideKL" },
{ "CPU_ANY_HRESET_FLAGS",
- "CpuHRESET" },
+ "HRESET" },
{ "CPU_ANY_AVX512_FP16_FLAGS",
- "CpuAVX512_FP16" },
+ "AVX512_FP16" },
{ "CPU_ANY_AVX_IFMA_FLAGS",
- "CpuAVX_IFMA" },
+ "AVX_IFMA" },
{ "CPU_ANY_AVX_VNNI_INT8_FLAGS",
- "CpuAVX_VNNI_INT8" },
+ "AVX_VNNI_INT8" },
{ "CPU_ANY_CMPCCXADD_FLAGS",
- "CpuCMPCCXADD" },
+ "CMPCCXADD" },
{ "CPU_ANY_WRMSRNS_FLAGS",
- "CpuWRMSRNS" },
+ "WRMSRNS" },
{ "CPU_ANY_MSRLIST_FLAGS",
- "CpuMSRLIST" },
+ "MSRLIST" },
{ "CPU_ANY_AVX_NE_CONVERT_FLAGS",
- "CpuAVX_NE_CONVERT" },
+ "AVX_NE_CONVERT" },
{ "CPU_ANY_RAO_INT_FLAGS",
- "CpuRAO_INT"},
+ "RAO_INT"},
};
typedef struct bitfield
@@ -484,149 +484,152 @@ typedef struct bitfield
const char *name;
} bitfield;
-#define BITFIELD(n) { n, 0, #n }
+#define BITFIELD(n) { Cpu##n, 0, #n }
static bitfield cpu_flags[] =
{
- BITFIELD (Cpu186),
- BITFIELD (Cpu286),
- BITFIELD (Cpu386),
- BITFIELD (Cpu486),
- BITFIELD (Cpu586),
- BITFIELD (Cpu686),
- BITFIELD (CpuCMOV),
- BITFIELD (CpuFXSR),
- BITFIELD (CpuClflush),
- BITFIELD (CpuNop),
- BITFIELD (CpuSYSCALL),
- BITFIELD (Cpu8087),
- BITFIELD (Cpu287),
- BITFIELD (Cpu387),
- BITFIELD (Cpu687),
- BITFIELD (CpuFISTTP),
- BITFIELD (CpuMMX),
- BITFIELD (CpuSSE),
- BITFIELD (CpuSSE2),
- BITFIELD (CpuSSE3),
- BITFIELD (CpuSSSE3),
- BITFIELD (CpuSSE4_1),
- BITFIELD (CpuSSE4_2),
- BITFIELD (CpuAVX),
- BITFIELD (CpuAVX2),
- BITFIELD (CpuAVX512F),
- BITFIELD (CpuAVX512CD),
- BITFIELD (CpuAVX512ER),
- BITFIELD (CpuAVX512PF),
- BITFIELD (CpuAVX512VL),
- BITFIELD (CpuAVX512DQ),
- BITFIELD (CpuAVX512BW),
- BITFIELD (CpuIAMCU),
- BITFIELD (CpuSSE4a),
- BITFIELD (Cpu3dnow),
- BITFIELD (Cpu3dnowA),
- BITFIELD (CpuPadLock),
- BITFIELD (CpuSVME),
- BITFIELD (CpuVMX),
- BITFIELD (CpuSMX),
- BITFIELD (CpuXsave),
- BITFIELD (CpuXsaveopt),
- BITFIELD (CpuAES),
- BITFIELD (CpuPCLMUL),
- BITFIELD (CpuFMA),
- BITFIELD (CpuFMA4),
- BITFIELD (CpuXOP),
- BITFIELD (CpuLWP),
- BITFIELD (CpuBMI),
- BITFIELD (CpuTBM),
- BITFIELD (CpuLM),
- BITFIELD (CpuMovbe),
- BITFIELD (CpuCX16),
- BITFIELD (CpuEPT),
- BITFIELD (CpuRdtscp),
- BITFIELD (CpuFSGSBase),
- BITFIELD (CpuRdRnd),
- BITFIELD (CpuF16C),
- BITFIELD (CpuBMI2),
- BITFIELD (CpuLZCNT),
- BITFIELD (CpuPOPCNT),
- BITFIELD (CpuHLE),
- BITFIELD (CpuRTM),
- BITFIELD (CpuINVPCID),
- BITFIELD (CpuVMFUNC),
- BITFIELD (CpuRDSEED),
- BITFIELD (CpuADX),
- BITFIELD (CpuPRFCHW),
- BITFIELD (CpuSMAP),
- BITFIELD (CpuSHA),
- BITFIELD (CpuClflushOpt),
- BITFIELD (CpuXSAVES),
- BITFIELD (CpuXSAVEC),
- BITFIELD (CpuPREFETCHWT1),
- BITFIELD (CpuSE1),
- BITFIELD (CpuCLWB),
- BITFIELD (CpuMPX),
- BITFIELD (CpuAVX512IFMA),
- BITFIELD (CpuAVX512VBMI),
- BITFIELD (CpuAVX512_4FMAPS),
- BITFIELD (CpuAVX512_4VNNIW),
- BITFIELD (CpuAVX512_VPOPCNTDQ),
- BITFIELD (CpuAVX512_VBMI2),
- BITFIELD (CpuAVX512_VNNI),
- BITFIELD (CpuAVX512_BITALG),
- BITFIELD (CpuAVX512_BF16),
- BITFIELD (CpuAVX512_VP2INTERSECT),
- BITFIELD (CpuTDX),
- BITFIELD (CpuAVX_VNNI),
- BITFIELD (CpuAVX512_FP16),
- BITFIELD (CpuPREFETCHI),
- BITFIELD (CpuAVX_IFMA),
- BITFIELD (CpuAVX_VNNI_INT8),
- BITFIELD (CpuCMPCCXADD),
- BITFIELD (CpuWRMSRNS),
- BITFIELD (CpuMSRLIST),
- BITFIELD (CpuAVX_NE_CONVERT),
- BITFIELD (CpuRAO_INT),
- BITFIELD (CpuMWAITX),
- BITFIELD (CpuCLZERO),
- BITFIELD (CpuOSPKE),
- BITFIELD (CpuRDPID),
- BITFIELD (CpuPTWRITE),
- BITFIELD (CpuIBT),
- BITFIELD (CpuSHSTK),
- BITFIELD (CpuGFNI),
- BITFIELD (CpuVAES),
- BITFIELD (CpuVPCLMULQDQ),
- BITFIELD (CpuWBNOINVD),
- BITFIELD (CpuPCONFIG),
- BITFIELD (CpuWAITPKG),
- BITFIELD (CpuUINTR),
- BITFIELD (CpuCLDEMOTE),
- BITFIELD (CpuAMX_INT8),
- BITFIELD (CpuAMX_BF16),
- BITFIELD (CpuAMX_FP16),
- BITFIELD (CpuAMX_TILE),
- BITFIELD (CpuMOVDIRI),
- BITFIELD (CpuMOVDIR64B),
- BITFIELD (CpuENQCMD),
- BITFIELD (CpuSERIALIZE),
- BITFIELD (CpuRDPRU),
- BITFIELD (CpuMCOMMIT),
- BITFIELD (CpuSEV_ES),
- BITFIELD (CpuTSXLDTRK),
- BITFIELD (CpuKL),
- BITFIELD (CpuWideKL),
- BITFIELD (CpuHRESET),
- BITFIELD (CpuINVLPGB),
- BITFIELD (CpuTLBSYNC),
- BITFIELD (CpuSNP),
- BITFIELD (CpuRMPQUERY),
- BITFIELD (Cpu64),
- BITFIELD (CpuNo64),
+ BITFIELD (186),
+ BITFIELD (286),
+ BITFIELD (386),
+ BITFIELD (486),
+ BITFIELD (586),
+ BITFIELD (686),
+ BITFIELD (CMOV),
+ BITFIELD (FXSR),
+ BITFIELD (Clflush),
+ BITFIELD (Nop),
+ BITFIELD (SYSCALL),
+ BITFIELD (8087),
+ BITFIELD (287),
+ BITFIELD (387),
+ BITFIELD (687),
+ BITFIELD (FISTTP),
+ BITFIELD (MMX),
+ BITFIELD (SSE),
+ BITFIELD (SSE2),
+ BITFIELD (SSE3),
+ BITFIELD (SSSE3),
+ BITFIELD (SSE4_1),
+ BITFIELD (SSE4_2),
+ BITFIELD (AVX),
+ BITFIELD (AVX2),
+ BITFIELD (AVX512F),
+ BITFIELD (AVX512CD),
+ BITFIELD (AVX512ER),
+ BITFIELD (AVX512PF),
+ BITFIELD (AVX512VL),
+ BITFIELD (AVX512DQ),
+ BITFIELD (AVX512BW),
+ BITFIELD (IAMCU),
+ BITFIELD (SSE4a),
+ BITFIELD (3dnow),
+ BITFIELD (3dnowA),
+ BITFIELD (PadLock),
+ BITFIELD (SVME),
+ BITFIELD (VMX),
+ BITFIELD (SMX),
+ BITFIELD (Xsave),
+ BITFIELD (Xsaveopt),
+ BITFIELD (AES),
+ BITFIELD (PCLMUL),
+ BITFIELD (FMA),
+ BITFIELD (FMA4),
+ BITFIELD (XOP),
+ BITFIELD (LWP),
+ BITFIELD (BMI),
+ BITFIELD (TBM),
+ BITFIELD (LM),
+ BITFIELD (Movbe),
+ BITFIELD (CX16),
+ BITFIELD (EPT),
+ BITFIELD (Rdtscp),
+ BITFIELD (FSGSBase),
+ BITFIELD (RdRnd),
+ BITFIELD (F16C),
+ BITFIELD (BMI2),
+ BITFIELD (LZCNT),
+ BITFIELD (POPCNT),
+ BITFIELD (HLE),
+ BITFIELD (RTM),
+ BITFIELD (INVPCID),
+ BITFIELD (VMFUNC),
+ BITFIELD (RDSEED),
+ BITFIELD (ADX),
+ BITFIELD (PRFCHW),
+ BITFIELD (SMAP),
+ BITFIELD (SHA),
+ BITFIELD (ClflushOpt),
+ BITFIELD (XSAVES),
+ BITFIELD (XSAVEC),
+ BITFIELD (PREFETCHWT1),
+ BITFIELD (SE1),
+ BITFIELD (CLWB),
+ BITFIELD (MPX),
+ BITFIELD (AVX512IFMA),
+ BITFIELD (AVX512VBMI),
+ BITFIELD (AVX512_4FMAPS),
+ BITFIELD (AVX512_4VNNIW),
+ BITFIELD (AVX512_VPOPCNTDQ),
+ BITFIELD (AVX512_VBMI2),
+ BITFIELD (AVX512_VNNI),
+ BITFIELD (AVX512_BITALG),
+ BITFIELD (AVX512_BF16),
+ BITFIELD (AVX512_VP2INTERSECT),
+ BITFIELD (TDX),
+ BITFIELD (AVX_VNNI),
+ BITFIELD (AVX512_FP16),
+ BITFIELD (PREFETCHI),
+ BITFIELD (AVX_IFMA),
+ BITFIELD (AVX_VNNI_INT8),
+ BITFIELD (CMPCCXADD),
+ BITFIELD (WRMSRNS),
+ BITFIELD (MSRLIST),
+ BITFIELD (AVX_NE_CONVERT),
+ BITFIELD (RAO_INT),
+ BITFIELD (MWAITX),
+ BITFIELD (CLZERO),
+ BITFIELD (OSPKE),
+ BITFIELD (RDPID),
+ BITFIELD (PTWRITE),
+ BITFIELD (IBT),
+ BITFIELD (SHSTK),
+ BITFIELD (GFNI),
+ BITFIELD (VAES),
+ BITFIELD (VPCLMULQDQ),
+ BITFIELD (WBNOINVD),
+ BITFIELD (PCONFIG),
+ BITFIELD (WAITPKG),
+ BITFIELD (UINTR),
+ BITFIELD (CLDEMOTE),
+ BITFIELD (AMX_INT8),
+ BITFIELD (AMX_BF16),
+ BITFIELD (AMX_FP16),
+ BITFIELD (AMX_TILE),
+ BITFIELD (MOVDIRI),
+ BITFIELD (MOVDIR64B),
+ BITFIELD (ENQCMD),
+ BITFIELD (SERIALIZE),
+ BITFIELD (RDPRU),
+ BITFIELD (MCOMMIT),
+ BITFIELD (SEV_ES),
+ BITFIELD (TSXLDTRK),
+ BITFIELD (KL),
+ BITFIELD (WideKL),
+ BITFIELD (HRESET),
+ BITFIELD (INVLPGB),
+ BITFIELD (TLBSYNC),
+ BITFIELD (SNP),
+ BITFIELD (RMPQUERY),
+ BITFIELD (64),
+ BITFIELD (No64),
#ifdef CpuUnused
- BITFIELD (CpuUnused),
+ BITFIELD (Unused),
#endif
};
+#undef BITFIELD
+#define BITFIELD(n) { n, 0, #n }
+
static bitfield opcode_modifiers[] =
{
BITFIELD (D),