destroy values as well as keys when removing them from hash maps
authorTrevor Saunders <tbsaunde+gcc@tbsaunde.org>
Tue, 24 Nov 2015 11:46:10 +0000 (11:46 +0000)
committerTrevor Saunders <tbsaunde@gcc.gnu.org>
Tue, 24 Nov 2015 11:46:10 +0000 (11:46 +0000)
commit76b6ddbfe234ed3d68dfaaadfc85a86119a3d0af
tree58070dd13c6248487e3ae1a088186d0901249d7f
parentcfa55545f9aff809f267babb110b1037e164a1cd
destroy values as well as keys when removing them from hash maps

gcc/ChangeLog:

2015-11-24  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

* hash-map-traits.h (simple_hashmap_traits ::remove): call
destructors on values that are being removed.
* mem-stats.h (hash_map): Pass type of values to
simple_hashmap_traits.
* tree-sra.c (sra_deinitialize): Remove work around for hash
maps not destructing values.
* genmatch.c (sinfo_hashmap_traits): Adjust.
* tree-ssa-uncprop.c (val_ssa_equiv_hash_traits): Likewise.

From-SVN: r230801
gcc/ChangeLog
gcc/genmatch.c
gcc/hash-map-traits.h
gcc/mem-stats.h
gcc/tree-sra.c
gcc/tree-ssa-uncprop.c