aboutsummaryrefslogtreecommitdiff
path: root/gdb
diff options
context:
space:
mode:
authorDaniel Jacobowitz <drow@false.org>2007-12-18 16:02:54 +0000
committerDaniel Jacobowitz <drow@false.org>2007-12-18 16:02:54 +0000
commit56e3f43cb65608a19ca9005d77c96a66e6e4d7cb (patch)
treedf635cc85d9d5a0c193b7b611afe0eac0dceaf1c /gdb
parent8b4ed4273f44bf259e717783004ede8d5bb87210 (diff)
downloadgdb-56e3f43cb65608a19ca9005d77c96a66e6e4d7cb.zip
gdb-56e3f43cb65608a19ca9005d77c96a66e6e4d7cb.tar.gz
gdb-56e3f43cb65608a19ca9005d77c96a66e6e4d7cb.tar.bz2
* minsyms.c (lookup_minimal_symbol): Also check the separate
debug objfile. (lookup_minimal_symbol_text): Likewise. (lookup_minimal_symbol_solib_trampoline): Likewise. * symtab.c (lookup_global_symbol_from_objfile): Likewise.
Diffstat (limited to 'gdb')
-rw-r--r--gdb/ChangeLog8
-rw-r--r--gdb/minsyms.c9
-rw-r--r--gdb/symtab.c5
3 files changed, 19 insertions, 3 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index fd634bc..07ac406 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,11 @@
+2007-12-18 Daniel Jacobowitz <dan@codesourcery.com>
+
+ * minsyms.c (lookup_minimal_symbol): Also check the separate
+ debug objfile.
+ (lookup_minimal_symbol_text): Likewise.
+ (lookup_minimal_symbol_solib_trampoline): Likewise.
+ * symtab.c (lookup_global_symbol_from_objfile): Likewise.
+
2007-12-18 Vladimir Prus <vladimir@codesourcery.com>
* mi/mi-main.c (mi_cmd_list_features): Announce
diff --git a/gdb/minsyms.c b/gdb/minsyms.c
index 4850797..cc1eed6 100644
--- a/gdb/minsyms.c
+++ b/gdb/minsyms.c
@@ -176,7 +176,8 @@ lookup_minimal_symbol (const char *name, const char *sfile,
objfile != NULL && found_symbol == NULL;
objfile = objfile->next)
{
- if (objf == NULL || objf == objfile)
+ if (objf == NULL || objf == objfile
+ || objf->separate_debug_objfile == objfile)
{
/* Do two passes: the first over the ordinary hash table,
and the second over the demangled hash table. */
@@ -274,7 +275,8 @@ lookup_minimal_symbol_text (const char *name, struct objfile *objf)
objfile != NULL && found_symbol == NULL;
objfile = objfile->next)
{
- if (objf == NULL || objf == objfile)
+ if (objf == NULL || objf == objfile
+ || objf->separate_debug_objfile == objfile)
{
for (msymbol = objfile->msymbol_hash[hash];
msymbol != NULL && found_symbol == NULL;
@@ -330,7 +332,8 @@ lookup_minimal_symbol_solib_trampoline (const char *name,
objfile != NULL && found_symbol == NULL;
objfile = objfile->next)
{
- if (objf == NULL || objf == objfile)
+ if (objf == NULL || objf == objfile
+ || objf->separate_debug_objfile == objfile)
{
for (msymbol = objfile->msymbol_hash[hash];
msymbol != NULL && found_symbol == NULL;
diff --git a/gdb/symtab.c b/gdb/symtab.c
index 966bd73..f836878 100644
--- a/gdb/symtab.c
+++ b/gdb/symtab.c
@@ -1363,6 +1363,11 @@ lookup_global_symbol_from_objfile (const struct objfile *objfile,
}
}
+ if (objfile->separate_debug_objfile)
+ return lookup_global_symbol_from_objfile (objfile->separate_debug_objfile,
+ name, linkage_name, domain,
+ symtab);
+
return NULL;
}