SHA256
1
0
forked from pool/mpiP
mpiP/mpip.unwinder.patch
Nicolas Morey cb3490f2be - Refresh patched to git format
- mpip.unwinder.patch
  - Add-return-value-to-non-void-function.patch
  - pc_lookup-replace-PTR-with-void.patch
- Add configure-fix-compilation-error-for-GCC-14.patch to
  fix compilation with GCC >= 14
- Add arch-add-generic-arch-using-GCC-builtins.patch to fix compilation
  on s390.

OBS-URL: https://build.opensuse.org/package/show/science:HPC/mpiP?expand=0&rev=48
2024-09-07 11:25:34 +00:00

40 lines
1.0 KiB
Diff

commit ca14b75af545536ca04cc5a1fb19b77b3e213fe4
Author: Nicolas Morey <nmorey@suse.com>
Date: Thu Sep 5 14:57:46 2024 +0200
mpip.unwinder
Aarch64 support
diff --git Defs.mak.in Defs.mak.in
index 7406eb610d7f..c3b231798d5f 100644
--- Defs.mak.in
+++ Defs.mak.in
@@ -64,6 +64,9 @@ ifeq ($(OS),OSF1)
endif
ifeq ($(OS),Linux)
+ ifeq ($(ARCH), aarch64)
+ CPPFLAGS += -DAARCH64
+ endif
ifeq ($(ARCH),i686)
CPPFLAGS += -DIA32
endif
diff --git mpiPi.h mpiPi.h
index 56ce5bd338eb..0b602e31c813 100644
--- mpiPi.h
+++ mpiPi.h
@@ -231,6 +231,12 @@ extern void *MPIR_ToPointer (int idx);
#define FramePC(fp) ((void *) *(long *) (((long) fp) + (2 * sizeof (void *))))
#define NextFP(fp) ((void *) *(long *) fp)
+/* AArch64 Linux */
+#elif defined(Linux) && defined(AARCH64)
+#define ParentFP(jb) ((void*) jb[0].__jmpbuf[10])
+#define FramePC(fp) ((void*)(((void**)fp)[1]))
+#define NextFP(fp) ((void*)((void**)fp)[0])
+
/* IA32 Linux */
#elif defined(Linux) && defined(IA32)
#define ParentFP(jb) ((void*) jb[0].__jmpbuf[3])