Commit f5c08287 by Michael Matz Committed by Michael Matz

hash-map.h (hash_map::hash_map): Gather statistics only when GATHER_STATISTICS is true.

	* hash-map.h (hash_map::hash_map): Gather statistics only
	when GATHER_STATISTICS is true.
	* hash-set.h (hash_set::hash_set): Ditto.
	* hash-table.h (hash_table::hash_table): Ditto.
	(hash_table::create_ggc): Ditto.

From-SVN: r231560
parent 9e64af18
2015-12-11 Michael Matz <matz@suse.de>
* hash-map.h (hash_map::hash_map): Gather statistics only
when GATHER_STATISTICS is true.
* hash-set.h (hash_set::hash_set): Ditto.
* hash-table.h (hash_table::hash_table): Ditto.
(hash_table::create_ggc): Ditto.
2015-12-11 Martin Jambor <mjambor@suse.cz> 2015-12-11 Martin Jambor <mjambor@suse.cz>
PR ipa/68064 PR ipa/68064
...@@ -3242,6 +3250,7 @@ ...@@ -3242,6 +3250,7 @@
2015-11-19 Michael Matz <matz@suse.de> 2015-11-19 Michael Matz <matz@suse.de>
PR rtl-optimization/68392
* fwprop.c (update_uses): Use flag_checking instead of * fwprop.c (update_uses): Use flag_checking instead of
gcc_checking_assert. gcc_checking_assert.
...@@ -107,11 +107,13 @@ class GTY((user)) hash_map ...@@ -107,11 +107,13 @@ class GTY((user)) hash_map
public: public:
explicit hash_map (size_t n = 13, bool ggc = false, explicit hash_map (size_t n = 13, bool ggc = false,
bool gather_mem_stats = true CXX_MEM_STAT_INFO) bool gather_mem_stats = GATHER_STATISTICS
CXX_MEM_STAT_INFO)
: m_table (n, ggc, gather_mem_stats, HASH_MAP_ORIGIN PASS_MEM_STAT) {} : m_table (n, ggc, gather_mem_stats, HASH_MAP_ORIGIN PASS_MEM_STAT) {}
/* Create a hash_map in ggc memory. */ /* Create a hash_map in ggc memory. */
static hash_map *create_ggc (size_t size, bool gather_mem_stats = true static hash_map *create_ggc (size_t size,
bool gather_mem_stats = GATHER_STATISTICS
CXX_MEM_STAT_INFO) CXX_MEM_STAT_INFO)
{ {
hash_map *map = ggc_alloc<hash_map> (); hash_map *map = ggc_alloc<hash_map> ();
......
...@@ -27,7 +27,7 @@ class hash_set ...@@ -27,7 +27,7 @@ class hash_set
public: public:
typedef typename Traits::value_type Key; typedef typename Traits::value_type Key;
explicit hash_set (size_t n = 13, bool ggc = false CXX_MEM_STAT_INFO) explicit hash_set (size_t n = 13, bool ggc = false CXX_MEM_STAT_INFO)
: m_table (n, ggc, true, HASH_SET_ORIGIN PASS_MEM_STAT) {} : m_table (n, ggc, GATHER_STATISTICS, HASH_SET_ORIGIN PASS_MEM_STAT) {}
/* Create a hash_set in gc memory with space for at least n elements. */ /* Create a hash_set in gc memory with space for at least n elements. */
......
...@@ -361,7 +361,8 @@ class hash_table ...@@ -361,7 +361,8 @@ class hash_table
typedef typename Descriptor::compare_type compare_type; typedef typename Descriptor::compare_type compare_type;
public: public:
explicit hash_table (size_t, bool ggc = false, bool gather_mem_stats = true, explicit hash_table (size_t, bool ggc = false,
bool gather_mem_stats = GATHER_STATISTICS,
mem_alloc_origin origin = HASH_TABLE_ORIGIN mem_alloc_origin origin = HASH_TABLE_ORIGIN
CXX_MEM_STAT_INFO); CXX_MEM_STAT_INFO);
~hash_table (); ~hash_table ();
...@@ -371,7 +372,8 @@ public: ...@@ -371,7 +372,8 @@ public:
create_ggc (size_t n CXX_MEM_STAT_INFO) create_ggc (size_t n CXX_MEM_STAT_INFO)
{ {
hash_table *table = ggc_alloc<hash_table> (); hash_table *table = ggc_alloc<hash_table> ();
new (table) hash_table (n, true, true, HASH_TABLE_ORIGIN PASS_MEM_STAT); new (table) hash_table (n, true, GATHER_STATISTICS,
HASH_TABLE_ORIGIN PASS_MEM_STAT);
return table; return table;
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment