reintroduce riscv64 struct sigcontext
commit ab3eb89a8b removed it as part of
correcting the mcontext_t definition, but there is still code using
struct sigcontext and expecting the member names present in it, most
notably libgcc_eh. almost all such usage is incorrect, but bring back
struct sigcontext at least for now so as not to introduce regressions.
This commit is contained in:
@@ -6,12 +6,6 @@
|
||||
# define SIGSTKSZ 8192
|
||||
#endif
|
||||
|
||||
#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)
|
||||
typedef unsigned long greg_t;
|
||||
typedef unsigned long gregset_t[32];
|
||||
typedef union __riscv_mc_fp_state fpregset_t;
|
||||
#endif
|
||||
|
||||
typedef unsigned long __riscv_mc_gp_state[32];
|
||||
|
||||
struct __riscv_mc_f_ext_state {
|
||||
@@ -41,6 +35,16 @@ typedef struct mcontext_t {
|
||||
union __riscv_mc_fp_state __fpregs;
|
||||
} mcontext_t;
|
||||
|
||||
#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)
|
||||
typedef unsigned long greg_t;
|
||||
typedef unsigned long gregset_t[32];
|
||||
typedef union __riscv_mc_fp_state fpregset_t;
|
||||
struct sigcontext {
|
||||
gregset_t gregs;
|
||||
fpregset_t fpregs;
|
||||
};
|
||||
#endif
|
||||
|
||||
struct sigaltstack {
|
||||
void *ss_sp;
|
||||
int ss_flags;
|
||||
|
||||
Reference in New Issue
Block a user