diff options
author | Ulrich Drepper <drepper@redhat.com> | 1999-08-02 20:04:56 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 1999-08-02 20:04:56 +0000 |
commit | 7b19af689144b165a6c9ddc8445e2762c979c04b (patch) | |
tree | 98b052fbb76d367d23270527536e769ae7ff43de /sysdeps/unix/sysv/linux/sparc/sparc64/sigcontextinfo.h | |
parent | 249fd241a225b3b3723e55f7051ed4c7bf726e78 (diff) | |
download | glibc-7b19af689144b165a6c9ddc8445e2762c979c04b.tar glibc-7b19af689144b165a6c9ddc8445e2762c979c04b.tar.gz glibc-7b19af689144b165a6c9ddc8445e2762c979c04b.tar.bz2 glibc-7b19af689144b165a6c9ddc8445e2762c979c04b.zip |
Update.
1999-08-02 Jakub Jelinek <jj@ultra.linux.cz>
* sysdeps/unix/sysv/linux/sparc/sparc64/sigaction.c (__sigaction):
Only allow rt signal frames. No SA_SIGINFO signals will have the
siginfo_t just not filled out with SI_NOINFO code.
* sysdeps/unix/sysv/linux/sparc/sparc64/register-dump.h
(register_dump): Take the above change into account.
* sysdeps/unix/sysv/linux/sparc/sparc64/sigcontextinfo.h
(rt_signal_frame): Likewise.
* sysdeps/unix/sysv/linux/sparc/getsysstats.c: New file.
Diffstat (limited to 'sysdeps/unix/sysv/linux/sparc/sparc64/sigcontextinfo.h')
-rw-r--r-- | sysdeps/unix/sysv/linux/sparc/sparc64/sigcontextinfo.h | 18 |
1 files changed, 15 insertions, 3 deletions
diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/sigcontextinfo.h b/sysdeps/unix/sysv/linux/sparc/sparc64/sigcontextinfo.h index d174c9e779..8430dbcbe1 100644 --- a/sysdeps/unix/sysv/linux/sparc/sparc64/sigcontextinfo.h +++ b/sysdeps/unix/sysv/linux/sparc/sparc64/sigcontextinfo.h @@ -17,13 +17,25 @@ write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ +struct __rt_signal_frame { + siginfo_t sf_info; + struct pt_regs sf_regs; + __siginfo_fpu_t *fpu_save; + struct { + void *ss_sp; + int ss_flags; + size_t ss_size; + } sf_stack; + unsigned long sf_mask; +}; + #ifndef STACK_BIAS #define STACK_BIAS 2047 #endif -#define SIGCONTEXT __siginfo_t * -#define GET_PC(__ctx) ((void *) ((__ctx)->si_regs.tpc)) +#define SIGCONTEXT struct __rt_signal_frame * +#define GET_PC(__ctx) ((void *) ((__ctx)->sf_regs.tpc)) #define ADVANCE_STACK_FRAME(__next) \ ((void *) &((struct reg_window *) (((unsigned long int) (__next)) \ + STACK_BIAS))->ins[6]) -#define GET_STACK(__ctx) ((void *) ((__ctx)->si_regs.u_regs[14])) +#define GET_STACK(__ctx) ((void *) ((__ctx)->sf_regs.u_regs[14])) #define GET_FRAME(__ctx) ADVANCE_STACK_FRAME (GET_STACK (__ctx)) |