summarylogtreecommitdiffstats
path: root/0079-clang-arm64.patch
blob: ab75edefd6ba8551c62ff4ef003a332c8c6d266b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
From 61eb03c5793ae5c6026c7a854e1165556e3c42e7 Mon Sep 17 00:00:00 2001
From: jeremyd2019 <4524874+jeremyd2019@users.noreply.github.com>
Date: Thu, 17 Jun 2021 18:52:36 +0530
Subject: [PATCH 079/N] clang arm64

---
 Python/getcompiler.c | 11 ++++++++++-
 1 file changed, 10 insertions(+), 1 deletion(-)

diff --git a/Python/getcompiler.c b/Python/getcompiler.c
index adccaa7..b529e29 100644
--- a/Python/getcompiler.c
+++ b/Python/getcompiler.c
@@ -7,7 +7,7 @@
 
 // Note the __clang__ conditional has to come before the __GNUC__ one because
 // clang pretends to be GCC.
-#if defined(__clang__)
+#if defined(__clang__) && !defined(_WIN32)
 #define COMPILER "\n[Clang " __clang_version__ "]"
 #elif defined(__GNUC__)
 /* To not break compatibility with things that determine
@@ -18,6 +18,8 @@
 #define COMP_SEP " "
 #if defined(__x86_64__)
 #define ARCH_SUFFIX " 64 bit (AMD64)"
+#elif defined(__aarch64__)
+#define ARCH_SUFFIX " 64 bit (ARM64)"
 #else
 #define ARCH_SUFFIX " 32 bit"
 #endif
@@ -25,7 +27,14 @@
 #define COMP_SEP "\n"
 #define ARCH_SUFFIX ""
 #endif
+#if defined(__clang__)
+#define str(x) #x
+#define xstr(x) str(x)
+#define COMPILER COMP_SEP "[GCC Clang " xstr(__clang_major__) "." \
+        xstr(__clang_minor__) "." xstr(__clang_patchlevel__) ARCH_SUFFIX "]"
+#else
 #define COMPILER COMP_SEP "[GCC " __VERSION__ ARCH_SUFFIX "]"
+#endif
 // Generic fallbacks.
 #elif defined(__cplusplus)
 #define COMPILER "[C++]"
-- 
2.33.0