aboutsummaryrefslogtreecommitdiff
path: root/gdb/config/tm-magic.h
diff options
context:
space:
mode:
authorStu Grossman <grossman@cygnus>1995-11-04 19:02:42 +0000
committerStu Grossman <grossman@cygnus>1995-11-04 19:02:42 +0000
commit188c635fbb8b6b15ffd3a12f2665dc17d09ff947 (patch)
treea81b260374c0fd4b5cf393f33d1bf7f2abaa1361 /gdb/config/tm-magic.h
parent536a7a161837680bf28ad1c8278ee1db9b3ac8a7 (diff)
downloadgdb-188c635fbb8b6b15ffd3a12f2665dc17d09ff947.zip
gdb-188c635fbb8b6b15ffd3a12f2665dc17d09ff947.tar.gz
gdb-188c635fbb8b6b15ffd3a12f2665dc17d09ff947.tar.bz2
* Makefile.in (INTERNAL_CFLAGS): Add ENABLE_CFLAGS.
* fork-child.c (fork_inferior): Add call to TARGET_CREATE_INFERIOR_HOOK to allow target specific code to get control just before the new process executes it's first instruction. * remote-mips.c (mips_initialize): Cleanup a bit. Don't try to receive a packet at first. This speeds up initialization a lot. Use TARGET_MONITOR_PROMPT instead of "<IDT>". (common_breakpoint): Use rresponse instead of rerrflg to inspect error code. * symfile.c (syms_from_objfile reread_symbols): Call TARGET_SYMFILE_POSTREAD to allow target specific code to get control after reading new symbols. * target.h: New macros TARGET_SYMFILE_POSTREAD, and TARGET_CREATE_INFERIOR_HOOK. See above for descriptions. * config/mips/{irix5.mh nm-irix5.h}: Delete nm-irix5.h. Make NAT_FILE point directly at ../nm-sysv4.h. * config/mips/{mipsm3.mh nm-m3.h}: Delete nm-m3.h. Make NAT_FILE point directly at ../nm-m3.h. * config/mips/{mipsv4.mh nm-sysv4.h}: Delete nm-sysv4.h. Make NAT_FILE point directly at ../nm-sysv4.h. * config/mips/nm-mips.h: Improve comment at top of file. * config/mips/tm-mips.h (TARGET_MONITOR_PROMPT): Change definition into a proper string. start-sanitize-gm * configure configure.in: Add support for --enable-gm. (mips*-*-magic*): Change target from magic to idt. * eval.c expprint.c expression.h parse.c remote-mips.c utils.c: Change GENERAL_MAGIC_HACKS to GENERAL_MAGIC. * magic.c magic.h: Update files from GM. * config/mips/magic.mt: Delete. No longer necessary now that we use --enable mechanism. * config/mips/tm-idt.h: Add GM stuff needed for remote GM box. * config/mips/tm-irix5.h: Add GM stuff needed for native Irix box. * config/mips/tm-magic.h: Move up to config/tm-magic.h. Move all platform specific stuff into tm-irix.h and tm-idt.h. Add defs for TARGET_SYMFILE_POSTREAD and TARGET_CREATE_INFERIOR_HOOK. end-sanitize-gm
Diffstat (limited to 'gdb/config/tm-magic.h')
-rw-r--r--gdb/config/tm-magic.h40
1 files changed, 40 insertions, 0 deletions
diff --git a/gdb/config/tm-magic.h b/gdb/config/tm-magic.h
new file mode 100644
index 0000000..0436036
--- /dev/null
+++ b/gdb/config/tm-magic.h
@@ -0,0 +1,40 @@
+/* Definitions for General Magic target.
+ Copyright (C) 1995 Free Software Foundation, Inc.
+
+This file is part of GDB.
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#include "magic.h"
+
+#define TARGET_SYMFILE_POSTREAD(OBJFILE) init_magic ()
+
+#define TARGET_CREATE_INFERIOR_HOOK(PID) magic_create_inferior_hook ()
+
+/* Magic Cap method stepping support.
+ We use the shared library trampoline support to implement stepping over
+ the method dispatcher. We consider the entire dispatcher to be one big
+ trampoline, and use SKIP_TRAMPOLINE_CODE() to skip from a dispatcher
+ entry point to the dispatcher exit site, or from the exit site to the
+ first instruction of the dispatched-to method. */
+
+#define SKIP_TRAMPOLINE_CODE(pc) \
+ magic_skip_dispatcher(pc)
+
+#define IN_SOLIB_CALL_TRAMPOLINE(pc, name) \
+ magic_in_dispatcher(pc, name)
+
+#define IN_SOLIB_RETURN_TRAMPOLINE(pc, name) \
+ magic_in_dispatcher(pc, name)