Files
macports-ports/databases/redis/files/0003-debug.c-fix-PowerPC-case-in-uc_mcontext.patch

37 lines
1.1 KiB
Diff

From 5dc45151360aea12f0c1247455f0d21a0ad8dc64 Mon Sep 17 00:00:00 2001
From: Sergey Fedorov <barracuda@macos-powerpc.org>
Date: Wed, 11 Sep 2024 22:33:24 +0800
Subject: [PATCH 3/3] debug.c: fix PowerPC case in uc_mcontext
---
src/debug.c | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
diff --git src/debug.c src/debug.c
index 78bacc946..c2b6814e1 100644
--- src/debug.c
+++ src/debug.c
@@ -1210,14 +1210,15 @@ static void* getAndSetMcontextEip(ucontext_t *uc, void *eip) {
} \
return old_val; \
} while(0)
-#if defined(__APPLE__) && !defined(MAC_OS_10_6_DETECTED)
- /* OSX < 10.6 */
+#if defined(__APPLE__) && defined(__POWERPC__)
+ /* OSX on PowerPC */
+ GET_SET_RETURN(uc->uc_mcontext->__ss.__srr0, eip);
+#elif defined(__APPLE__) && !defined(MAC_OS_10_6_DETECTED)
+ /* OSX < 10.6 on x86 */
#if defined(__x86_64__)
GET_SET_RETURN(uc->uc_mcontext->__ss.__rip, eip);
#elif defined(__i386__)
GET_SET_RETURN(uc->uc_mcontext->__ss.__eip, eip);
- #else
- GET_SET_RETURN(uc->uc_mcontext->__ss.__srr0, eip);
#endif
#elif defined(__APPLE__) && defined(MAC_OS_10_6_DETECTED)
/* OSX >= 10.6 */
--
2.46.0