188c635fbb
* 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
32 lines
851 B
C
32 lines
851 B
C
/* magic.h - Interface to the General Magic debugger extras */
|
|
|
|
/* 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));
|