diff options
author | Jeff Law <law@redhat.com> | 1996-03-14 17:32:12 +0000 |
---|---|---|
committer | Jeff Law <law@redhat.com> | 1996-03-14 17:32:12 +0000 |
commit | a404ea25962d03df5e02adcb339201fbc276a1c6 (patch) | |
tree | 606c6bb4321974c7507288ed76f0fbe6843f8ff3 | |
parent | deddae66811d6251e8de65270f6194f8473649c2 (diff) | |
download | gdb-a404ea25962d03df5e02adcb339201fbc276a1c6.zip gdb-a404ea25962d03df5e02adcb339201fbc276a1c6.tar.gz gdb-a404ea25962d03df5e02adcb339201fbc276a1c6.tar.bz2 |
* solib.c (solib_break_names): Add _r_debug_state for
vanilla SVR4 implementations. From Peter Schauer.
-rw-r--r-- | gdb/ChangeLog | 23 | ||||
-rw-r--r-- | gdb/solib.c | 57 |
2 files changed, 52 insertions, 28 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 575247b..be1556d 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,26 @@ +Thu Mar 14 10:31:18 1996 Jeffrey A Law (law@cygnus.com) + + * solib.c (solib_break_names): Add _r_debug_state for + vanilla SVR4 implementations. From Peter Schauer. + +Mon Mar 11 14:24:57 1996 Dawn Perchik <dawn@critters.cygnus.com> + + * mon960-rom.c: New file; support mon960 rom monitor on i960. + * monitor.c (monitor_debug): Change remotedebug to buffer strings. + * monitor.c (monitor_open): Add test for flag MO_NO_ECHO_ON_OPEN before + epecting prompt and echo during open. + * monitor.c (monitor_stop): Add test for flag MO_SEND_BREAK_ON_OPEN to + determine if break should be sent as stop command. + * monitor.h: Add flags MO_NO_ECHO_ON_OPEN and MO_SEND_BREAK_ON_OPEN. + * i960-tdep.c (mon960_frame_chain_valid): New function for getting + stack frame on mon960. + * Makefile.in: Add mon960 files. + * configure.in: Changed i960-*-coff* and i960-*-elf* to target mon960; + added i960-nindy-coff* and i960-nindy-elf* for target nindy. + * configure: Regenerated. + * config/i960/mon960.mt, config/i960/tm-mon960.h: New files; + support mon960 rom monitor on i960. + Mon Mar 11 11:02:47 1996 Steve Chamberlain <sac@slash.cygnus.com> With Michael Snyder: diff --git a/gdb/solib.c b/gdb/solib.c index d0319bf..6f8c376 100644 --- a/gdb/solib.c +++ b/gdb/solib.c @@ -64,6 +64,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #ifdef SVR4_SHARED_LIBS static char *solib_break_names[] = { "r_debug_state", + "_r_debug_state", "_dl_debug_state", NULL }; @@ -403,34 +404,6 @@ solib_add_common_symbols (rtc_symp) #ifdef SVR4_SHARED_LIBS -#ifdef HANDLE_SVR4_EXEC_EMULATORS - -/* - Solaris BCP (the part of Solaris which allows it to run SunOS4 - a.out files) throws in another wrinkle. Solaris does not fill - in the usual a.out link map structures when running BCP programs, - the only way to get at them is via groping around in the dynamic - linker. - The dynamic linker and it's structures are located in the shared - C library, which gets run as the executable's "interpreter" by - the kernel. - - Note that we can assume nothing about the process state at the time - we need to find these structures. We may be stopped on the first - instruction of the interpreter (C shared library), the first - instruction of the executable itself, or somewhere else entirely - (if we attached to the process for example). -*/ - -static char *debug_base_symbols[] = { - "r_debug", /* Solaris 2.3 */ - "_r_debug", /* Solaris 2.1, 2.2 */ - NULL -}; - -static int -look_for_base PARAMS ((int, CORE_ADDR)); - static CORE_ADDR bfd_lookup_symbol PARAMS ((bfd *, char *)); @@ -491,6 +464,34 @@ bfd_lookup_symbol (abfd, symname) return (symaddr); } +#ifdef HANDLE_SVR4_EXEC_EMULATORS + +/* + Solaris BCP (the part of Solaris which allows it to run SunOS4 + a.out files) throws in another wrinkle. Solaris does not fill + in the usual a.out link map structures when running BCP programs, + the only way to get at them is via groping around in the dynamic + linker. + The dynamic linker and it's structures are located in the shared + C library, which gets run as the executable's "interpreter" by + the kernel. + + Note that we can assume nothing about the process state at the time + we need to find these structures. We may be stopped on the first + instruction of the interpreter (C shared library), the first + instruction of the executable itself, or somewhere else entirely + (if we attached to the process for example). +*/ + +static char *debug_base_symbols[] = { + "r_debug", /* Solaris 2.3 */ + "_r_debug", /* Solaris 2.1, 2.2 */ + NULL +}; + +static int +look_for_base PARAMS ((int, CORE_ADDR)); + /* LOCAL FUNCTION |