summaryrefslogtreecommitdiff
path: root/gcc/context.h
diff options
context:
space:
mode:
authordmalcolm <dmalcolm@138bc75d-0d04-0410-961f-82ee72b054a4>2013-10-14 16:15:38 +0000
committerdmalcolm <dmalcolm@138bc75d-0d04-0410-961f-82ee72b054a4>2013-10-14 16:15:38 +0000
commit41142c530ac47f7302bf8b0f2a4e69726d71a079 (patch)
treea2a58a4c89a20875a0fa23706d4171d2fe967ef5 /gcc/context.h
parent696fd0a123af4d2c19d19e197d0458c8065c5c9d (diff)
downloadgcc-41142c530ac47f7302bf8b0f2a4e69726d71a079.tar.gz
Introduce gcc::dump_manager class
gcc/ * dumpfile.h (gcc::dump_manager): New class, to hold state relating to dumpfile management. (get_dump_file_name): Remove in favor of method of dump_manager. (dump_initialized_p): Likewise. (dump_start): Likewise. (dump_finish): Likewise. (dump_switch_p): Likewise. (dump_register): Likewise. (get_dump_file_info): Likewise. * context.c (gcc::context::context): Construct the dump_manager instance. * context.h (gcc::context::get_dumps): New. (gcc::context::m_dumps): New. * coverage.c (coverage_init): Port to dump_manager API. * dumpfile.c (extra_dump_files): Convert to field of gcc::dump_manager. (extra_dump_files_in_use): Likewise. (extra_dump_files_alloced): Likewise. (gcc::dump_manager::dump_manager): New. (dump_register): Convert to... (gcc::dump_manager::dump_register): ...method, replacing function-static next_dump with m_next_dump field. (get_dump_file_info): Convert to... (gcc::dump_manager::get_dump_file_info): ...method. (get_dump_file_name): Convert to... (gcc::dump_manager::get_dump_file_name): ...method. (dump_start): Convert to... (gcc::dump_manager::dump_start): ...method. (dump_finish): Convert to... (gcc::dump_manager::dump_finish): ...method. (dump_begin): Replace body with... (gcc::dump_manager::dump_begin): ...new method. (dump_phase_enabled_p): Convert to... (gcc::dump_manager::dump_phase_enabled_p): ...method. (dump_phase_enabled_p): Convert to... (gcc::dump_manager::dump_phase_enabled_p): ...method. (dump_initialized_p): Convert to... (gcc::dump_manager::dump_initialized_p): ...method. (dump_flag_name): Replace body with... (gcc::dump_manager::dump_flag_name): ...new method. (dump_enable_all): Convert to... (gcc::dump_manager::dump_enable_all): ...new method. (opt_info_enable_passes): Convert to... (gcc::dump_manager::opt_info_enable_passes): ...new method. (dump_switch_p_1): Convert to... (gcc::dump_manager::dump_switch_p_1): ...new method. (dump_switch_p): Convert to... (gcc::dump_manager::dump_switch_p): ...new method. (opt_info_switch_p): Port to dump_manager API. (enable_rtl_dump_file): Likewise. * opts-global.c (handle_common_deferred_options): Port to new dump_manager API. * passes.c (pass_manager::finish_optimization_passes): Likewise. (pass_manager::register_one_dump_file): Likewise. (pass_manager::register_pass): Likewise. (pass_init_dump_file): Likewise. (pass_fini_dump_file): Likewise. * statistics.c (statistics_early_init): Likewise. gcc/java/ * lang.c (java_handle_option): Update for introduction of gcc::dump_manager. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@203569 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/context.h')
-rw-r--r--gcc/context.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/gcc/context.h b/gcc/context.h
index 4aab6de9a9a..d6555ccbd16 100644
--- a/gcc/context.h
+++ b/gcc/context.h
@@ -23,6 +23,7 @@ along with GCC; see the file COPYING3. If not see
namespace gcc {
class pass_manager;
+class dump_manager;
/* GCC's internal state can be divided into zero or more
"parallel universe" of state; an instance of this class is one such
@@ -36,10 +37,17 @@ public:
pass_manager *get_passes () { gcc_assert (m_passes); return m_passes; }
+ /* Handling dump files. */
+
+ dump_manager *get_dumps () {gcc_assert (m_dumps); return m_dumps; }
+
private:
/* Pass-management. */
pass_manager *m_passes;
+ /* Dump files. */
+ dump_manager *m_dumps;
+
}; // class context
} // namespace gcc