Do not gather mem stats in run_exit_handles (PR

PR middle-end/69919
	* alloc-pool.c (after_memory_report): New variable.
	* alloc-pool.h (base_pool_allocator ::release): Do not use
	the infrastructure if after_memory_report.
	* toplev.c (toplev::main): Mark after memory report.

From-SVN: r233722
This commit is contained in:
Martin Liska 2016-02-25 17:57:39 +01:00 committed by Martin Liska
parent bd28a34f33
commit bd545bcf1c
4 changed files with 16 additions and 1 deletions

View File

@ -1,3 +1,11 @@
2016-02-25 Martin Liska <mliska@suse.cz>
PR middle-end/69919
* alloc-pool.c (after_memory_report): New variable.
* alloc-pool.h (base_pool_allocator ::release): Do not use
the infrastructure if after_memory_report.
* toplev.c (toplev::main): Mark after memory report.
2016-02-25 Richard Biener <rguenther@suse.de>
PR tree-optimization/48795

View File

@ -25,6 +25,7 @@ along with GCC; see the file COPYING3. If not see
ALLOC_POOL_ID_TYPE last_id;
mem_alloc_description<pool_usage> pool_allocator_usage;
bool after_memory_report = false;
/* Output per-alloc_pool memory usage statistics. */
void

View File

@ -25,6 +25,9 @@ along with GCC; see the file COPYING3. If not see
extern void dump_alloc_pool_statistics (void);
/* Flag indicates whether memory statistics are gathered any longer. */
extern bool after_memory_report;
typedef unsigned long ALLOC_POOL_ID_TYPE;
/* Last used ID. */
@ -306,7 +309,7 @@ base_pool_allocator <TBlockAllocator>::release ()
TBlockAllocator::release (block);
}
if (GATHER_STATISTICS)
if (GATHER_STATISTICS && !after_memory_report)
{
pool_allocator_usage.release_instance_overhead
(this, (m_elts_allocated - m_elts_free) * m_elt_size);

View File

@ -2107,6 +2107,9 @@ toplev::main (int argc, char **argv)
finalize_plugins ();
location_adhoc_data_fini (line_table);
after_memory_report = true;
if (seen_error () || werrorcount)
return (FATAL_EXIT_CODE);