aboutsummaryrefslogtreecommitdiff
path: root/gdb/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/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/magic.h')
-rw-r--r--gdb/magic.h34
1 files changed, 30 insertions, 4 deletions
diff --git a/gdb/magic.h b/gdb/magic.h
index 7ff366c..ef8cf2e 100644
--- a/gdb/magic.h
+++ b/gdb/magic.h
@@ -1,6 +1,32 @@
/* magic.h - Interface to the General Magic debugger extras */
-extern void init_magic();
-extern CORE_ADDR deal_with_dispatch(CORE_ADDR pc);
-extern struct type *type_of_object(CORE_ADDR object);
-extern CORE_ADDR baseptr_of_object(CORE_ADDR object);
+/* object framework definitions, from FrameworkDefines.asm.h and Generic.h */
+
+#define kIDBitObject 31 /* set for valid object IDs */
+#define kIDBitUsable 26 /* set if objectID is usable */
+
+/* Return nonzero if <object> is a valid ObjectID */
+
+#define IsObjectID(object) (((unsigned long)(object) & 0x80000000) != 0)
+
+#define kSizeOfObjectHeader 12 /* size of object header in bytes */
+
+/* public interfaces */
+
+extern void
+init_magic PARAMS ((void));
+
+extern void
+magic_create_inferior_hook PARAMS ((void));
+
+extern struct type *
+type_of_object PARAMS ((CORE_ADDR object));
+
+extern CORE_ADDR
+baseptr_of_object PARAMS ((CORE_ADDR object));
+
+extern int
+magic_in_dispatcher PARAMS ((CORE_ADDR stop_pc, char *name));
+
+extern CORE_ADDR
+magic_skip_dispatcher PARAMS ((CORE_ADDR stop_pc));