* [DUMP PATCH]: Move fdump-translation-unit to C++ FE only
@ 2017-05-22 12:57 Nathan Sidwell
0 siblings, 0 replies; only message in thread
From: Nathan Sidwell @ 2017-05-22 12:57 UTC (permalink / raw)
To: GCC Patches; +Cc: =?UTF-8?Q?mliska
[-- Attachment #1: Type: text/plain, Size: 197 bytes --]
This patch moves the -fdump-translation-unit into the new langhook for
registering dumps. On the way the option gets renamed to -fdump-lang-raw.
Committed as obvious.
nathan
--
Nathan Sidwell
[-- Attachment #2: tu.diff --]
[-- Type: text/x-patch, Size: 6218 bytes --]
2017-05-22 Nathan Sidwell <nathan@acm.org>
gcc/
* doc/invoke.texi (fdump-translation-unit): Delete documentation.
(fdump-lang): Document 'raw' option.
* dumpfile.h (TDI_tu): Delete.
* dumpfile.c (dump_files): Remove translation-unit.
(FIRST_AUTO_NUMBERED_DUMP): Decrement.
gcc/cp/
* cp-objcp-common.c (cp_register_dumps): Register raw dumper.
* cp-tree.h (raw_dump_id): Declare.
* decl2.c (raw_dump_id): Define.
(dump_tu): Use raw_dump_id.
gcc/c/
* c-decl.c (c_parse_final_cleanups): Drop TDI_tu handling.
Index: c/c-decl.c
===================================================================
--- c/c-decl.c (revision 248332)
+++ c/c-decl.c (working copy)
@@ -11214,18 +11214,6 @@ c_parse_final_cleanups (void)
dump_ada_specs (collect_all_refs, NULL);
}
- if (ext_block)
- {
- tree tmp = BLOCK_VARS (ext_block);
- dump_flags_t flags;
- FILE * stream = dump_begin (TDI_tu, &flags);
- if (stream && tmp)
- {
- dump_node (tmp, flags & ~TDF_SLIM, stream);
- dump_end (TDI_tu, stream);
- }
- }
-
/* Process all file scopes in this compilation, and the external_scope,
through wrapup_global_declarations. */
FOR_EACH_VEC_ELT (*all_translation_units, i, t)
Index: cp/cp-objcp-common.c
===================================================================
--- cp/cp-objcp-common.c (revision 248332)
+++ cp/cp-objcp-common.c (working copy)
@@ -359,6 +359,9 @@ cp_register_dumps (gcc::dump_manager *du
{
class_dump_id = dumps->dump_register
(".class", "lang-class", "lang-class", DK_lang, OPTGROUP_NONE, false);
+
+ raw_dump_id = dumps->dump_register
+ (".raw", "lang-raw", "lang-raw", DK_lang, OPTGROUP_NONE, false);
}
void
Index: cp/cp-tree.h
===================================================================
--- cp/cp-tree.h (revision 248332)
+++ cp/cp-tree.h (working copy)
@@ -5776,6 +5776,7 @@ extern cp_parameter_declarator *no_param
/* Various dump ids. */
extern int class_dump_id;
+extern int raw_dump_id;
/* in call.c */
extern bool check_dtor_name (tree, tree);
Index: cp/decl2.c
===================================================================
--- cp/decl2.c (revision 248332)
+++ cp/decl2.c (working copy)
@@ -49,6 +49,9 @@ along with GCC; see the file COPYING3.
#include "c-family/c-ada-spec.h"
#include "asan.h"
+/* Id for dumping the raw trees. */
+int raw_dump_id;
+
extern cpp_reader *parse_in;
/* This structure contains information about the initializations
@@ -4362,12 +4365,10 @@ static void
dump_tu (void)
{
dump_flags_t flags;
- FILE *stream = dump_begin (TDI_tu, &flags);
-
- if (stream)
+ if (FILE *stream = dump_begin (raw_dump_id, &flags))
{
dump_node (global_namespace, flags & ~TDF_SLIM, stream);
- dump_end (TDI_tu, stream);
+ dump_end (raw_dump_id, stream);
}
}
Index: doc/invoke.texi
===================================================================
--- doc/invoke.texi (revision 248332)
+++ doc/invoke.texi (working copy)
@@ -550,7 +550,6 @@ Objective-C and Objective-C++ Dialects}.
-fdump-passes @gol
-fdump-rtl-@var{pass} -fdump-rtl-@var{pass}=@var{filename} @gol
-fdump-statistics @gol
--fdump-translation-unit@r{[}-@var{n}@r{]} @gol
-fdump-tree-all @gol
-fdump-tree-@var{switch} @gol
-fdump-tree-@var{switch}-@var{options} @gol
@@ -12972,7 +12971,7 @@ Dump after function inlining.
@opindex fdump-lang
Control the dumping of language-specific information. The @var{options}
and @var{filename} portions behave as described in the
-`@option{-fdump-tree} option. The following @var{switch} values are
+@option{-fdump-tree} option. The following @var{switch} values are
accepted:
@table @samp
@@ -12984,6 +12983,9 @@ Enable all language-specific dumps.
Dump class hierarchy information. Virtual table information is emitted
unless '@option{slim}' is specified. This option is applicable to C++ only.
+@item raw
+Dump the raw internal tree data. This option is applicable to C++ only.
+
@end table
@item -fdump-passes
@@ -13002,16 +13004,6 @@ whole compilation unit while @samp{-deta
the passes generate them. The default with no option is to sum
counters for each function compiled.
-@item -fdump-translation-unit @r{(C++ only)}
-@itemx -fdump-translation-unit-@var{options} @r{(C++ only)}
-@opindex fdump-translation-unit
-Dump a representation of the tree structure for the entire translation
-unit to a file. The file name is made by appending @file{.tu} to the
-source file name, and the file is created in the same directory as the
-output file. If the @samp{-@var{options}} form is used, @var{options}
-controls the details of the dump as described for the
-@option{-fdump-tree} options.
-
@item -fdump-tree-all
@itemx -fdump-tree-@var{switch}
@itemx -fdump-tree-@var{switch}-@var{options}
Index: dumpfile.c
===================================================================
--- dumpfile.c (revision 248332)
+++ dumpfile.c (working copy)
@@ -73,11 +73,10 @@ static struct dump_file_info dump_files[
dump_file_info (".cgraph", "ipa-cgraph", DK_ipa, 0),
dump_file_info (".type-inheritance", "ipa-type-inheritance", DK_ipa, 0),
dump_file_info (".ipa-clones", "ipa-clones", DK_ipa, 0),
- dump_file_info (".tu", "translation-unit", DK_lang, 1),
dump_file_info (".original", "tree-original", DK_tree, 3),
dump_file_info (".gimple", "tree-gimple", DK_tree, 4),
dump_file_info (".nested", "tree-nested", DK_tree, 5),
-#define FIRST_AUTO_NUMBERED_DUMP 4
+#define FIRST_AUTO_NUMBERED_DUMP 3
dump_file_info (NULL, "lang-all", DK_lang, 0),
dump_file_info (NULL, "tree-all", DK_tree, 0),
Index: dumpfile.h
===================================================================
--- dumpfile.h (revision 248332)
+++ dumpfile.h (working copy)
@@ -30,7 +30,6 @@ enum tree_dump_index
TDI_cgraph, /* dump function call graph. */
TDI_inheritance, /* dump type inheritance graph. */
TDI_clones, /* dump IPA cloning decisions. */
- TDI_tu, /* dump the whole translation unit. */
TDI_original, /* dump each function before optimizing it */
TDI_generic, /* dump each function after genericizing it */
TDI_nested, /* dump each function after unnesting it */
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2017-05-22 12:27 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-05-22 12:57 [DUMP PATCH]: Move fdump-translation-unit to C++ FE only Nathan Sidwell
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).