Remove reset_symtab_globals

This patch arranges for the remaining buildsym global --
buildsym_compunit -- to only be cleared by the wrapper functions, not
by methods on struct buildsym_compunit.  In the process,
reset_symtab_globals is removed.

gdb/ChangeLog
2018-07-20  Tom Tromey  <tom@tromey.com>

	* buildsym.c (reset_symtab_globals): Remove.
	(buildsym_compunit::end_symtab_from_static_block): Update.
	(buildsym_compunit::augment_type_symtab): Update.
	(end_symtab_from_static_block): Call free_buildsym_compunit.
	(augment_type_symtab, end_symtab, end_expandable_symtab):
	Likewise.
This commit is contained in:
Tom Tromey 2018-05-22 14:23:32 -06:00
parent da6580e59c
commit 74c72eac23
2 changed files with 13 additions and 16 deletions

View File

@ -1,3 +1,12 @@
2018-07-20 Tom Tromey <tom@tromey.com>
* buildsym.c (reset_symtab_globals): Remove.
(buildsym_compunit::end_symtab_from_static_block): Update.
(buildsym_compunit::augment_type_symtab): Update.
(end_symtab_from_static_block): Call free_buildsym_compunit.
(augment_type_symtab, end_symtab, end_expandable_symtab):
Likewise.
2018-07-20 Tom Tromey <tom@tromey.com>
* arch-utils.c: Do not include buildsym.h.

View File

@ -1240,14 +1240,6 @@ buildsym_compunit::watch_main_source_file_lossage ()
}
}
/* Reset state after a successful building of a symtab. */
static void
reset_symtab_globals (void)
{
free_buildsym_compunit ();
}
/* Implementation of the first part of end_symtab. It allows modifying
STATIC_BLOCK before it gets finalized by end_symtab_from_static_block.
If the returned value is NULL there is no blockvector created for
@ -1550,8 +1542,6 @@ buildsym_compunit::end_symtab_from_static_block (struct block *static_block,
else
cu = end_symtab_with_blockvector (static_block, section, expandable);
reset_symtab_globals ();
return cu;
}
@ -1658,8 +1648,6 @@ buildsym_compunit::augment_type_symtab ()
dict_add_pending (BLOCK_DICT (block),
m_global_symbols);
}
reset_symtab_globals ();
}
/* Push a context block. Args are an identifying nesting level
@ -1885,7 +1873,7 @@ end_symtab_from_static_block (struct block *static_block,
struct compunit_symtab *result
= buildsym_compunit->end_symtab_from_static_block (static_block,
section, expandable);
reset_symtab_globals ();
free_buildsym_compunit ();
return result;
}
@ -1895,7 +1883,7 @@ end_symtab (CORE_ADDR end_addr, int section)
gdb_assert (buildsym_compunit != nullptr);
struct compunit_symtab *result
= buildsym_compunit->end_symtab (end_addr, section);
reset_symtab_globals ();
free_buildsym_compunit ();
return result;
}
@ -1905,7 +1893,7 @@ end_expandable_symtab (CORE_ADDR end_addr, int section)
gdb_assert (buildsym_compunit != nullptr);
struct compunit_symtab *result
= buildsym_compunit->end_expandable_symtab (end_addr, section);
reset_symtab_globals ();
free_buildsym_compunit ();
return result;
}
@ -1914,7 +1902,7 @@ augment_type_symtab ()
{
gdb_assert (buildsym_compunit != nullptr);
buildsym_compunit->augment_type_symtab ();
reset_symtab_globals ();
free_buildsym_compunit ();
}
struct context_stack *