Compare commits

...

3 Commits
i290 ... i230

4 changed files with 16 additions and 5 deletions

View File

@@ -412,6 +412,7 @@ struct cpuInfo* get_cpu_info_mach(struct cpuInfo* cpu) {
cpu->peak_performance = get_peak_performance(cpu); cpu->peak_performance = get_peak_performance(cpu);
} }
else if(cpu_family == CPUFAMILY_ARM_EVEREST_SAWTOOTH || else if(cpu_family == CPUFAMILY_ARM_EVEREST_SAWTOOTH ||
cpu_family == CPUFAMILY_ARM_EVEREST_SAWTOOTH_2 ||
cpu_family == CPUFAMILY_ARM_EVEREST_SAWTOOTH_PRO || cpu_family == CPUFAMILY_ARM_EVEREST_SAWTOOTH_PRO ||
cpu_family == CPUFAMILY_ARM_EVEREST_SAWTOOTH_MAX) { cpu_family == CPUFAMILY_ARM_EVEREST_SAWTOOTH_MAX) {
fill_cpu_info_everest_sawtooth(cpu, pcores, ecores); fill_cpu_info_everest_sawtooth(cpu, pcores, ecores);

View File

@@ -1115,10 +1115,12 @@ struct system_on_chip* guess_soc_apple(struct system_on_chip* soc) {
} }
} }
else if(cpu_family == CPUFAMILY_ARM_EVEREST_SAWTOOTH || else if(cpu_family == CPUFAMILY_ARM_EVEREST_SAWTOOTH ||
cpu_family == CPUFAMILY_ARM_EVEREST_SAWTOOTH_2 ||
cpu_family == CPUFAMILY_ARM_EVEREST_SAWTOOTH_PRO || cpu_family == CPUFAMILY_ARM_EVEREST_SAWTOOTH_PRO ||
cpu_family == CPUFAMILY_ARM_EVEREST_SAWTOOTH_MAX) { cpu_family == CPUFAMILY_ARM_EVEREST_SAWTOOTH_MAX) {
// Check M3 version // Check M3 version
if(cpu_family == CPUFAMILY_ARM_EVEREST_SAWTOOTH) { if(cpu_family == CPUFAMILY_ARM_EVEREST_SAWTOOTH ||
cpu_family == CPUFAMILY_ARM_EVEREST_SAWTOOTH_2) {
fill_soc(soc, "M3", SOC_APPLE_M3, 3); fill_soc(soc, "M3", SOC_APPLE_M3, 3);
} }
else if(cpu_family == CPUFAMILY_ARM_EVEREST_SAWTOOTH_PRO) { else if(cpu_family == CPUFAMILY_ARM_EVEREST_SAWTOOTH_PRO) {

View File

@@ -33,6 +33,7 @@ enum {
ISA_ARMv8_3_A, ISA_ARMv8_3_A,
ISA_ARMv8_4_A, ISA_ARMv8_4_A,
ISA_ARMv8_5_A, ISA_ARMv8_5_A,
ISA_ARMv8_6_A,
ISA_ARMv9_A ISA_ARMv9_A
}; };
@@ -93,8 +94,10 @@ static const ISA isas_uarch[] = {
[UARCH_EXYNOS_M5] = ISA_ARMv8_2_A, [UARCH_EXYNOS_M5] = ISA_ARMv8_2_A,
[UARCH_ICESTORM] = ISA_ARMv8_5_A, // https://github.com/llvm/llvm-project/blob/main/llvm/include/llvm/Support/AArch64TargetParser.def [UARCH_ICESTORM] = ISA_ARMv8_5_A, // https://github.com/llvm/llvm-project/blob/main/llvm/include/llvm/Support/AArch64TargetParser.def
[UARCH_FIRESTORM] = ISA_ARMv8_5_A, [UARCH_FIRESTORM] = ISA_ARMv8_5_A,
[UARCH_BLIZZARD] = ISA_ARMv8_5_A, // Not confirmed [UARCH_BLIZZARD] = ISA_ARMv8_6_A, // https://github.com/llvm/llvm-project/blob/main/llvm/unittests/TargetParser/TargetParserTest.cpp
[UARCH_AVALANCHE] = ISA_ARMv8_5_A, [UARCH_AVALANCHE] = ISA_ARMv8_6_A, // https://github.com/llvm/llvm-project/blob/main/llvm/unittests/TargetParser/TargetParserTest.cpp
[UARCH_SAWTOOTH] = ISA_ARMv8_6_A, // https://github.com/llvm/llvm-project/blob/main/llvm/unittests/TargetParser/TargetParserTest.cpp
[UARCH_EVEREST] = ISA_ARMv8_6_A, // https://github.com/llvm/llvm-project/blob/main/llvm/unittests/TargetParser/TargetParserTest.cpp
[UARCH_PJ4] = ISA_ARMv7_A, [UARCH_PJ4] = ISA_ARMv7_A,
[UARCH_XIAOMI] = ISA_ARMv8_A, [UARCH_XIAOMI] = ISA_ARMv8_A,
}; };
@@ -112,6 +115,7 @@ static char* isas_string[] = {
[ISA_ARMv8_3_A] = "ARMv8.3", [ISA_ARMv8_3_A] = "ARMv8.3",
[ISA_ARMv8_4_A] = "ARMv8.4", [ISA_ARMv8_4_A] = "ARMv8.4",
[ISA_ARMv8_5_A] = "ARMv8.5", [ISA_ARMv8_5_A] = "ARMv8.5",
[ISA_ARMv8_6_A] = "ARMv8.6",
[ISA_ARMv9_A] = "ARMv9" [ISA_ARMv9_A] = "ARMv9"
}; };
@@ -271,6 +275,7 @@ bool is_ARMv8_or_newer(struct cpuInfo* cpu) {
cpu->arch->isa == ISA_ARMv8_3_A || cpu->arch->isa == ISA_ARMv8_3_A ||
cpu->arch->isa == ISA_ARMv8_4_A || cpu->arch->isa == ISA_ARMv8_4_A ||
cpu->arch->isa == ISA_ARMv8_5_A || cpu->arch->isa == ISA_ARMv8_5_A ||
cpu->arch->isa == ISA_ARMv8_6_A ||
cpu->arch->isa == ISA_ARMv9_A; cpu->arch->isa == ISA_ARMv9_A;
} }

