1 /* Machine-dependent signal context structure for GNU Hurd. HPPA version.
2 Copyright (C) 1995 Free Software Foundation, Inc.
3 This file is part of the GNU C Library.
5 The GNU C Library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Library General Public License as
7 published by the Free Software Foundation; either version 2 of the
8 License, or (at your option) any later version.
10 The GNU C Library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Library General Public License for more details.
15 You should have received a copy of the GNU Library General Public
16 License along with the GNU C Library; see the file COPYING.LIB. If
17 not, write to the Free Software Foundation, Inc., 675 Mass Ave,
18 Cambridge, MA 02139, USA. */
20 /* Signal handlers are actually called:
21 void handler (int sig, int code, struct sigcontext *scp); */
23 /* State of this thread when the signal was taken. */
26 /* These first members are machine-independent. */
28 int sc_onstack
; /* Nonzero if running on sigstack. */
29 __sigset_t sc_mask
; /* Blocked signals to restore. */
31 /* MiG reply port this thread is using. */
32 unsigned int sc_reply_port
;
34 /* Port this thread is doing an interruptible RPC on. */
35 unsigned int sc_intr_port
;
37 /* Error code associated with this signal (interpreted as `error_t'). */
40 /* All following members are machine-dependent. The rest of this
41 structure is written to be laid out identically to a `struct
42 parisc_thread_state'. trampoline.c knows this, so it must be
43 changed if this changes. */
45 #define sc_parisc_thread_state sc_flags /* Beginning of correspondence. */
46 /* "General" registers $1..$31. */
47 unsigned int sc_regs
[31];
49 /* Control registers. */
50 unsigned int sc_cr11
; /* sar */
51 /* These four registers make up the PC. */
52 unsigned int iioq_head
;
53 unsigned int iisq_head
;
54 unsigned int iioq_tail
;
55 unsigned int iisq_tail
;
60 unsigned int sc_cr22
; /* ipsw */
61 unsigned int sc_bsd_goto
; /* unused */
73 unsigned int sc_cr10
; /* unused */
76 unsigned int sc_cr24
; /* unused */
77 unsigned int sc_cr25
; /* unused */
78 unsigned int sc_cr26
; /* unused */
79 unsigned sc_mpsfu_high
; /* unused */
80 unsigned sc_mpsfu_low
; /* unused */
81 unsigned sc_mpsfu_ovflo
; /* unused */
84 /* Floating point registers $f0..$f31. */