diff options
author | David Malcolm <dmalcolm@redhat.com> | 2016-05-06 15:18:59 +0000 |
---|---|---|
committer | David Malcolm <dmalcolm@gcc.gnu.org> | 2016-05-06 15:18:59 +0000 |
commit | 58d4c8364b5fcfbb21bc1040974fbb0e30700430 (patch) | |
tree | 6555b94afb07ba3011d6b678bf7c938173218880 /gcc/pass_manager.h | |
parent | 66b0fe8f4ef0d0345a66c9783b056e765ea6065b (diff) | |
download | gcc-58d4c8364b5fcfbb21bc1040974fbb0e30700430.zip gcc-58d4c8364b5fcfbb21bc1040974fbb0e30700430.tar.gz gcc-58d4c8364b5fcfbb21bc1040974fbb0e30700430.tar.bz2 |
Move name_to_pass_map into class pass_manager
gcc/ChangeLog:
* pass_manager.h (pass_manager::register_pass_name): New method.
(pass_manager::get_pass_by_name): New method.
(pass_manager::create_pass_tab): New method.
(pass_manager::m_name_to_pass_map): New field.
* passes.c (name_to_pass_map): Delete global in favor of field
"m_name_to_pass_map" of pass_manager.
(register_pass_name): Rename from a function to...
(pass_manager::register_pass_name): ...this method, updating
for renaming of global "name_to_pass_map" to field
"m_name_to_pass_map".
(create_pass_tab): Rename from a function to...
(pass_manager::create_pass_tab): ...this method, updating
for renaming of global "name_to_pass_map" to field.
(get_pass_by_name): Rename from a function to...
(pass_manager::get_pass_by_name): ...this method.
(enable_disable_pass): Convert use of get_pass_by_name to
a method call, locating the pass_manager singleton.
From-SVN: r235977
Diffstat (limited to 'gcc/pass_manager.h')
-rw-r--r-- | gcc/pass_manager.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/gcc/pass_manager.h b/gcc/pass_manager.h index 4f89d31..464e25f 100644 --- a/gcc/pass_manager.h +++ b/gcc/pass_manager.h @@ -78,6 +78,10 @@ public: opt_pass *get_pass_peephole2 () const { return pass_peephole2_1; } opt_pass *get_pass_profile () const { return pass_profile_1; } + void register_pass_name (opt_pass *pass, const char *name); + + opt_pass *get_pass_by_name (const char *name); + public: /* The root of the compilation pass tree, once constructed. */ opt_pass *all_passes; @@ -95,9 +99,11 @@ public: private: void set_pass_for_id (int id, opt_pass *pass); void register_dump_files (opt_pass *pass); + void create_pass_tab () const; private: context *m_ctxt; + hash_map<nofree_string_hash, opt_pass *> *m_name_to_pass_map; /* References to all of the individual passes. These fields are generated via macro expansion. |