diff options
author | Nathan Sidwell <nathan@acm.org> | 2017-05-10 12:16:25 +0000 |
---|---|---|
committer | Nathan Sidwell <nathan@gcc.gnu.org> | 2017-05-10 12:16:25 +0000 |
commit | a529e0a697f7cbc16f4d8ea9c2dad9b4b761d96c (patch) | |
tree | 6a7df3a589d21a6ba6474b3900a973ce1d7f31db /gcc/dumpfile.c | |
parent | 0e0a19c5dfa42b6b5fae4b60842e3f903d8e9bed (diff) | |
download | gcc-a529e0a697f7cbc16f4d8ea9c2dad9b4b761d96c.zip gcc-a529e0a697f7cbc16f4d8ea9c2dad9b4b761d96c.tar.gz gcc-a529e0a697f7cbc16f4d8ea9c2dad9b4b761d96c.tar.bz2 |
dumpfile.h (TDI_lang_all): New.
* dumpfile.h (TDI_lang_all): New.
(TDF_KIND): New. Renumber others
(TDF_LANG, TDF_TREE, TDF_RTL, TDF_IPA): Enumerate value, rather
than bits.
* dumpfile.c (dump_files): Mark language dumps as TDF_LANG. add
lang-all.
(get_dump_file_name): Adjust suffix generation.
(dump_enable_all): Use TDF_KIND.
* doc/invoke.texi (-fdump-lang-all): Document.
From-SVN: r247833
Diffstat (limited to 'gcc/dumpfile.c')
-rw-r--r-- | gcc/dumpfile.c | 28 |
1 files changed, 13 insertions, 15 deletions
diff --git a/gcc/dumpfile.c b/gcc/dumpfile.c index 6b9a47c..66b81a8 100644 --- a/gcc/dumpfile.c +++ b/gcc/dumpfile.c @@ -57,9 +57,9 @@ static struct dump_file_info dump_files[TDI_end] = 0, 0, 0, 0, 0, false, false}, {".ipa-clones", "ipa-clones", NULL, NULL, NULL, NULL, NULL, TDF_IPA, 0, 0, 0, 0, 0, false, false}, - {".tu", "translation-unit", NULL, NULL, NULL, NULL, NULL, TDF_TREE, + {".tu", "translation-unit", NULL, NULL, NULL, NULL, NULL, TDF_LANG, 0, 0, 0, 0, 1, false, false}, - {".class", "class-hierarchy", NULL, NULL, NULL, NULL, NULL, TDF_TREE, + {".class", "class-hierarchy", NULL, NULL, NULL, NULL, NULL, TDF_LANG, 0, 0, 0, 0, 2, false, false}, {".original", "tree-original", NULL, NULL, NULL, NULL, NULL, TDF_TREE, 0, 0, 0, 0, 3, false, false}, @@ -69,6 +69,8 @@ static struct dump_file_info dump_files[TDI_end] = 0, 0, 0, 0, 5, false, false}, #define FIRST_AUTO_NUMBERED_DUMP 6 + {NULL, "lang-all", NULL, NULL, NULL, NULL, NULL, TDF_LANG, + 0, 0, 0, 0, 0, false, false}, {NULL, "tree-all", NULL, NULL, NULL, NULL, NULL, TDF_TREE, 0, 0, 0, 0, 0, false, false}, {NULL, "rtl-all", NULL, NULL, NULL, NULL, NULL, TDF_RTL, @@ -115,7 +117,7 @@ static const struct dump_option_value_info dump_options[] = {"missed", MSG_MISSED_OPTIMIZATION}, {"note", MSG_NOTE}, {"optall", MSG_ALL}, - {"all", ~(TDF_RAW | TDF_SLIM | TDF_LINENO | TDF_TREE | TDF_RTL | TDF_IPA + {"all", ~(TDF_KIND_MASK | TDF_RAW | TDF_SLIM | TDF_LINENO | TDF_STMTADDR | TDF_GRAPH | TDF_DIAGNOSTIC | TDF_VERBOSE | TDF_RHS_ONLY | TDF_NOUID | TDF_ENUMERATE_LOCALS | TDF_SCEV | TDF_GIMPLE)}, @@ -282,15 +284,11 @@ get_dump_file_name (struct dump_file_info *dfi) const dump_id[0] = '\0'; else { - char suffix; - if (dfi->pflags & TDF_TREE) - suffix = 't'; - else if (dfi->pflags & TDF_IPA) - suffix = 'i'; - else - suffix = 'r'; - - if (snprintf (dump_id, sizeof (dump_id), ".%03d%c", dfi->num, suffix) < 0) + /* LANG, TREE, RTL, IPA. */ + char suffix = "ltri"[TDF_KIND (dfi->pflags)]; + + if (snprintf (dump_id, sizeof (dump_id), ".%03d%c", dfi->num, suffix) + < 0) dump_id[0] = '\0'; } @@ -657,13 +655,13 @@ int gcc::dump_manager:: dump_enable_all (int flags, const char *filename) { - int ir_dump_type = (flags & (TDF_TREE | TDF_RTL | TDF_IPA)); + int ir_dump_type = TDF_KIND (flags); int n = 0; size_t i; for (i = TDI_none + 1; i < (size_t) TDI_end; i++) { - if ((dump_files[i].pflags & ir_dump_type)) + if (TDF_KIND (dump_files[i].pflags) == ir_dump_type) { const char *old_filename = dump_files[i].pfilename; dump_files[i].pstate = -1; @@ -684,7 +682,7 @@ dump_enable_all (int flags, const char *filename) for (i = 0; i < m_extra_dump_files_in_use; i++) { - if ((m_extra_dump_files[i].pflags & ir_dump_type)) + if (TDF_KIND (m_extra_dump_files[i].pflags) & ir_dump_type) { const char *old_filename = m_extra_dump_files[i].pfilename; m_extra_dump_files[i].pstate = -1; |