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:
parent
da6580e59c
commit
74c72eac23
|
@ -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>
|
2018-07-20 Tom Tromey <tom@tromey.com>
|
||||||
|
|
||||||
* arch-utils.c: Do not include buildsym.h.
|
* arch-utils.c: Do not include buildsym.h.
|
||||||
|
|
|
@ -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
|
/* Implementation of the first part of end_symtab. It allows modifying
|
||||||
STATIC_BLOCK before it gets finalized by end_symtab_from_static_block.
|
STATIC_BLOCK before it gets finalized by end_symtab_from_static_block.
|
||||||
If the returned value is NULL there is no blockvector created for
|
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
|
else
|
||||||
cu = end_symtab_with_blockvector (static_block, section, expandable);
|
cu = end_symtab_with_blockvector (static_block, section, expandable);
|
||||||
|
|
||||||
reset_symtab_globals ();
|
|
||||||
|
|
||||||
return cu;
|
return cu;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1658,8 +1648,6 @@ buildsym_compunit::augment_type_symtab ()
|
||||||
dict_add_pending (BLOCK_DICT (block),
|
dict_add_pending (BLOCK_DICT (block),
|
||||||
m_global_symbols);
|
m_global_symbols);
|
||||||
}
|
}
|
||||||
|
|
||||||
reset_symtab_globals ();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Push a context block. Args are an identifying nesting level
|
/* 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
|
struct compunit_symtab *result
|
||||||
= buildsym_compunit->end_symtab_from_static_block (static_block,
|
= buildsym_compunit->end_symtab_from_static_block (static_block,
|
||||||
section, expandable);
|
section, expandable);
|
||||||
reset_symtab_globals ();
|
free_buildsym_compunit ();
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1895,7 +1883,7 @@ end_symtab (CORE_ADDR end_addr, int section)
|
||||||
gdb_assert (buildsym_compunit != nullptr);
|
gdb_assert (buildsym_compunit != nullptr);
|
||||||
struct compunit_symtab *result
|
struct compunit_symtab *result
|
||||||
= buildsym_compunit->end_symtab (end_addr, section);
|
= buildsym_compunit->end_symtab (end_addr, section);
|
||||||
reset_symtab_globals ();
|
free_buildsym_compunit ();
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1905,7 +1893,7 @@ end_expandable_symtab (CORE_ADDR end_addr, int section)
|
||||||
gdb_assert (buildsym_compunit != nullptr);
|
gdb_assert (buildsym_compunit != nullptr);
|
||||||
struct compunit_symtab *result
|
struct compunit_symtab *result
|
||||||
= buildsym_compunit->end_expandable_symtab (end_addr, section);
|
= buildsym_compunit->end_expandable_symtab (end_addr, section);
|
||||||
reset_symtab_globals ();
|
free_buildsym_compunit ();
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1914,7 +1902,7 @@ augment_type_symtab ()
|
||||||
{
|
{
|
||||||
gdb_assert (buildsym_compunit != nullptr);
|
gdb_assert (buildsym_compunit != nullptr);
|
||||||
buildsym_compunit->augment_type_symtab ();
|
buildsym_compunit->augment_type_symtab ();
|
||||||
reset_symtab_globals ();
|
free_buildsym_compunit ();
|
||||||
}
|
}
|
||||||
|
|
||||||
struct context_stack *
|
struct context_stack *
|
||||||
|
|
Loading…
Reference in New Issue