View File

@@ -21,9 +21,12 @@
#define CPUFAMILY_ARM_AVALANCHE_BLIZZARD 0xDA33D83D #define CPUFAMILY_ARM_AVALANCHE_BLIZZARD 0xDA33D83D
#endif #endif
// M3 / A16 / A17 // M3 / A16 / A17
// https://ratfactor.com/zig/stdlib-browseable2/c/darwin.zig.html // M3: https://ratfactor.com/zig/stdlib-browseable2/c/darwin.zig.html
// https://github.com/Dr-Noob/cpufetch/issues/210 // M3_2: https://github.com/Dr-Noob/cpufetch/issues/230
// PRO: https://github.com/Dr-Noob/cpufetch/issues/225
// MAX: https://github.com/Dr-Noob/cpufetch/issues/210
#define CPUFAMILY_ARM_EVEREST_SAWTOOTH 0x8765EDEA #define CPUFAMILY_ARM_EVEREST_SAWTOOTH 0x8765EDEA
#define CPUFAMILY_ARM_EVEREST_SAWTOOTH_2 0xFA33415E
#define CPUFAMILY_ARM_EVEREST_SAWTOOTH_PRO 0x5F4DEA93 #define CPUFAMILY_ARM_EVEREST_SAWTOOTH_PRO 0x5F4DEA93
#define CPUFAMILY_ARM_EVEREST_SAWTOOTH_MAX 0x72015832 #define CPUFAMILY_ARM_EVEREST_SAWTOOTH_MAX 0x72015832