diff options
author | Peter Schauer <Peter.Schauer@mytum.de> | 2000-11-09 09:49:00 +0000 |
---|---|---|
committer | Peter Schauer <Peter.Schauer@mytum.de> | 2000-11-09 09:49:00 +0000 |
commit | 63f58cc52974c191fe73f2e32ca1178b1b9f31ed (patch) | |
tree | 614ec4679cbab879f60f5050803913c9b4dd0868 /gdb/config | |
parent | c11c3a98c0b59a9b883970b0b7b658fdfdc06050 (diff) | |
download | gdb-63f58cc52974c191fe73f2e32ca1178b1b9f31ed.zip gdb-63f58cc52974c191fe73f2e32ca1178b1b9f31ed.tar.gz gdb-63f58cc52974c191fe73f2e32ca1178b1b9f31ed.tar.bz2 |
Add auto-solib-add support for AIX, remove obsolete and unused
SOLIB_SYMBOLS_MANUAL code, cleanup of AIX shared library handling code.
* rs6000-nat.c (vmap_symtab): Do not try to modify offsets
if symbols are not yet loaded.
(vmap_add_symbols): New function to add symbols for a vmap entry.
(add_vmap): Turn errors into warnings, return NULL vmap upon
failure. Add symbols via vmap_add_symbols only if requested.
(xcoff_relocate_core): Allow debugging of core files without an
executable file. Handle NULL returns from add_vmap gracefully.
* xcoffsolib.c (solib_add): Remove, no longer needed.
(solib_info): Do not check for new shared libraries if there is no
inferior process.
(sharedlibrary_command): Made static.
Do not check for new shared libraries if there is no inferior process.
Add symbols for requested shared libraries via vmap_add_symbols.
(_initialize_solib): Add `set auto-solib-add' command.
* xcoffsolib.h (vmap_add_symbols): Add prototype declaration.
* config/rs6000/tm-rs6000.h (PC_LOAD_SEGMENT): Move from here ...
* config/rs6000/nm-rs6000.h: ... to here, this is an AIX native
feature.
* config/powerpc/tm-macos.h, config/powerpc/tm-ppc-eabi.h,
config/powerpc/tm-ppc-nw.h, config/rs6000/tm-rs6000ly.h:
Remove #undef PC_LOAD_SEGMENT.
* config/powerpc/aix.mt, config/rs6000/aix4.mt, config/rs6000/rs6000.mt
(TDEPFILES): Move xcoffsolib.o from here ...
* config/powerpc/aix.mh, config/rs6000/aix4.mh, config/rs6000/rs6000.mh
(NATDEPFILES): ... to here, xcoffsolib.o contains AIX native code
only.
* rs6000-tdep.c: Remove #include xcoffsolib.h, no longer needed.
* xcoffsolib.h (xcoff_relocate_symtab_hook): Remove declaration.
* rs6000-nat.c (_initialize_core_rs6000): Remove setting of
xcoff_relocate_symtab_hook, no longer needed.
* xcoffsolib.c (solib_info, sharedlibrary_command): Remove
xcoff_relocate_symtab_hook indirection, call xcoff_relocate_symtab
directly, as xcoffsolib.c is now compiled in native AIX configurations
only.
* Makefile.in: Update dependencies for rs6000-tdep.o, rs6000-nat.o
and xcoffsolib.o.
Diffstat (limited to 'gdb/config')
-rw-r--r-- | gdb/config/powerpc/aix.mh | 3 | ||||
-rw-r--r-- | gdb/config/powerpc/aix.mt | 2 | ||||
-rw-r--r-- | gdb/config/powerpc/tm-macos.h | 3 | ||||
-rw-r--r-- | gdb/config/powerpc/tm-ppc-eabi.h | 1 | ||||
-rw-r--r-- | gdb/config/powerpc/tm-ppc-nw.h | 1 | ||||
-rw-r--r-- | gdb/config/rs6000/aix4.mh | 3 | ||||
-rw-r--r-- | gdb/config/rs6000/aix4.mt | 2 | ||||
-rw-r--r-- | gdb/config/rs6000/nm-rs6000.h | 5 | ||||
-rw-r--r-- | gdb/config/rs6000/rs6000.mh | 3 | ||||
-rw-r--r-- | gdb/config/rs6000/rs6000.mt | 2 | ||||
-rw-r--r-- | gdb/config/rs6000/tm-rs6000.h | 5 | ||||
-rw-r--r-- | gdb/config/rs6000/tm-rs6000ly.h | 2 |
12 files changed, 14 insertions, 18 deletions
diff --git a/gdb/config/powerpc/aix.mh b/gdb/config/powerpc/aix.mh index ba3e0c2..30e4080 100644 --- a/gdb/config/powerpc/aix.mh +++ b/gdb/config/powerpc/aix.mh @@ -4,7 +4,8 @@ XM_FILE= xm-aix.h XDEPFILES= NAT_FILE= nm-aix.h -NATDEPFILES= fork-child.o infptrace.o inftarg.o corelow.o rs6000-nat.o xcoffread.o +NATDEPFILES= fork-child.o infptrace.o inftarg.o corelow.o rs6000-nat.o \ + xcoffread.o xcoffsolib.o # When compiled with cc, for debugging, this argument should be passed. # We have no idea who our current compiler is though, so we skip it. diff --git a/gdb/config/powerpc/aix.mt b/gdb/config/powerpc/aix.mt index 38436ee..985f71b 100644 --- a/gdb/config/powerpc/aix.mt +++ b/gdb/config/powerpc/aix.mt @@ -1,3 +1,3 @@ # Target: PowerPC running AIX -TDEPFILES= rs6000-tdep.o xcoffsolib.o ppc-linux-tdep.o +TDEPFILES= rs6000-tdep.o ppc-linux-tdep.o TM_FILE= tm-ppc-aix.h diff --git a/gdb/config/powerpc/tm-macos.h b/gdb/config/powerpc/tm-macos.h index bfd7a73..1cb5050 100644 --- a/gdb/config/powerpc/tm-macos.h +++ b/gdb/config/powerpc/tm-macos.h @@ -22,6 +22,3 @@ #include "rs6000/tm-rs6000.h" #define GDB_TARGET_POWERPC - -/* This is no use to us. */ -#undef PC_LOAD_SEGMENT diff --git a/gdb/config/powerpc/tm-ppc-eabi.h b/gdb/config/powerpc/tm-ppc-eabi.h index 57e056b..aef54dc 100644 --- a/gdb/config/powerpc/tm-ppc-eabi.h +++ b/gdb/config/powerpc/tm-ppc-eabi.h @@ -30,7 +30,6 @@ #undef DEFAULT_LR_SAVE #define DEFAULT_LR_SAVE 4 /* eabi saves LR at 4 off of SP */ -#undef PC_LOAD_SEGMENT #undef PROCESS_LINENUMBER_HOOK #undef TEXT_SEGMENT_BASE diff --git a/gdb/config/powerpc/tm-ppc-nw.h b/gdb/config/powerpc/tm-ppc-nw.h index 7306ea0..32a58f4 100644 --- a/gdb/config/powerpc/tm-ppc-nw.h +++ b/gdb/config/powerpc/tm-ppc-nw.h @@ -26,7 +26,6 @@ #define GDB_TARGET_POWERPC -#undef PC_LOAD_SEGMENT #undef PROCESS_LINENUMBER_HOOK #endif /* TM_PPC_NW_H */ diff --git a/gdb/config/rs6000/aix4.mh b/gdb/config/rs6000/aix4.mh index c5bc2da..8d105d9 100644 --- a/gdb/config/rs6000/aix4.mh +++ b/gdb/config/rs6000/aix4.mh @@ -4,7 +4,8 @@ XM_FILE= xm-aix4.h XDEPFILES= NAT_FILE= nm-rs6000.h -NATDEPFILES= fork-child.o infptrace.o inftarg.o corelow.o rs6000-nat.o +NATDEPFILES= fork-child.o infptrace.o inftarg.o corelow.o rs6000-nat.o \ + xcoffsolib.o # When compiled with cc, for debugging, this argument should be passed. # We have no idea who our current compiler is though, so we skip it. diff --git a/gdb/config/rs6000/aix4.mt b/gdb/config/rs6000/aix4.mt index d602415..f1082b3 100644 --- a/gdb/config/rs6000/aix4.mt +++ b/gdb/config/rs6000/aix4.mt @@ -1,3 +1,3 @@ # Target: IBM RS/6000 running AIX4 -TDEPFILES= rs6000-tdep.o xcoffsolib.o xcoffread.o ppc-linux-tdep.o +TDEPFILES= rs6000-tdep.o xcoffread.o ppc-linux-tdep.o TM_FILE= tm-rs6000-aix4.h diff --git a/gdb/config/rs6000/nm-rs6000.h b/gdb/config/rs6000/nm-rs6000.h index 66a8652..d405aec 100644 --- a/gdb/config/rs6000/nm-rs6000.h +++ b/gdb/config/rs6000/nm-rs6000.h @@ -57,6 +57,11 @@ extern void xcoff_relocate_symtab (unsigned int); struct target_ops; extern void xcoff_relocate_core (struct target_ops *); +/* Load segment of a given pc value. */ + +#define PC_LOAD_SEGMENT(PC) pc_load_segment_name(PC) +extern char *pc_load_segment_name (CORE_ADDR); + /* Return sizeof user struct to callers in less machine dependent routines */ #define KERNEL_U_SIZE kernel_u_size() diff --git a/gdb/config/rs6000/rs6000.mh b/gdb/config/rs6000/rs6000.mh index 600d616..ec877e7 100644 --- a/gdb/config/rs6000/rs6000.mh +++ b/gdb/config/rs6000/rs6000.mh @@ -4,7 +4,8 @@ XM_FILE= xm-rs6000.h XDEPFILES= NAT_FILE= nm-rs6000.h -NATDEPFILES= fork-child.o infptrace.o inftarg.o corelow.o rs6000-nat.o +NATDEPFILES= fork-child.o infptrace.o inftarg.o corelow.o rs6000-nat.o \ + xcoffsolib.o # When compiled with cc, for debugging, this argument should be passed. # We have no idea who our current compiler is though, so we skip it. diff --git a/gdb/config/rs6000/rs6000.mt b/gdb/config/rs6000/rs6000.mt index 941ad32..a9afe89 100644 --- a/gdb/config/rs6000/rs6000.mt +++ b/gdb/config/rs6000/rs6000.mt @@ -1,3 +1,3 @@ # Target: IBM RS/6000 running AIX -TDEPFILES= rs6000-tdep.o xcoffsolib.o xcoffread.o ppc-linux-tdep.o +TDEPFILES= rs6000-tdep.o xcoffread.o ppc-linux-tdep.o TM_FILE= tm-rs6000.h diff --git a/gdb/config/rs6000/tm-rs6000.h b/gdb/config/rs6000/tm-rs6000.h index beb445d..6ed2955 100644 --- a/gdb/config/rs6000/tm-rs6000.h +++ b/gdb/config/rs6000/tm-rs6000.h @@ -26,11 +26,6 @@ #define TEXT_SEGMENT_BASE 0x10000000 -/* Load segment of a given pc value. */ - -#define PC_LOAD_SEGMENT(PC) pc_load_segment_name(PC) -extern char *pc_load_segment_name (CORE_ADDR); - /* AIX's assembler doesn't grok dollar signs in identifiers. So we use dots instead. This item must be coordinated with G++. */ #undef CPLUS_MARKER diff --git a/gdb/config/rs6000/tm-rs6000ly.h b/gdb/config/rs6000/tm-rs6000ly.h index ce55513..7dd57a4 100644 --- a/gdb/config/rs6000/tm-rs6000ly.h +++ b/gdb/config/rs6000/tm-rs6000ly.h @@ -26,8 +26,6 @@ /* Use generic RS6000 definitions. */ #include "rs6000/tm-rs6000.h" -#undef PC_LOAD_SEGMENT - #define CANNOT_STORE_REGISTER(regno) (regno == PS_REGNUM) #endif /* TM_RS6000LYNX_H */ |