diff --git a/libc/intrin/x86names.c b/libc/intrin/x86names.c index a73dd551a..cd58e53e2 100644 --- a/libc/intrin/x86names.c +++ b/libc/intrin/x86names.c @@ -55,5 +55,10 @@ const struct IdName kX86MarchNames[] = { {X86_MARCH_TREMONT, "Tremont"}, // {X86_MARCH_KNIGHTSLANDING, "Knights Landing"}, // {X86_MARCH_KNIGHTSMILL, "Knights Mill"}, // + {X86_MARCH_SAPPHIRERAPIDS, "Sapphire Rapids"}, // + {X86_MARCH_ALDERLAKE, "Alder Lake"}, // + {X86_MARCH_COMETLAKE, "Comet Lake"}, // + {X86_MARCH_RAPTORLAKE, "Raptor Lake"}, // + {X86_MARCH_ROCKETLAKE, "Rocket Lake"}, // {0}, // }; diff --git a/libc/nexgen32e/x86info.h b/libc/nexgen32e/x86info.h index 3e25acc08..14eed9fd3 100644 --- a/libc/nexgen32e/x86info.h +++ b/libc/nexgen32e/x86info.h @@ -43,6 +43,11 @@ #define X86_MARCH_TREMONT 19 #define X86_MARCH_KNIGHTSLANDING 20 #define X86_MARCH_KNIGHTSMILL 21 +#define X86_MARCH_SAPPHIRERAPIDS 22 +#define X86_MARCH_ALDERLAKE 23 +#define X86_MARCH_COMETLAKE 24 +#define X86_MARCH_RAPTORLAKE 25 +#define X86_MARCH_ROCKETLAKE 26 #define X86_GRADE_UNKNOWN 0 #define X86_GRADE_APPLIANCE 1 diff --git a/libc/str/kx86processormodels.c b/libc/str/kx86processormodels.c index 24d5959bf..d5f62ea3c 100644 --- a/libc/str/kx86processormodels.c +++ b/libc/str/kx86processormodels.c @@ -69,12 +69,22 @@ const struct X86ProcessorModel kX86ProcessorModels[] = { {0x067E, X86_MARCH_ICELAKE, X86_GRADE_MOBILE}, {0x0685, X86_MARCH_KNIGHTSMILL, X86_GRADE_SCIENCE}, {0x0686, X86_MARCH_TREMONT, X86_GRADE_APPLIANCE}, + {0x068A, X86_MARCH_TREMONT, X86_GRADE_APPLIANCE}, {0x068C, X86_MARCH_TIGERLAKE, X86_GRADE_MOBILE}, {0x068D, X86_MARCH_TIGERLAKE, X86_GRADE_CLIENT}, {0x068E, X86_MARCH_KABYLAKE, X86_GRADE_MOBILE}, + {0x068F, X86_MARCH_SAPPHIRERAPIDS, X86_GRADE_SERVER}, {0x0696, X86_MARCH_TREMONT, X86_GRADE_APPLIANCE}, + {0x0696, X86_MARCH_TREMONT, X86_GRADE_APPLIANCE}, + {0x0697, X86_MARCH_ALDERLAKE, X86_GRADE_CLIENT}, + {0x069A, X86_MARCH_ALDERLAKE, X86_GRADE_CLIENT}, + {0x069C, X86_MARCH_TREMONT, X86_GRADE_APPLIANCE}, {0x069D, X86_MARCH_ICELAKE, X86_GRADE_SCIENCE}, {0x069E, X86_MARCH_KABYLAKE, X86_GRADE_CLIENT}, + {0x06A5, X86_MARCH_COMETLAKE, X86_GRADE_CLIENT}, + {0x06A7, X86_MARCH_ROCKETLAKE, X86_GRADE_CLIENT}, + {0x06B7, X86_MARCH_RAPTORLAKE, X86_GRADE_CLIENT}, + {0x06BA, X86_MARCH_RAPTORLAKE, X86_GRADE_CLIENT}, /* */ }; diff --git a/tool/viz/cpuid.c b/tool/viz/cpuid.c index 563a41549..b6b7e0bb5 100644 --- a/tool/viz/cpuid.c +++ b/tool/viz/cpuid.c @@ -73,7 +73,7 @@ static void showstrata(void) { void showcachesizes(void) { unsigned i; CPUID4_ITERATE(i, { - printf("%-19s%s%s %u-way %,7u byte cache w/%s %,5u sets of %u byte lines " + printf("%-19s%s%s %2u-way %,9u byte cache w/%s %,6u sets of %u byte lines " "shared across %u threads\n", gc(xasprintf("Level %u%s", CPUID4_CACHE_LEVEL, CPUID4_CACHE_TYPE == 1 ? " data"