aboutsummaryrefslogtreecommitdiff
path: root/gcc/context.h
diff options
context:
space:
mode:
authorDavid Malcolm <dmalcolm@redhat.com>2013-10-14 16:15:38 +0000
committerDavid Malcolm <dmalcolm@gcc.gnu.org>2013-10-14 16:15:38 +0000
commit47e0da377eb7021c043244cd4ff99669eb1a370c (patch)
treea2a58a4c89a20875a0fa23706d4171d2fe967ef5 /gcc/context.h
parent811189d91a29fbced411a62f9fcea66e2b7882cb (diff)
downloadgcc-47e0da377eb7021c043244cd4ff99669eb1a370c.zip
gcc-47e0da377eb7021c043244cd4ff99669eb1a370c.tar.gz
gcc-47e0da377eb7021c043244cd4ff99669eb1a370c.tar.bz2
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. From-SVN: r203569
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 4aab6de..d6555cc 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