aboutsummaryrefslogtreecommitdiff
path: root/gdb/nm-irix3.h
diff options
context:
space:
mode:
authorJohn Gilmore <gnu@cygnus>1992-10-16 10:47:34 +0000
committerJohn Gilmore <gnu@cygnus>1992-10-16 10:47:34 +0000
commit2268d619462dfcaf7055aede6cde6f7015be29ba (patch)
treece9959452b2add6e01740f5860fcc2f73f97cabe /gdb/nm-irix3.h
parentc3bbca3aad11d35978fbd96c6672eb4cbe6960f3 (diff)
downloadgdb-2268d619462dfcaf7055aede6cde6f7015be29ba.zip
gdb-2268d619462dfcaf7055aede6cde6f7015be29ba.tar.gz
gdb-2268d619462dfcaf7055aede6cde6f7015be29ba.tar.bz2
Avoid longjmp()-catching compilation errors in cross-ports.
* doc/gdbint.texinfo: Update GET_LONGJMP_TARGET, L_SET doc. * irix4-nat.c, mips-nat.c (JB_ELEMENT_SIZE, get_longjmp_target): Move from mips-tdep.c and tm-{irix3,mips}.h. * mips-nat.c: Remove a bunch of code that was ifdef'd out of native MIPS ports. * nm-irix3.h, nm-mips.h (GET_LONGJMP_TARGET): Move from tm-irix3.h and tm-mips.h. * ultra3-nat.c (register_addr): Move from ultra3-xdep.c. (fetch_core_registers): Fix bfd_seek arguments.
Diffstat (limited to 'gdb/nm-irix3.h')
-rw-r--r--gdb/nm-irix3.h15
1 files changed, 11 insertions, 4 deletions
diff --git a/gdb/nm-irix3.h b/gdb/nm-irix3.h
index fcf98a2..0b77e5f 100644
--- a/gdb/nm-irix3.h
+++ b/gdb/nm-irix3.h
@@ -1,6 +1,5 @@
-/* Definitions for irix3 native support.
-
-Copyright (C) 1991, 1992 Free Software Foundation, Inc.
+/* Definitions for SGI irix3 native support.
+ Copyright 1991, 1992 Free Software Foundation, Inc.
This file is part of GDB.
@@ -18,7 +17,15 @@ You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
-/* Don't need special routines for the SGI -- we can use infptrace.c */
+/* Don't need special routines for Irix v3 -- we can use infptrace.c */
#undef FETCH_INFERIOR_REGISTERS
#define U_REGS_OFFSET 0
+
+/* Figure out where the longjmp will land. We expect that we have just entered
+ longjmp and haven't yet setup the stack frame, so the args are still in the
+ argument regs. a0 (CALL_ARG0) points at the jmp_buf structure from which we
+ extract the pc (JB_PC) that we will land at. The pc is copied into ADDR.
+ This routine returns true on success */
+
+#define GET_LONGJMP_TARGET(ADDR) get_longjmp_target(ADDR)