Skip to content

Commit

Permalink
sapphire rapids XED enumerated with pin 3.30
Browse files Browse the repository at this point in the history
  • Loading branch information
Michael Allen Goldstein committed Jan 31, 2024
1 parent 94942a2 commit 08541a7
Show file tree
Hide file tree
Showing 2 changed files with 163 additions and 5 deletions.
Original file line number Diff line number Diff line change
@@ -1,8 +1,134 @@
const char* cpu_decoder_c::g_tr_opcode_names[MAX_TR_OPCODE_NAME] = {
"INVALID",
"3DNOW",
"ADOX_ADCX",
"AES",
"AMX_TILE",
"APX",
"AVX",
"AVX2",
"AVX2GATHER",
"AVX512",
"AVX512_4FMAPS",
"AVX512_4VNNIW",
"AVX512_BITALG",
"AVX512_VBMI",
"AVX512_VP2INTERSECT",
"AVX_IFMA",
"BINARY",
"BITBYTE",
"BLEND",
"BMI1",
"BMI2",
"BROADCAST",
"CALL",
"CET",
"CLDEMOTE",
"CLFLUSHOPT",
"CLWB",
"CLZERO",
"CMOV",
"COMPRESS",
"COND_BR",
"CONFLICT",
"CONVERT",
"DATAXFER",
"DECIMAL",
"ENQCMD",
"EXPAND",
"FCMOV",
"FLAGOP",
"FMA4",
"FP16",
"GATHER",
"GFNI",
"HRESET",
"IFMA",
"INTERRUPT",
"IO",
"IOSTRINGOP",
"KEYLOCKER",
"KEYLOCKER_WIDE",
"KMASK",
"LEGACY",
"LOGICAL",
"LOGICAL_FP",
"LZCNT",
"MISC",
"MMX",
"MOVDIR",
"MPX",
"MSRLIST",
"NOP",
"PBNDKB",
"PCLMULQDQ",
"PCONFIG",
"PKU",
"POP",
"PREFETCH",
"PREFETCHWT1",
"PTWRITE",
"PUSH",
"RDPID",
"RDPRU",
"RDRAND",
"RDSEED",
"RDWRFSGS",
"RET",
"ROTATE",
"SCATTER",
"SEGOP",
"SEMAPHORE",
"SERIALIZE",
"SETCC",
"SGX",
"SHA",
"SHA512",
"SHIFT",
"SMAP",
"SSE",
"STRINGOP",
"STTNI",
"SYSCALL",
"SYSRET",
"SYSTEM",
"TBM",
"TSX_LDTRK",
"UINTR",
"UNCOND_BR",
"VAES",
"VBMI2",
"VEX",
"VFMA",
"VIA_PADLOCK",
"VPCLMULQDQ",
"VTX",
"WAITPKG",
"WIDENOP",
"WRMSRNS",
"X87_ALU",
"XOP",
"XSAVE",
"XSAVEOPT",
"TR_MUL",
"TR_DIV",
"TR_FMUL",
"TR_FDIV",
"TR_NOP",
"PREFETCH_NTA",
"PREFETCH_T0",
"PREFETCH_T1",
"PREFETCH_T2",
"GPU_EN",
"CPU_OPCODE_LAST",
};
typedef enum CPU_OPCODE_ENUM_ {
XED_CATEGORY_INVALID,
XED_CATEGORY_3DNOW,
XED_CATEGORY_ADOX_ADCX,
XED_CATEGORY_AES,
XED_CATEGORY_AMX_TILE, //new
XED_CATEGORY_APX, //new
XED_CATEGORY_AVX,
XED_CATEGORY_AVX2,
XED_CATEGORY_AVX2GATHER,
Expand All @@ -11,6 +137,8 @@ typedef enum CPU_OPCODE_ENUM_ {
XED_CATEGORY_AVX512_4VNNIW,
XED_CATEGORY_AVX512_BITALG,
XED_CATEGORY_AVX512_VBMI,
XED_CATEGORY_AVX512_VP2INTERSECT, //new
XED_CATEGORY_AVX_IFMA, //new
XED_CATEGORY_BINARY,
XED_CATEGORY_BITBYTE,
XED_CATEGORY_BLEND,
Expand All @@ -19,6 +147,7 @@ typedef enum CPU_OPCODE_ENUM_ {
XED_CATEGORY_BROADCAST,
XED_CATEGORY_CALL,
XED_CATEGORY_CET,
XED_CATEGORY_CLDEMOTE, //new
XED_CATEGORY_CLFLUSHOPT,
XED_CATEGORY_CLWB,
XED_CATEGORY_CLZERO,
Expand All @@ -29,33 +158,43 @@ typedef enum CPU_OPCODE_ENUM_ {
XED_CATEGORY_CONVERT,
XED_CATEGORY_DATAXFER,
XED_CATEGORY_DECIMAL,
XED_CATEGORY_ENQCMD, //new
XED_CATEGORY_EXPAND,
XED_CATEGORY_FCMOV,
XED_CATEGORY_FLAGOP,
XED_CATEGORY_FMA4,
XED_CATEGORY_FP16, //new
XED_CATEGORY_GATHER,
XED_CATEGORY_GFNI,
XED_CATEGORY_HRESET, //new
XED_CATEGORY_IFMA,
XED_CATEGORY_INTERRUPT,
XED_CATEGORY_IO,
XED_CATEGORY_IOSTRINGOP,
XED_CATEGORY_KEYLOCKER, //new
XED_CATEGORY_KEYLOCKER_WIDE, //new
XED_CATEGORY_KMASK,
XED_CATEGORY_LEGACY, //new
XED_CATEGORY_LOGICAL,
XED_CATEGORY_LOGICAL_FP,
XED_CATEGORY_LZCNT,
XED_CATEGORY_MISC,
XED_CATEGORY_MMX,
XED_CATEGORY_MOVDIR, //new
XED_CATEGORY_MPX,
XED_CATEGORY_MSRLIST, //new
XED_CATEGORY_NOP,
XED_CATEGORY_PBNDKB, //new
XED_CATEGORY_PCLMULQDQ,
XED_CATEGORY_PCONFIG,
XED_CATEGORY_PKU,
XED_CATEGORY_POP,
XED_CATEGORY_PREFETCH,
XED_CATEGORY_PREFETCHWT1,
XED_CATEGORY_PT,
XED_CATEGORY_PTWRITE, //changed from XED_CATEGORY_PT?
XED_CATEGORY_PUSH,
XED_CATEGORY_RDPID,
XED_CATEGORY_RDPRU, //new
XED_CATEGORY_RDRAND,
XED_CATEGORY_RDSEED,
XED_CATEGORY_RDWRFSGS,
Expand All @@ -64,9 +203,11 @@ typedef enum CPU_OPCODE_ENUM_ {
XED_CATEGORY_SCATTER,
XED_CATEGORY_SEGOP,
XED_CATEGORY_SEMAPHORE,
XED_CATEGORY_SERIALIZE, //new
XED_CATEGORY_SETCC,
XED_CATEGORY_SGX,
XED_CATEGORY_SHA,
XED_CATEGORY_SHA512, //new
XED_CATEGORY_SHIFT,
XED_CATEGORY_SMAP,
XED_CATEGORY_SSE,
Expand All @@ -76,13 +217,19 @@ typedef enum CPU_OPCODE_ENUM_ {
XED_CATEGORY_SYSRET,
XED_CATEGORY_SYSTEM,
XED_CATEGORY_TBM,
XED_CATEGORY_TSX_LDTRK, //new
XED_CATEGORY_UINTR, //new
XED_CATEGORY_UNCOND_BR,
XED_CATEGORY_VAES,
XED_CATEGORY_VBMI2,
XED_CATEGORY_VEX, //new
XED_CATEGORY_VFMA,
XED_CATEGORY_VIA_PADLOCK, //new
XED_CATEGORY_VPCLMULQDQ,
XED_CATEGORY_VTX,
XED_CATEGORY_WAITPKG, //new
XED_CATEGORY_WIDENOP,
XED_CATEGORY_WRMSRNS, //new
XED_CATEGORY_X87_ALU,
XED_CATEGORY_XOP,
XED_CATEGORY_XSAVE,
Expand Down Expand Up @@ -295,6 +442,15 @@ const char* trace_read_c::g_tr_reg_names[MAX_TR_REG] = {
"k5",
"k6",
"k7",
"tmm0", //new
"tmm1", //new
"tmm2", //new
"tmm3", //new
"tmm4", //new
"tmm5", //new
"tmm6", //new
"tmm7", //new
"tileconfig", //new
"mxcsr",
"mxcsrmask",
"orig_rax",
Expand All @@ -305,8 +461,7 @@ const char* trace_read_c::g_tr_reg_names[MAX_TR_REG] = {
"fpip_sel",
"fpopcode",
"fpdp_off",
"fpdp_sel",
"fptag_full",
"fpdp_sel", //"fptag_full" removed?
"st0",
"st1",
"st2",
Expand All @@ -328,6 +483,7 @@ const char* trace_read_c::g_tr_reg_names[MAX_TR_REG] = {
"cr2",
"cr3",
"cr4",
"cr8", //new
"tssr",
"ldtr",
"tr",
Expand Down Expand Up @@ -420,3 +576,5 @@ const char* trace_read_c::g_tr_reg_names[MAX_TR_REG] = {
"inst_g27d",
"inst_g28d",
"inst_g29d",
"x87", //new
};
4 changes: 2 additions & 2 deletions tools/x86_trace_generator/trace_generator.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -188,12 +188,12 @@ void Finish(void);
void Initialize(void);
void sanity_check(void);

LOCALVAR CONTROL_MANAGER control;
GLOBALCVAR CONTROL_MANAGER control;

////////////////////////////////////////////////////////////////////////////////////////////////////////
// control handler for pinpoint (simpoint)
////////////////////////////////////////////////////////////////////////////////////////////////////////
LOCALFUN VOID Handler(EVENT_TYPE ev, void *v, CONTEXT *ctxt, void *ip, THREADID tid, bool bast)
LOCALCFUN VOID Handler(EVENT_TYPE ev, void *v, CONTEXT *ctxt, void *ip, THREADID tid, bool bast)
{
switch (ev)
{
Expand Down

0 comments on commit 08541a7

Please sign in to comment.