ctfc: Free CTF container elements in ctfc_delete_container ()

Free up the memory held by hash tables containing CTF types and CTF variables
at the earliest.  This can be done in ctfc_delete_container () as CTF debug
informtion has already been emitted.

gcc/ChangeLog:

	* ctfc.c (ctfc_delete_container): Free hash table contents.
This commit is contained in:
Indu Bhagat 2021-10-07 12:24:33 -07:00
parent ae2df1a347
commit 1848fbf054
1 changed files with 6 additions and 3 deletions

View File

@ -944,11 +944,14 @@ ctfc_delete_strtab (ctf_strtable_t * strtab)
void
ctfc_delete_container (ctf_container_ref ctfc)
{
/* FIXME - CTF container can be cleaned up now.
Will the ggc machinery take care of cleaning up the container structure
including the hash_map members etc. ? */
if (ctfc)
{
ctfc->ctfc_types->empty ();
ctfc->ctfc_types = NULL;
ctfc->ctfc_vars->empty ();
ctfc->ctfc_types = NULL;
ctfc_delete_strtab (&ctfc->ctfc_strtable);
ctfc_delete_strtab (&ctfc->ctfc_aux_strtable);
if (ctfc->ctfc_vars_list)