mailing list of musl libc
 help / color / mirror / code / Atom feed
* [musl] [PATCH] sh: fix incorrect GNU mcontext_t member definitions
@ 2020-12-11 23:56 Ariadne Conill
  0 siblings, 0 replies; only message in thread
From: Ariadne Conill @ 2020-12-11 23:56 UTC (permalink / raw)
  To: musl; +Cc: Ariadne Conill


When compiling as _GNU_SOURCE, mcontext_t structure mirrors names used
in sigcontext structure, but without the sc_ prefix.  Split out sigcontext
structure and adjust the mcontext_t member names accordingly.

This is necessary to compile libucontext on sh architecture.
---
 arch/sh/bits/signal.h | 13 +++++++++++--
 1 file changed, 11 insertions(+), 2 deletions(-)

diff --git a/arch/sh/bits/signal.h b/arch/sh/bits/signal.h
index 160311fa..82a9cba0 100644
--- a/arch/sh/bits/signal.h
+++ b/arch/sh/bits/signal.h
@@ -9,7 +9,16 @@
 #if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)
 typedef int greg_t, gregset_t[16];
 typedef int freg_t, fpregset_t[16];
-typedef struct sigcontext {
+typedef struct {
+	unsigned long oldmask;
+	unsigned long regs[16];
+	unsigned long pc, pr, sr;
+	unsigned long gbr, mach, macl;
+	unsigned long fpregs[16];
+	unsigned long xfpregs[16];
+	unsigned int fpscr, fpul, ownedfp;
+} mcontext_t;
+struct sigcontext {
 	unsigned long oldmask;
 	unsigned long sc_regs[16];
 	unsigned long sc_pc, sc_pr, sc_sr;
@@ -17,7 +26,7 @@ typedef struct sigcontext {
 	unsigned long sc_fpregs[16];
 	unsigned long sc_xfpregs[16];
 	unsigned int sc_fpscr, sc_fpul, sc_ownedfp;
-} mcontext_t;
+};
 #else
 typedef struct {
 	unsigned long __regs[58];
-- 
2.29.2


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2020-12-11 23:56 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-12-11 23:56 [musl] [PATCH] sh: fix incorrect GNU mcontext_t member definitions Ariadne Conill

Code repositories for project(s) associated with this public inbox

	https://git.vuxu.org/mirror/musl/

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).