Commit a895e6d7 by Jan Hubicka Committed by Jan Hubicka

hsa-brig.c: Include alloc-pool.h


	* hsa-brig.c: Include alloc-pool.h
	* hsa-dump.c: Likewise.
	* hsa-gen.c: Likewise.
	* hse-regalloc.c: Likewise.
	* ipa-hsa.c: Likewise.
	* ipa-predicate.c: Likewise.
	* ipa-reference.c: Likewise.
	* ipa-sra.c: Likewise.
	* omp-expand.c: Likewise.
	* omp-general.c: Likewise.
	* omp-low.c: Likewise.
	* sumbol-summary.h (function_summary_base): Add allocator.
	(function_summary<T *>::function_summary): Update construction.
	(fast_function_summary<T *, V>::fast_function_summary): Likewise.
	(call_summary_base): Add allcator.
	(call_summary<T *>::call_summary): Update construction.
	(fast_call_summary<T *, V>::fast_call_summary): Likewise.

From-SVN: r277821
parent f05b3724
2019-11-05 Jan Hubicka <jh@suse.cz>
* hsa-brig.c: Include alloc-pool.h
* hsa-dump.c: Likewise.
* hsa-gen.c: Likewise.
* hse-regalloc.c: Likewise.
* ipa-hsa.c: Likewise.
* ipa-predicate.c: Likewise.
* ipa-reference.c: Likewise.
* ipa-sra.c: Likewise.
* omp-expand.c: Likewise.
* omp-general.c: Likewise.
* omp-low.c: Likewise.
* sumbol-summary.h (function_summary_base): Add allocator.
(function_summary<T *>::function_summary): Update construction.
(fast_function_summary<T *, V>::fast_function_summary): Likewise.
(call_summary_base): Add allcator.
(call_summary<T *>::call_summary): Update construction.
(fast_call_summary<T *, V>::fast_call_summary): Likewise.
2019-11-05 Jakub Jelinek <jakub@redhat.com> 2019-11-05 Jakub Jelinek <jakub@redhat.com>
PR tree-optimization/91945 PR tree-optimization/91945
...@@ -44,6 +44,7 @@ along with GCC; see the file COPYING3. If not see ...@@ -44,6 +44,7 @@ along with GCC; see the file COPYING3. If not see
#include "cgraph.h" #include "cgraph.h"
#include "dumpfile.h" #include "dumpfile.h"
#include "print-tree.h" #include "print-tree.h"
#include "alloc-pool.h"
#include "symbol-summary.h" #include "symbol-summary.h"
#include "hsa-common.h" #include "hsa-common.h"
#include "gomp-constants.h" #include "gomp-constants.h"
......
...@@ -33,6 +33,7 @@ along with GCC; see the file COPYING3. If not see ...@@ -33,6 +33,7 @@ along with GCC; see the file COPYING3. If not see
#include "gimple-pretty-print.h" #include "gimple-pretty-print.h"
#include "cgraph.h" #include "cgraph.h"
#include "print-tree.h" #include "print-tree.h"
#include "alloc-pool.h"
#include "symbol-summary.h" #include "symbol-summary.h"
#include "hsa-common.h" #include "hsa-common.h"
......
...@@ -48,6 +48,7 @@ along with GCC; see the file COPYING3. If not see ...@@ -48,6 +48,7 @@ along with GCC; see the file COPYING3. If not see
#include "ssa-iterators.h" #include "ssa-iterators.h"
#include "cgraph.h" #include "cgraph.h"
#include "print-tree.h" #include "print-tree.h"
#include "alloc-pool.h"
#include "symbol-summary.h" #include "symbol-summary.h"
#include "hsa-common.h" #include "hsa-common.h"
#include "cfghooks.h" #include "cfghooks.h"
......
...@@ -35,6 +35,7 @@ along with GCC; see the file COPYING3. If not see ...@@ -35,6 +35,7 @@ along with GCC; see the file COPYING3. If not see
#include "cgraph.h" #include "cgraph.h"
#include "print-tree.h" #include "print-tree.h"
#include "cfghooks.h" #include "cfghooks.h"
#include "alloc-pool.h"
#include "symbol-summary.h" #include "symbol-summary.h"
#include "hsa-common.h" #include "hsa-common.h"
......
...@@ -40,6 +40,7 @@ along with GCC; see the file COPYING3. If not see ...@@ -40,6 +40,7 @@ along with GCC; see the file COPYING3. If not see
#include "stringpool.h" #include "stringpool.h"
#include "cgraph.h" #include "cgraph.h"
#include "print-tree.h" #include "print-tree.h"
#include "alloc-pool.h"
#include "symbol-summary.h" #include "symbol-summary.h"
#include "hsa-common.h" #include "hsa-common.h"
......
...@@ -25,8 +25,8 @@ along with GCC; see the file COPYING3. If not see ...@@ -25,8 +25,8 @@ along with GCC; see the file COPYING3. If not see
#include "tree.h" #include "tree.h"
#include "cgraph.h" #include "cgraph.h"
#include "tree-vrp.h" #include "tree-vrp.h"
#include "symbol-summary.h"
#include "alloc-pool.h" #include "alloc-pool.h"
#include "symbol-summary.h"
#include "ipa-prop.h" #include "ipa-prop.h"
#include "ipa-fnsummary.h" #include "ipa-fnsummary.h"
#include "real.h" #include "real.h"
......
...@@ -48,6 +48,7 @@ along with GCC; see the file COPYING3. If not see ...@@ -48,6 +48,7 @@ along with GCC; see the file COPYING3. If not see
#include "calls.h" #include "calls.h"
#include "ipa-utils.h" #include "ipa-utils.h"
#include "ipa-reference.h" #include "ipa-reference.h"
#include "alloc-pool.h"
#include "symbol-summary.h" #include "symbol-summary.h"
/* The static variables defined within the compilation unit that are /* The static variables defined within the compilation unit that are
......
...@@ -75,6 +75,7 @@ along with GCC; see the file COPYING3. If not see ...@@ -75,6 +75,7 @@ along with GCC; see the file COPYING3. If not see
#include "gimple-walk.h" #include "gimple-walk.h"
#include "tree-dfa.h" #include "tree-dfa.h"
#include "tree-sra.h" #include "tree-sra.h"
#include "alloc-pool.h"
#include "symbol-summary.h" #include "symbol-summary.h"
#include "params.h" #include "params.h"
#include "dbgcnt.h" #include "dbgcnt.h"
......
...@@ -52,6 +52,7 @@ along with GCC; see the file COPYING3. If not see ...@@ -52,6 +52,7 @@ along with GCC; see the file COPYING3. If not see
#include "omp-general.h" #include "omp-general.h"
#include "omp-offload.h" #include "omp-offload.h"
#include "tree-cfgcleanup.h" #include "tree-cfgcleanup.h"
#include "alloc-pool.h"
#include "symbol-summary.h" #include "symbol-summary.h"
#include "gomp-constants.h" #include "gomp-constants.h"
#include "gimple-pretty-print.h" #include "gimple-pretty-print.h"
......
...@@ -37,6 +37,7 @@ along with GCC; see the file COPYING3. If not see ...@@ -37,6 +37,7 @@ along with GCC; see the file COPYING3. If not see
#include "attribs.h" #include "attribs.h"
#include "gimplify.h" #include "gimplify.h"
#include "cgraph.h" #include "cgraph.h"
#include "alloc-pool.h"
#include "symbol-summary.h" #include "symbol-summary.h"
#include "hsa-common.h" #include "hsa-common.h"
#include "tree-pass.h" #include "tree-pass.h"
......
...@@ -52,6 +52,7 @@ along with GCC; see the file COPYING3. If not see ...@@ -52,6 +52,7 @@ along with GCC; see the file COPYING3. If not see
#include "omp-low.h" #include "omp-low.h"
#include "omp-grid.h" #include "omp-grid.h"
#include "gimple-low.h" #include "gimple-low.h"
#include "alloc-pool.h"
#include "symbol-summary.h" #include "symbol-summary.h"
#include "tree-nested.h" #include "tree-nested.h"
#include "context.h" #include "context.h"
......
...@@ -28,8 +28,10 @@ class function_summary_base ...@@ -28,8 +28,10 @@ class function_summary_base
{ {
public: public:
/* Default construction takes SYMTAB as an argument. */ /* Default construction takes SYMTAB as an argument. */
function_summary_base (symbol_table *symtab): m_symtab (symtab), function_summary_base (symbol_table *symtab CXX_MEM_STAT_INFO):
m_insertion_enabled (true) m_symtab (symtab),
m_insertion_enabled (true),
allocator ("function summary" PASS_MEM_STAT)
{} {}
/* Basic implementation of insert operation. */ /* Basic implementation of insert operation. */
...@@ -59,7 +61,8 @@ protected: ...@@ -59,7 +61,8 @@ protected:
{ {
/* Call gcc_internal_because we do not want to call finalizer for /* Call gcc_internal_because we do not want to call finalizer for
a type T. We call dtor explicitly. */ a type T. We call dtor explicitly. */
return is_ggc () ? new (ggc_internal_alloc (sizeof (T))) T () : new T () ; return is_ggc () ? new (ggc_internal_alloc (sizeof (T))) T ()
: allocator.allocate () ;
} }
/* Release an item that is stored within map. */ /* Release an item that is stored within map. */
...@@ -71,7 +74,7 @@ protected: ...@@ -71,7 +74,7 @@ protected:
ggc_free (item); ggc_free (item);
} }
else else
delete item; allocator.remove (item);
} }
/* Unregister all call-graph hooks. */ /* Unregister all call-graph hooks. */
...@@ -92,6 +95,7 @@ protected: ...@@ -92,6 +95,7 @@ protected:
private: private:
/* Return true when the summary uses GGC memory for allocation. */ /* Return true when the summary uses GGC memory for allocation. */
virtual bool is_ggc () = 0; virtual bool is_ggc () = 0;
object_allocator<T> allocator;
}; };
template <typename T> template <typename T>
...@@ -215,9 +219,8 @@ private: ...@@ -215,9 +219,8 @@ private:
template <typename T> template <typename T>
function_summary<T *>::function_summary (symbol_table *symtab, bool ggc function_summary<T *>::function_summary (symbol_table *symtab, bool ggc
MEM_STAT_DECL): MEM_STAT_DECL):
function_summary_base<T> (symtab), m_ggc (ggc), m_map (13, ggc, true, function_summary_base<T> (symtab PASS_MEM_STAT), m_ggc (ggc),
GATHER_STATISTICS m_map (13, ggc, true, GATHER_STATISTICS PASS_MEM_STAT)
PASS_MEM_STAT)
{ {
this->m_symtab_insertion_hook this->m_symtab_insertion_hook
= this->m_symtab->add_cgraph_insertion_hook (function_summary::symtab_insertion, = this->m_symtab->add_cgraph_insertion_hook (function_summary::symtab_insertion,
...@@ -411,7 +414,7 @@ private: ...@@ -411,7 +414,7 @@ private:
template <typename T, typename V> template <typename T, typename V>
fast_function_summary<T *, V>::fast_function_summary (symbol_table *symtab MEM_STAT_DECL): fast_function_summary<T *, V>::fast_function_summary (symbol_table *symtab MEM_STAT_DECL):
function_summary_base<T> (symtab), m_vector (NULL) function_summary_base<T> (symtab PASS_MEM_STAT), m_vector (NULL)
{ {
vec_alloc (m_vector, 13 PASS_MEM_STAT); vec_alloc (m_vector, 13 PASS_MEM_STAT);
this->m_symtab_insertion_hook this->m_symtab_insertion_hook
...@@ -531,8 +534,10 @@ class call_summary_base ...@@ -531,8 +534,10 @@ class call_summary_base
{ {
public: public:
/* Default construction takes SYMTAB as an argument. */ /* Default construction takes SYMTAB as an argument. */
call_summary_base (symbol_table *symtab): m_symtab (symtab), call_summary_base (symbol_table *symtab CXX_MEM_STAT_INFO):
m_initialize_when_cloning (false) m_symtab (symtab),
m_initialize_when_cloning (false),
allocator ("call summary" PASS_MEM_STAT)
{} {}
/* Basic implementation of removal operation. */ /* Basic implementation of removal operation. */
...@@ -547,7 +552,8 @@ protected: ...@@ -547,7 +552,8 @@ protected:
{ {
/* Call gcc_internal_because we do not want to call finalizer for /* Call gcc_internal_because we do not want to call finalizer for
a type T. We call dtor explicitly. */ a type T. We call dtor explicitly. */
return is_ggc () ? new (ggc_internal_alloc (sizeof (T))) T () : new T () ; return is_ggc () ? new (ggc_internal_alloc (sizeof (T))) T ()
: allocator.allocate ();
} }
/* Release an item that is stored within map. */ /* Release an item that is stored within map. */
...@@ -559,7 +565,7 @@ protected: ...@@ -559,7 +565,7 @@ protected:
ggc_free (item); ggc_free (item);
} }
else else
delete item; allocator.remove (item);
} }
/* Unregister all call-graph hooks. */ /* Unregister all call-graph hooks. */
...@@ -578,6 +584,7 @@ protected: ...@@ -578,6 +584,7 @@ protected:
private: private:
/* Return true when the summary uses GGC memory for allocation. */ /* Return true when the summary uses GGC memory for allocation. */
virtual bool is_ggc () = 0; virtual bool is_ggc () = 0;
object_allocator<T> allocator;
}; };
template <typename T> template <typename T>
...@@ -607,9 +614,8 @@ public: ...@@ -607,9 +614,8 @@ public:
/* Default construction takes SYMTAB as an argument. */ /* Default construction takes SYMTAB as an argument. */
call_summary (symbol_table *symtab, bool ggc = false call_summary (symbol_table *symtab, bool ggc = false
CXX_MEM_STAT_INFO) CXX_MEM_STAT_INFO)
: call_summary_base<T> (symtab), m_ggc (ggc), m_map (13, ggc, true, : call_summary_base<T> (symtab PASS_MEM_STAT), m_ggc (ggc),
GATHER_STATISTICS m_map (13, ggc, true, GATHER_STATISTICS PASS_MEM_STAT)
PASS_MEM_STAT)
{ {
this->m_symtab_removal_hook this->m_symtab_removal_hook
= this->m_symtab->add_edge_removal_hook (call_summary::symtab_removal, = this->m_symtab->add_edge_removal_hook (call_summary::symtab_removal,
...@@ -775,7 +781,7 @@ class GTY((user)) fast_call_summary <T *, V>: public call_summary_base<T> ...@@ -775,7 +781,7 @@ class GTY((user)) fast_call_summary <T *, V>: public call_summary_base<T>
public: public:
/* Default construction takes SYMTAB as an argument. */ /* Default construction takes SYMTAB as an argument. */
fast_call_summary (symbol_table *symtab CXX_MEM_STAT_INFO) fast_call_summary (symbol_table *symtab CXX_MEM_STAT_INFO)
: call_summary_base<T> (symtab), m_vector (NULL) : call_summary_base<T> (symtab PASS_MEM_STAT), m_vector (NULL)
{ {
vec_alloc (m_vector, 13 PASS_MEM_STAT); vec_alloc (m_vector, 13 PASS_MEM_STAT);
this->m_symtab_removal_hook this->m_symtab_removal_hook
......
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