* [PR PATCH] higan: add a patch to prevent elfv2 ppc64(le) crashes
@ 2019-07-16 18:26 voidlinux-github
2019-07-16 19:25 ` voidlinux-github
` (4 more replies)
0 siblings, 5 replies; 6+ messages in thread
From: voidlinux-github @ 2019-07-16 18:26 UTC (permalink / raw)
To: ml
[-- Attachment #1: Type: text/plain, Size: 401 bytes --]
There is a new pull request by q66 against master on the void-packages repository
https://github.com/void-ppc/void-packages higan-elfv2
https://github.com/void-linux/void-packages/pull/13158
higan: add a patch to prevent elfv2 ppc64(le) crashes
I was able to load an SNES ROM without segfaulting after this.
A patch file from https://github.com/void-linux/void-packages/pull/13158.patch is attached
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-higan-elfv2-13158.patch --]
[-- Type: application/text/x-diff, Size: 1206 bytes --]
From 6d772d4fdbe022199470dcd0773e82de8b1f71a3 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Tue, 16 Jul 2019 20:18:55 +0200
Subject: [PATCH] higan: add a patch to prevent elfv2 ppc64(le) crashes
[ci skip]
---
srcpkgs/higan/patches/ppc64-no-asm.patch | 16 ++++++++++++++++
1 file changed, 16 insertions(+)
create mode 100644 srcpkgs/higan/patches/ppc64-no-asm.patch
diff --git a/srcpkgs/higan/patches/ppc64-no-asm.patch b/srcpkgs/higan/patches/ppc64-no-asm.patch
new file mode 100644
index 00000000000..96287aaeb9b
--- /dev/null
+++ b/srcpkgs/higan/patches/ppc64-no-asm.patch
@@ -0,0 +1,16 @@
+Higan does not have matching assembly for ELFv2 ppc64 systems, so default
+to portable sjlj implementation before the bad ppc assembly can kick in.
+
+--- libco/libco.c
++++ libco/libco.c
+@@ -9,7 +9,9 @@
+ #include "amd64.c"
+ #elif defined(__arm__)
+ #include "arm.c"
+- #elif defined(_ARCH_PPC)
++ #elif defined(_ARCH_PPC) && (!defined(__powerpc64__) || \
++ !defined(_CALL_ELF) || (_CALL_ELF == 1))
++ /* this implementation is only for 32-bit ppc and ELFv1 ppc64 */
+ #include "ppc.c"
+ #elif defined(_WIN32)
+ #include "fiber.c"
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: higan: add a patch to prevent elfv2 ppc64(le) crashes
2019-07-16 18:26 [PR PATCH] higan: add a patch to prevent elfv2 ppc64(le) crashes voidlinux-github
@ 2019-07-16 19:25 ` voidlinux-github
2019-07-16 19:38 ` voidlinux-github
` (3 subsequent siblings)
4 siblings, 0 replies; 6+ messages in thread
From: voidlinux-github @ 2019-07-16 19:25 UTC (permalink / raw)
To: ml
[-- Attachment #1: Type: text/plain, Size: 180 bytes --]
New comment by q66 on void-packages repository
https://github.com/void-linux/void-packages/pull/13158#issuecomment-511952260
Comment:
Don't merge yet, I might have a better patch
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: higan: add a patch to prevent elfv2 ppc64(le) crashes
2019-07-16 18:26 [PR PATCH] higan: add a patch to prevent elfv2 ppc64(le) crashes voidlinux-github
2019-07-16 19:25 ` voidlinux-github
@ 2019-07-16 19:38 ` voidlinux-github
2019-07-17 2:31 ` [PR PATCH] [Updated] " voidlinux-github
` (2 subsequent siblings)
4 siblings, 0 replies; 6+ messages in thread
From: voidlinux-github @ 2019-07-16 19:38 UTC (permalink / raw)
To: ml
[-- Attachment #1: Type: text/plain, Size: 167 bytes --]
New comment by q66 on void-packages repository
https://github.com/void-linux/void-packages/pull/13158#issuecomment-511956418
Comment:
Ok, guess not. This one is fine
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PR PATCH] [Updated] higan: add a patch to prevent elfv2 ppc64(le) crashes
2019-07-16 18:26 [PR PATCH] higan: add a patch to prevent elfv2 ppc64(le) crashes voidlinux-github
2019-07-16 19:25 ` voidlinux-github
2019-07-16 19:38 ` voidlinux-github
@ 2019-07-17 2:31 ` voidlinux-github
2019-07-17 2:31 ` voidlinux-github
2019-07-18 5:38 ` [PR PATCH] [Merged]: " voidlinux-github
4 siblings, 0 replies; 6+ messages in thread
From: voidlinux-github @ 2019-07-17 2:31 UTC (permalink / raw)
To: ml
[-- Attachment #1: Type: text/plain, Size: 406 bytes --]
There is an updated pull request by q66 against master on the void-packages repository
https://github.com/void-ppc/void-packages higan-elfv2
https://github.com/void-linux/void-packages/pull/13158
higan: add a patch to prevent elfv2 ppc64(le) crashes
I was able to load an SNES ROM without segfaulting after this.
A patch file from https://github.com/void-linux/void-packages/pull/13158.patch is attached
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-higan-elfv2-13158.patch --]
[-- Type: application/text/x-diff, Size: 1509 bytes --]
From d6164528879d5cc68e8b13f35dc2ae11bdaae4d2 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Tue, 16 Jul 2019 20:18:55 +0200
Subject: [PATCH] higan: add a patch to prevent elfv2 ppc64(le) crashes
[ci skip]
---
srcpkgs/higan/patches/ppc64-no-asm.patch | 26 ++++++++++++++++++++++++
1 file changed, 26 insertions(+)
create mode 100644 srcpkgs/higan/patches/ppc64-no-asm.patch
diff --git a/srcpkgs/higan/patches/ppc64-no-asm.patch b/srcpkgs/higan/patches/ppc64-no-asm.patch
new file mode 100644
index 00000000000..e2a58d5f3df
--- /dev/null
+++ b/srcpkgs/higan/patches/ppc64-no-asm.patch
@@ -0,0 +1,26 @@
+Higan's ppc code assumes big endian, so fall back to sjlj for that. ELFv2 big
+endian just needs a small patch to function.
+
+--- libco/libco.c
++++ libco/libco.c
+@@ -9,7 +9,7 @@
+ #include "amd64.c"
+ #elif defined(__arm__)
+ #include "arm.c"
+- #elif defined(_ARCH_PPC)
++ #elif defined(_ARCH_PPC) && !defined(__LITTLE_ENDIAN__)
+ #include "ppc.c"
+ #elif defined(_WIN32)
+ #include "fiber.c"
+--- libco/ppc.c
++++ libco/ppc.c
+@@ -36,7 +36,8 @@ static thread_local cothread_t co_active_handle = 0;
+
+ /* whether function calls are indirect through a descriptor, or are directly to function */
+ #ifndef LIBCO_PPCDESC
+- #if !_CALL_SYSV && (_CALL_AIX || _CALL_AIXDESC || LIBCO_PPC64)
++ #if !_CALL_SYSV && (_CALL_AIX || _CALL_AIXDESC || \
++ (LIBCO_PPC64 && (!defined(_CALL_ELF) || _CALL_ELF == 1)))
+ #define LIBCO_PPCDESC 1
+ #endif
+ #endif
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PR PATCH] [Updated] higan: add a patch to prevent elfv2 ppc64(le) crashes
2019-07-16 18:26 [PR PATCH] higan: add a patch to prevent elfv2 ppc64(le) crashes voidlinux-github
` (2 preceding siblings ...)
2019-07-17 2:31 ` [PR PATCH] [Updated] " voidlinux-github
@ 2019-07-17 2:31 ` voidlinux-github
2019-07-18 5:38 ` [PR PATCH] [Merged]: " voidlinux-github
4 siblings, 0 replies; 6+ messages in thread
From: voidlinux-github @ 2019-07-17 2:31 UTC (permalink / raw)
To: ml
[-- Attachment #1: Type: text/plain, Size: 406 bytes --]
There is an updated pull request by q66 against master on the void-packages repository
https://github.com/void-ppc/void-packages higan-elfv2
https://github.com/void-linux/void-packages/pull/13158
higan: add a patch to prevent elfv2 ppc64(le) crashes
I was able to load an SNES ROM without segfaulting after this.
A patch file from https://github.com/void-linux/void-packages/pull/13158.patch is attached
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-higan-elfv2-13158.patch --]
[-- Type: application/text/x-diff, Size: 1509 bytes --]
From d6164528879d5cc68e8b13f35dc2ae11bdaae4d2 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Tue, 16 Jul 2019 20:18:55 +0200
Subject: [PATCH] higan: add a patch to prevent elfv2 ppc64(le) crashes
[ci skip]
---
srcpkgs/higan/patches/ppc64-no-asm.patch | 26 ++++++++++++++++++++++++
1 file changed, 26 insertions(+)
create mode 100644 srcpkgs/higan/patches/ppc64-no-asm.patch
diff --git a/srcpkgs/higan/patches/ppc64-no-asm.patch b/srcpkgs/higan/patches/ppc64-no-asm.patch
new file mode 100644
index 00000000000..e2a58d5f3df
--- /dev/null
+++ b/srcpkgs/higan/patches/ppc64-no-asm.patch
@@ -0,0 +1,26 @@
+Higan's ppc code assumes big endian, so fall back to sjlj for that. ELFv2 big
+endian just needs a small patch to function.
+
+--- libco/libco.c
++++ libco/libco.c
+@@ -9,7 +9,7 @@
+ #include "amd64.c"
+ #elif defined(__arm__)
+ #include "arm.c"
+- #elif defined(_ARCH_PPC)
++ #elif defined(_ARCH_PPC) && !defined(__LITTLE_ENDIAN__)
+ #include "ppc.c"
+ #elif defined(_WIN32)
+ #include "fiber.c"
+--- libco/ppc.c
++++ libco/ppc.c
+@@ -36,7 +36,8 @@ static thread_local cothread_t co_active_handle = 0;
+
+ /* whether function calls are indirect through a descriptor, or are directly to function */
+ #ifndef LIBCO_PPCDESC
+- #if !_CALL_SYSV && (_CALL_AIX || _CALL_AIXDESC || LIBCO_PPC64)
++ #if !_CALL_SYSV && (_CALL_AIX || _CALL_AIXDESC || \
++ (LIBCO_PPC64 && (!defined(_CALL_ELF) || _CALL_ELF == 1)))
+ #define LIBCO_PPCDESC 1
+ #endif
+ #endif
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PR PATCH] [Merged]: higan: add a patch to prevent elfv2 ppc64(le) crashes
2019-07-16 18:26 [PR PATCH] higan: add a patch to prevent elfv2 ppc64(le) crashes voidlinux-github
` (3 preceding siblings ...)
2019-07-17 2:31 ` voidlinux-github
@ 2019-07-18 5:38 ` voidlinux-github
4 siblings, 0 replies; 6+ messages in thread
From: voidlinux-github @ 2019-07-18 5:38 UTC (permalink / raw)
To: ml
[-- Attachment #1: Type: text/plain, Size: 248 bytes --]
There's a merged pull request on the void-packages repository
higan: add a patch to prevent elfv2 ppc64(le) crashes
https://github.com/void-linux/void-packages/pull/13158
Description: I was able to load an SNES ROM without segfaulting after this.
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2019-07-18 5:38 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-07-16 18:26 [PR PATCH] higan: add a patch to prevent elfv2 ppc64(le) crashes voidlinux-github
2019-07-16 19:25 ` voidlinux-github
2019-07-16 19:38 ` voidlinux-github
2019-07-17 2:31 ` [PR PATCH] [Updated] " voidlinux-github
2019-07-17 2:31 ` voidlinux-github
2019-07-18 5:38 ` [PR PATCH] [Merged]: " voidlinux-github
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).