* objfiles.h (ALL_OBJFILE_PRIMARY_SYMTABS): New macro.

(ALL_PRIMARY_SYMTABS): Use it.
	(ALL_PSPACE_PRIMARY_SYMTABS): Ditto.
	* dwarf2read.c (dw2_find_symbol_file): Ditto.
	* linespec.c (iterate_over_all_matching_symtabs): Ditto.
	* symtab.c (lookup_symbol_aux_objfile): Ditto.
	(basic_lookup_transparent_type): Ditto.
This commit is contained in:
Doug Evans 2012-06-04 02:57:28 +00:00
parent bb3a4c1019
commit d790cf0a9c
5 changed files with 61 additions and 53 deletions

View File

@ -1,3 +1,13 @@
2012-06-03 Doug Evans <dje@google.com>
* objfiles.h (ALL_OBJFILE_PRIMARY_SYMTABS): New macro.
(ALL_PRIMARY_SYMTABS): Use it.
(ALL_PSPACE_PRIMARY_SYMTABS): Ditto.
* dwarf2read.c (dw2_find_symbol_file): Ditto.
* linespec.c (iterate_over_all_matching_symtabs): Ditto.
* symtab.c (lookup_symbol_aux_objfile): Ditto.
(basic_lookup_transparent_type): Ditto.
2012-06-02 Sergio Durigan Junior <sergiodj@redhat.com>
* symtab.c (symbol_demangled_name): New variable `dem_name'. Use

View File

@ -2842,8 +2842,7 @@ dw2_find_symbol_file (struct objfile *objfile, const char *name)
{
struct symtab *s;
ALL_OBJFILE_SYMTABS (objfile, s)
if (s->primary)
ALL_OBJFILE_PRIMARY_SYMTABS (objfile, s)
{
struct blockvector *bv = BLOCKVECTOR (s);
const struct block *block = BLOCKVECTOR_BLOCK (bv, GLOBAL_BLOCK);

View File

@ -987,9 +987,7 @@ iterate_over_all_matching_symtabs (struct linespec_state *state,
ALL_DOMAIN,
&matcher_data);
ALL_OBJFILE_SYMTABS (objfile, symtab)
{
if (symtab->primary)
ALL_OBJFILE_PRIMARY_SYMTABS (objfile, symtab)
{
struct block *block;
@ -1012,7 +1010,6 @@ iterate_over_all_matching_symtabs (struct linespec_state *state,
}
}
}
}
}
/* Returns the block to be used for symbol searches for the given SYMTAB,

View File

@ -556,6 +556,12 @@ extern int gdb_bfd_close_or_warn (struct bfd *abfd);
#define ALL_OBJFILE_SYMTABS(objfile, s) \
for ((s) = (objfile) -> symtabs; (s) != NULL; (s) = (s) -> next)
/* Traverse all primary symtabs in one objfile. */
#define ALL_OBJFILE_PRIMARY_SYMTABS(objfile, s) \
ALL_OBJFILE_SYMTABS ((objfile), (s)) \
if ((s)->primary)
/* Traverse all minimal symbols in one objfile. */
#define ALL_OBJFILE_MSYMBOLS(objfile, m) \
@ -578,13 +584,11 @@ extern int gdb_bfd_close_or_warn (struct bfd *abfd);
#define ALL_PRIMARY_SYMTABS(objfile, s) \
ALL_OBJFILES (objfile) \
ALL_OBJFILE_SYMTABS (objfile, s) \
if ((s)->primary)
ALL_OBJFILE_PRIMARY_SYMTABS (objfile, s)
#define ALL_PSPACE_PRIMARY_SYMTABS(pspace, objfile, s) \
ALL_PSPACE_OBJFILES (ss, objfile) \
ALL_OBJFILE_SYMTABS (objfile, s) \
if ((s)->primary)
ALL_OBJFILE_PRIMARY_SYMTABS (objfile, s)
/* Traverse all minimal symbols in all objfiles in the current symbol
space. */

View File

@ -1517,8 +1517,7 @@ lookup_symbol_aux_objfile (struct objfile *objfile, int block_index,
objfile->sf->qf->pre_expand_symtabs_matching (objfile, block_index,
name, domain);
ALL_OBJFILE_SYMTABS (objfile, s)
if (s->primary)
ALL_OBJFILE_PRIMARY_SYMTABS (objfile, s)
{
bv = BLOCKVECTOR (s);
block = BLOCKVECTOR_BLOCK (bv, block_index);
@ -1829,8 +1828,7 @@ basic_lookup_transparent_type (const char *name)
GLOBAL_BLOCK,
name, STRUCT_DOMAIN);
ALL_OBJFILE_SYMTABS (objfile, s)
if (s->primary)
ALL_OBJFILE_PRIMARY_SYMTABS (objfile, s)
{
bv = BLOCKVECTOR (s);
block = BLOCKVECTOR_BLOCK (bv, GLOBAL_BLOCK);