aboutsummaryrefslogtreecommitdiff
path: root/gdb/solib.c
diff options
context:
space:
mode:
authorJeff Law <law@redhat.com>1996-03-14 17:32:12 +0000
committerJeff Law <law@redhat.com>1996-03-14 17:32:12 +0000
commita404ea25962d03df5e02adcb339201fbc276a1c6 (patch)
tree606c6bb4321974c7507288ed76f0fbe6843f8ff3 /gdb/solib.c
parentdeddae66811d6251e8de65270f6194f8473649c2 (diff)
downloadgdb-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.
Diffstat (limited to 'gdb/solib.c')
-rw-r--r--gdb/solib.c57
1 files changed, 29 insertions, 28 deletions
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