diff options
Diffstat (limited to 'meta/recipes-devtools/python/python3/fix-armv5.patch')
| -rw-r--r-- | meta/recipes-devtools/python/python3/fix-armv5.patch | 65 |
1 files changed, 0 insertions, 65 deletions
diff --git a/meta/recipes-devtools/python/python3/fix-armv5.patch b/meta/recipes-devtools/python/python3/fix-armv5.patch deleted file mode 100644 index 961404b24f..0000000000 --- a/meta/recipes-devtools/python/python3/fix-armv5.patch +++ /dev/null | |||
| @@ -1,65 +0,0 @@ | |||
| 1 | From 18b9079ddbc149d6b99c922630c246812e4d8ae7 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: "Miss Islington (bot)" | ||
| 3 | <31488909+miss-islington@users.noreply.github.com> | ||
| 4 | Date: Wed, 16 Oct 2024 16:48:40 +0200 | ||
| 5 | Subject: [PATCH] [3.13] gh-125444: Fix illegal instruction for older Arm | ||
| 6 | architectures (GH-125574) (GH-125595) | ||
| 7 | MIME-Version: 1.0 | ||
| 8 | Content-Type: text/plain; charset=UTF-8 | ||
| 9 | Content-Transfer-Encoding: 8bit | ||
| 10 | |||
| 11 | On Arm v5 it is not possible to get the thread ID via c13 register | ||
| 12 | hence the illegal instruction. The c13 register started to provide | ||
| 13 | thread ID since Arm v6K architecture variant. Other variants of | ||
| 14 | Arm v6 (T2, Z and base) don’t provide the thread ID via c13. | ||
| 15 | For the sake of simplicity we group v5 and v6 together and | ||
| 16 | consider that instructions for Arm v7 only. | ||
| 17 | (cherry picked from commit feda9aa73ab95d17a291db22c416146f8e70edeb) | ||
| 18 | |||
| 19 | Co-authored-by: Diego Russo <diego.russo@arm.com> | ||
| 20 | |||
| 21 | Upstream-Status: Backport [https://github.com/python/cpython/commit/18b9079ddbc149d6b99c922630c246812e4d8ae7] | ||
| 22 | Signed-off-by: Alexander Kanavin <alex@linutronix.de> | ||
| 23 | --- | ||
| 24 | Include/internal/mimalloc/mimalloc/prim.h | 4 ++-- | ||
| 25 | Include/object.h | 2 +- | ||
| 26 | .../2024-10-16-12-12-39.gh-issue-125444.9tG2X6.rst | 1 + | ||
| 27 | 3 files changed, 4 insertions(+), 3 deletions(-) | ||
| 28 | create mode 100644 Misc/NEWS.d/next/Core_and_Builtins/2024-10-16-12-12-39.gh-issue-125444.9tG2X6.rst | ||
| 29 | |||
| 30 | diff --git a/Include/internal/mimalloc/mimalloc/prim.h b/Include/internal/mimalloc/mimalloc/prim.h | ||
| 31 | index 8a60d528458e6c..322ab29e6b41c2 100644 | ||
| 32 | --- a/Include/internal/mimalloc/mimalloc/prim.h | ||
| 33 | +++ b/Include/internal/mimalloc/mimalloc/prim.h | ||
| 34 | @@ -151,9 +151,9 @@ static inline mi_threadid_t _mi_prim_thread_id(void) mi_attr_noexcept { | ||
| 35 | // If you test on another platform and it works please send a PR :-) | ||
| 36 | // see also https://akkadia.org/drepper/tls.pdf for more info on the TLS register. | ||
| 37 | #elif defined(__GNUC__) && ( \ | ||
| 38 | - (defined(__GLIBC__) && (defined(__x86_64__) || defined(__i386__) || defined(__arm__) || defined(__aarch64__))) \ | ||
| 39 | + (defined(__GLIBC__) && (defined(__x86_64__) || defined(__i386__) || (defined(__arm__) && __ARM_ARCH >= 7) || defined(__aarch64__))) \ | ||
| 40 | || (defined(__APPLE__) && (defined(__x86_64__) || defined(__aarch64__))) \ | ||
| 41 | - || (defined(__BIONIC__) && (defined(__x86_64__) || defined(__i386__) || defined(__arm__) || defined(__aarch64__))) \ | ||
| 42 | + || (defined(__BIONIC__) && (defined(__x86_64__) || defined(__i386__) || (defined(__arm__) && __ARM_ARCH >= 7) || defined(__aarch64__))) \ | ||
| 43 | || (defined(__FreeBSD__) && (defined(__x86_64__) || defined(__i386__) || defined(__aarch64__))) \ | ||
| 44 | || (defined(__OpenBSD__) && (defined(__x86_64__) || defined(__i386__) || defined(__aarch64__))) \ | ||
| 45 | ) | ||
| 46 | diff --git a/Include/object.h b/Include/object.h | ||
| 47 | index 78aa7ad0f459ff..b53f9acfebdb0c 100644 | ||
| 48 | --- a/Include/object.h | ||
| 49 | +++ b/Include/object.h | ||
| 50 | @@ -259,7 +259,7 @@ _Py_ThreadId(void) | ||
| 51 | __asm__("movq %%gs:0, %0" : "=r" (tid)); // x86_64 macOSX uses GS | ||
| 52 | #elif defined(__x86_64__) | ||
| 53 | __asm__("movq %%fs:0, %0" : "=r" (tid)); // x86_64 Linux, BSD uses FS | ||
| 54 | -#elif defined(__arm__) | ||
| 55 | +#elif defined(__arm__) && __ARM_ARCH >= 7 | ||
| 56 | __asm__ ("mrc p15, 0, %0, c13, c0, 3\nbic %0, %0, #3" : "=r" (tid)); | ||
| 57 | #elif defined(__aarch64__) && defined(__APPLE__) | ||
| 58 | __asm__ ("mrs %0, tpidrro_el0" : "=r" (tid)); | ||
| 59 | diff --git a/Misc/NEWS.d/next/Core_and_Builtins/2024-10-16-12-12-39.gh-issue-125444.9tG2X6.rst b/Misc/NEWS.d/next/Core_and_Builtins/2024-10-16-12-12-39.gh-issue-125444.9tG2X6.rst | ||
| 60 | new file mode 100644 | ||
| 61 | index 00000000000000..13c1e745edf8d5 | ||
| 62 | --- /dev/null | ||
| 63 | +++ b/Misc/NEWS.d/next/Core_and_Builtins/2024-10-16-12-12-39.gh-issue-125444.9tG2X6.rst | ||
| 64 | @@ -0,0 +1 @@ | ||
| 65 | +Fix illegal instruction for older Arm architectures. Patch by Diego Russo, testing by Ross Burton. | ||
