aboutsummaryrefslogtreecommitdiff
path: root/gcc/lto/lto-lang.c
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/lto/lto-lang.c')
-rw-r--r--gcc/lto/lto-lang.c22
1 files changed, 22 insertions, 0 deletions
diff --git a/gcc/lto/lto-lang.c b/gcc/lto/lto-lang.c
index 1a70f4f..a1a41bc 100644
--- a/gcc/lto/lto-lang.c
+++ b/gcc/lto/lto-lang.c
@@ -37,6 +37,9 @@ along with GCC; see the file COPYING3. If not see
#include "stringpool.h"
#include "attribs.h"
+/* LTO specific dumps. */
+int lto_link_dump_id, decl_merge_dump_id, partition_dump_id;
+
static tree handle_noreturn_attribute (tree *, tree, tree, int, bool *);
static tree handle_leaf_attribute (tree *, tree, tree, int, bool *);
static tree handle_const_attribute (tree *, tree, tree, int, bool *);
@@ -1375,6 +1378,23 @@ lto_init (void)
return true;
}
+/* Register c++-specific dumps. */
+
+void
+lto_register_dumps (gcc::dump_manager *dumps)
+{
+ lto_link_dump_id = dumps->dump_register
+ (".lto-link", "ipa-lto-link", "ipa-lto-link",
+ DK_ipa, OPTGROUP_NONE, false);
+ decl_merge_dump_id = dumps->dump_register
+ (".lto-decl-merge", "ipa-lto-decl-merge", "ipa-lto-decl-merge",
+ DK_ipa, OPTGROUP_NONE, false);
+ partition_dump_id = dumps->dump_register
+ (".lto-partition", "ipa-lto-partition", "ipa-lto-partition",
+ DK_ipa, OPTGROUP_NONE, false);
+}
+
+
/* Initialize tree structures required by the LTO front end. */
static void lto_init_ts (void)
@@ -1390,6 +1410,8 @@ static void lto_init_ts (void)
#define LANG_HOOKS_COMPLAIN_WRONG_LANG_P lto_complain_wrong_lang_p
#undef LANG_HOOKS_INIT_OPTIONS_STRUCT
#define LANG_HOOKS_INIT_OPTIONS_STRUCT lto_init_options_struct
+#undef LANG_HOOKS_REGISTER_DUMPS
+#define LANG_HOOKS_REGISTER_DUMPS lto_register_dumps
#undef LANG_HOOKS_HANDLE_OPTION
#define LANG_HOOKS_HANDLE_OPTION lto_handle_option
#undef LANG_HOOKS_POST_OPTIONS