[llvm] Add Apple M5 host detection (PR #200616)
via llvm-commits
llvm-commits at lists.llvm.org
Thu Jun 11 00:11:51 PDT 2026
https://github.com/xyloflake updated https://github.com/llvm/llvm-project/pull/200616
>From bee37f7ae2f1940f39075ff7aee82221337c064d Mon Sep 17 00:00:00 2001
From: Xyloflake <xyloflake at gmail.com>
Date: Sun, 31 May 2026 06:05:14 +0530
Subject: [PATCH 1/2] Implement Apple M5 host detection
---
llvm/lib/TargetParser/Host.cpp | 13 +++++++++++--
1 file changed, 11 insertions(+), 2 deletions(-)
diff --git a/llvm/lib/TargetParser/Host.cpp b/llvm/lib/TargetParser/Host.cpp
index 34f4b17a3855e..db8eaf805cfb2 100644
--- a/llvm/lib/TargetParser/Host.cpp
+++ b/llvm/lib/TargetParser/Host.cpp
@@ -1752,6 +1752,10 @@ StringRef sys::getHostCPUName() {
#define CPUFAMILY_ARM_BRAVA 0x17d5b93a
#define CPUFAMILY_ARM_TAHITI 0x75d4acb9
#define CPUFAMILY_ARM_TUPAI 0x204526d0
+#define CPUFAMILY_ARM_HIDRA 0x1d5a87e8
+#define CPUFAMILY_ARM_SOTRA 0xf76c5b1a
+#define CPUFAMILY_ARM_THERA 0xab345f09
+#define CPUFAMILY_ARM_TILOS 0x01d7a72b
StringRef sys::getHostCPUName() {
uint32_t Family;
@@ -1812,13 +1816,18 @@ StringRef sys::getHostCPUName() {
case CPUFAMILY_ARM_COLL: // A17 Pro
return "apple-a17";
case CPUFAMILY_ARM_DONAN: // M4
- case CPUFAMILY_ARM_BRAVA: // M4 Max
+ case CPUFAMILY_ARM_BRAVA: // M4 Pro/Max
case CPUFAMILY_ARM_TAHITI: // A18 Pro
case CPUFAMILY_ARM_TUPAI: // A18
return "apple-m4";
+ case CPUFAMILY_ARM_HIDRA: // M5
+ case CPUFAMILY_ARM_SOTRA: // M5 Pro/Max
+ case CPUFAMILY_ARM_THERA: // A19 Pro
+ case CPUFAMILY_ARM_TILOS: // A19
+ return "apple-m5";
default:
// Default to the newest CPU we know about.
- return "apple-m4";
+ return "apple-m5";
}
}
#elif defined(_AIX)
>From d1d20107503d7930e426df14f107f97ac9bd01ea Mon Sep 17 00:00:00 2001
From: Xyloflake <xyloflake at gmail.com>
Date: Thu, 11 Jun 2026 07:09:44 +0000
Subject: [PATCH 2/2] fix formatting
---
llvm/lib/TargetParser/Host.cpp | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/llvm/lib/TargetParser/Host.cpp b/llvm/lib/TargetParser/Host.cpp
index db8eaf805cfb2..9557aa41a4326 100644
--- a/llvm/lib/TargetParser/Host.cpp
+++ b/llvm/lib/TargetParser/Host.cpp
@@ -1820,10 +1820,10 @@ StringRef sys::getHostCPUName() {
case CPUFAMILY_ARM_TAHITI: // A18 Pro
case CPUFAMILY_ARM_TUPAI: // A18
return "apple-m4";
- case CPUFAMILY_ARM_HIDRA: // M5
- case CPUFAMILY_ARM_SOTRA: // M5 Pro/Max
- case CPUFAMILY_ARM_THERA: // A19 Pro
- case CPUFAMILY_ARM_TILOS: // A19
+ case CPUFAMILY_ARM_HIDRA: // M5
+ case CPUFAMILY_ARM_SOTRA: // M5 Pro/Max
+ case CPUFAMILY_ARM_THERA: // A19 Pro
+ case CPUFAMILY_ARM_TILOS: // A19
return "apple-m5";
default:
// Default to the newest CPU we know about.
More information about the llvm-commits
mailing list