diff options
author | Diego Novillo <dnovillo@redhat.com> | 2004-03-16 22:31:58 +0000 |
---|---|---|
committer | Diego Novillo <dnovillo@redhat.com> | 2004-03-16 22:31:58 +0000 |
commit | a0102afd28eb5b96ed8e520e8b08068df465e9a8 (patch) | |
tree | ca7ca042b3dcd11bc5e2a55ffb5488b5c078c392 | |
parent | 80131e0595f04c257f4c8a7bc1daefaccf70ebd9 (diff) |
* tree-dump.c (struct dump_option_value_info): Add TDF_UID.
* tree.h (TDF_UID): Define.
* doc/invoke.texi: Document -ftree-dump-...-uid.
* tree-pretty-print.c (debug_generic_expr): Add TDF_UID.
(debug_generic_stmt): Likewise.
(dump_decl_name): New function.
(dump_generic_node): Call it.
(print_declaration): Add new argument 'flags'. Update all users.
(print_struct_decl): Likewise.
* tree-alias-ander.c, tree-cfg.c, tree-dfa.c, tree-mudflap.c,
tree-nrv.c, tree-sra.c, tree-ssa-alias.c, tree-ssa-ccp.c,
tree-ssa-copy.c, tree-ssa-dom.c, tree-ssa-dse.c,
tree-ssa-forwprop.c, tree-ssa-operands.c, tree-ssa-pre.c,
tree-ssa.c, tree-tail-call.c: Call print_generic_* with
'dump_flags'.
git-svn-id: https://gcc.gnu.org/svn/gcc/branches/tree-ssa-20020619-branch@79554 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r-- | gcc/ChangeLog.tree-ssa | 18 | ||||
-rw-r--r-- | gcc/doc/invoke.texi | 4 | ||||
-rw-r--r-- | gcc/tree-alias-ander.c | 2 | ||||
-rw-r--r-- | gcc/tree-cfg.c | 2 | ||||
-rw-r--r-- | gcc/tree-dfa.c | 6 | ||||
-rw-r--r-- | gcc/tree-dump.c | 1 | ||||
-rw-r--r-- | gcc/tree-mudflap.c | 8 | ||||
-rw-r--r-- | gcc/tree-nrv.c | 4 | ||||
-rw-r--r-- | gcc/tree-pretty-print.c | 130 | ||||
-rw-r--r-- | gcc/tree-sra.c | 24 | ||||
-rw-r--r-- | gcc/tree-ssa-alias.c | 14 | ||||
-rw-r--r-- | gcc/tree-ssa-ccp.c | 12 | ||||
-rw-r--r-- | gcc/tree-ssa-copy.c | 4 | ||||
-rw-r--r-- | gcc/tree-ssa-dom.c | 4 | ||||
-rw-r--r-- | gcc/tree-ssa-dse.c | 2 | ||||
-rw-r--r-- | gcc/tree-ssa-forwprop.c | 4 | ||||
-rw-r--r-- | gcc/tree-ssa-operands.c | 4 | ||||
-rw-r--r-- | gcc/tree-ssa-pre.c | 24 | ||||
-rw-r--r-- | gcc/tree-ssa.c | 4 | ||||
-rw-r--r-- | gcc/tree-tailcall.c | 2 | ||||
-rw-r--r-- | gcc/tree.h | 3 |
21 files changed, 137 insertions, 139 deletions
diff --git a/gcc/ChangeLog.tree-ssa b/gcc/ChangeLog.tree-ssa index 848cb33ed84..ff5205c8ec3 100644 --- a/gcc/ChangeLog.tree-ssa +++ b/gcc/ChangeLog.tree-ssa @@ -1,3 +1,21 @@ +2004-03-16 Diego Novillo <dnovillo@redhat.com> + + * tree-dump.c (struct dump_option_value_info): Add TDF_UID. + * tree.h (TDF_UID): Define. + * doc/invoke.texi: Document -ftree-dump-...-uid. + * tree-pretty-print.c (debug_generic_expr): Add TDF_UID. + (debug_generic_stmt): Likewise. + (dump_decl_name): New function. + (dump_generic_node): Call it. + (print_declaration): Add new argument 'flags'. Update all users. + (print_struct_decl): Likewise. + * tree-alias-ander.c, tree-cfg.c, tree-dfa.c, tree-mudflap.c, + tree-nrv.c, tree-sra.c, tree-ssa-alias.c, tree-ssa-ccp.c, + tree-ssa-copy.c, tree-ssa-dom.c, tree-ssa-dse.c, + tree-ssa-forwprop.c, tree-ssa-operands.c, tree-ssa-pre.c, + tree-ssa.c, tree-tail-call.c: Call print_generic_* with + 'dump_flags'. + 2004-03-16 Dale Johannesen <dalej@apple.com> * Makefile.in (tree-ssa-phiopt.o): add langhooks.h dependency. diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi index 86b12857a6f..ebf7d711d50 100644 --- a/gcc/doc/invoke.texi +++ b/gcc/doc/invoke.texi @@ -3447,8 +3447,10 @@ Enable showing basic block boundaries (disabled in raw dumps). Enable showing virtual operands for every statement. @item lineno Enable showing line numbers for statements. +@item uid +Enable showing the unique ID (@code{DECL_UID}) for each variable. @item all -Turn on all options. +Turn on all options, except @option{raw}, @option{slim} and @option{lineno}. @end table The following tree dumps are possible: diff --git a/gcc/tree-alias-ander.c b/gcc/tree-alias-ander.c index 715b4219582..b3b14d1fa12 100644 --- a/gcc/tree-alias-ander.c +++ b/gcc/tree-alias-ander.c @@ -652,7 +652,7 @@ andersen_op_assign (struct tree_alias_ops *ops ATTRIBUTE_UNUSED, { fprintf (dump_file, "Op assignment %s = ", alias_get_name (ALIAS_VAR_DECL (lhs))); - print_generic_stmt (dump_file, operation, 0); + print_generic_stmt (dump_file, operation, dump_flags); fprintf (dump_file, "\n"); } diff --git a/gcc/tree-cfg.c b/gcc/tree-cfg.c index c63c58dccc4..499a4d183ff 100644 --- a/gcc/tree-cfg.c +++ b/gcc/tree-cfg.c @@ -3937,7 +3937,7 @@ dump_function_to_file (tree fn, FILE *file, int flags) arg = DECL_ARGUMENTS (fn); while (arg) { - print_generic_expr (file, arg, 0); + print_generic_expr (file, arg, dump_flags); if (TREE_CHAIN (arg)) fprintf (file, ", "); arg = TREE_CHAIN (arg); diff --git a/gcc/tree-dfa.c b/gcc/tree-dfa.c index bdb89dd1eef..8d50ccbaa5f 100644 --- a/gcc/tree-dfa.c +++ b/gcc/tree-dfa.c @@ -529,7 +529,7 @@ dump_variable (FILE *file, tree var) return; } - print_generic_expr (file, var, 0); + print_generic_expr (file, var, dump_flags); if (TREE_CODE (var) == SSA_NAME) var = SSA_NAME_VAR (var); @@ -544,7 +544,7 @@ dump_variable (FILE *file, tree var) if (ann->type_mem_tag) { fprintf (file, ", type memory tag: "); - print_generic_expr (file, ann->type_mem_tag, 0); + print_generic_expr (file, ann->type_mem_tag, dump_flags); } if (ann->is_alias_tag) @@ -559,7 +559,7 @@ dump_variable (FILE *file, tree var) if (ann->default_def) { fprintf (file, ", default def: "); - print_generic_expr (file, ann->default_def, 0); + print_generic_expr (file, ann->default_def, dump_flags); } if (ann->may_aliases) diff --git a/gcc/tree-dump.c b/gcc/tree-dump.c index 110369ba0b1..d45498ed455 100644 --- a/gcc/tree-dump.c +++ b/gcc/tree-dump.c @@ -681,6 +681,7 @@ static const struct dump_option_value_info dump_options[] = {"blocks", TDF_BLOCKS}, {"vops", TDF_VOPS}, {"lineno", TDF_LINENO}, + {"uid", TDF_UID}, {"all", ~(TDF_RAW | TDF_SLIM | TDF_LINENO)}, {NULL, 0} }; diff --git a/gcc/tree-mudflap.c b/gcc/tree-mudflap.c index 4023faac13f..9172541af39 100644 --- a/gcc/tree-mudflap.c +++ b/gcc/tree-mudflap.c @@ -998,9 +998,9 @@ mudflap_enqueue_decl (tree obj) if (dump_file) { fprintf (dump_file, "enqueue_decl obj=`"); - print_generic_expr (dump_file, obj, 0); + print_generic_expr (dump_file, obj, dump_flags); fprintf (dump_file, "' size="); - print_generic_expr (dump_file, object_size, 0); + print_generic_expr (dump_file, object_size, dump_flags); fprintf (dump_file, "\n"); } @@ -1047,9 +1047,9 @@ mudflap_enqueue_constant (tree obj) if (dump_file) { fprintf (dump_file, "enqueue_constant obj=`"); - print_generic_expr (dump_file, obj, 0); + print_generic_expr (dump_file, obj, dump_flags); fprintf (dump_file, "' size="); - print_generic_expr (dump_file, object_size, 0); + print_generic_expr (dump_file, object_size, dump_flags); fprintf (dump_file, "\n"); } diff --git a/gcc/tree-nrv.c b/gcc/tree-nrv.c index ff4626faabd..2c344967d66 100644 --- a/gcc/tree-nrv.c +++ b/gcc/tree-nrv.c @@ -170,9 +170,9 @@ tree_nrv (void) if (dump_file && (dump_flags & TDF_DETAILS)) { fprintf (dump_file, "NRV Replaced: "); - print_generic_expr (dump_file, found, 0); + print_generic_expr (dump_file, found, dump_flags); fprintf (dump_file, " with: "); - print_generic_expr (dump_file, result, 0); + print_generic_expr (dump_file, result, dump_flags); fprintf (dump_file, "\n"); } diff --git a/gcc/tree-pretty-print.c b/gcc/tree-pretty-print.c index c01aef79059..08816cb2e22 100644 --- a/gcc/tree-pretty-print.c +++ b/gcc/tree-pretty-print.c @@ -39,8 +39,8 @@ static void pretty_print_string (pretty_printer *, const char*); static void print_call_name (pretty_printer *, tree); static void newline_and_indent (pretty_printer *, int); static void maybe_init_pretty_print (FILE *); -static void print_declaration (pretty_printer *, tree, int); -static void print_struct_decl (pretty_printer *, tree, int); +static void print_declaration (pretty_printer *, tree, int, int); +static void print_struct_decl (pretty_printer *, tree, int, int); static void do_niy (pretty_printer *, tree); static void dump_vops (pretty_printer *, tree, int); static void dump_generic_bb_buff (pretty_printer *, basic_block, int, int); @@ -87,24 +87,24 @@ do_niy (pretty_printer *buffer, tree node) void debug_generic_expr (tree t) { - print_generic_expr (stderr, t, TDF_VOPS); + print_generic_expr (stderr, t, TDF_VOPS|TDF_UID); fprintf (stderr, "\n"); } void debug_generic_stmt (tree t) { - print_generic_stmt (stderr, t, TDF_VOPS); + print_generic_stmt (stderr, t, TDF_VOPS|TDF_UID); fprintf (stderr, "\n"); } /* Prints declaration DECL to the FILE with details specified by FLAGS. */ void -print_generic_decl (FILE *file, tree decl, int flags ATTRIBUTE_UNUSED) +print_generic_decl (FILE *file, tree decl, int flags) { maybe_init_pretty_print (file); dumping_stmts = true; - print_declaration (&buffer, decl, 2); + print_declaration (&buffer, decl, 2, flags); pp_write_text_to_stream (&buffer); } @@ -149,6 +149,26 @@ print_generic_expr (FILE *file, tree t, int flags) dump_generic_node (&buffer, t, 0, flags, false); } +/* Dump the name of a _DECL node and its DECL_UID if TDF_UID is set + in FLAGS. */ + +static void +dump_decl_name (pretty_printer *buffer, tree node, int flags) +{ + if (DECL_NAME (node)) + pp_tree_identifier (buffer, DECL_NAME (node)); + + if ((flags & TDF_UID) + || DECL_NAME (node) == NULL_TREE) + { + if (TREE_CODE (node) == LABEL_DECL + && LABEL_DECL_UID (node) != -1) + pp_printf (buffer, "<L" HOST_WIDE_INT_PRINT_DEC ">", + LABEL_DECL_UID (node)); + else + pp_printf (buffer, "<D%u>", DECL_UID (node)); + } +} /* Dump the node NODE on the pretty_printer BUFFER, SPC spaces of indent. FLAGS specifies details to show in the dump (see TDF_* in tree.h). If @@ -249,7 +269,7 @@ dump_generic_node (pretty_printer *buffer, tree node, int spc, int flags, if (class == 'd') { if (DECL_NAME (node)) - pp_tree_identifier (buffer, DECL_NAME (node)); + dump_decl_name (buffer, node, flags); else pp_string (buffer, "<unnamed type decl>"); } @@ -258,12 +278,10 @@ dump_generic_node (pretty_printer *buffer, tree node, int spc, int flags, if (TYPE_NAME (node)) { if (TREE_CODE (TYPE_NAME (node)) == IDENTIFIER_NODE) - pp_string (buffer, - IDENTIFIER_POINTER (TYPE_NAME (node))); + pp_tree_identifier (buffer, TYPE_NAME (node)); else if (TREE_CODE (TYPE_NAME (node)) == TYPE_DECL && DECL_NAME (TYPE_NAME (node))) - pp_string (buffer, - IDENTIFIER_POINTER (DECL_NAME (TYPE_NAME (node)))); + dump_decl_name (buffer, TYPE_NAME (node), flags); else pp_string (buffer, "<unnamed type>"); } @@ -285,7 +303,7 @@ dump_generic_node (pretty_printer *buffer, tree node, int spc, int flags, pp_character (buffer, '('); pp_string (buffer, str); if (TYPE_NAME (node) && DECL_NAME (TYPE_NAME (node))) - pp_string (buffer, IDENTIFIER_POINTER (DECL_NAME (TYPE_NAME (node)))); + dump_decl_name (buffer, TYPE_NAME (node), flags); else pp_printf (buffer, "<T%x>", TYPE_UID (node)); @@ -331,8 +349,7 @@ dump_generic_node (pretty_printer *buffer, tree node, int spc, int flags, break; case METHOD_TYPE: - pp_string (buffer, IDENTIFIER_POINTER - (DECL_NAME (TYPE_NAME (TYPE_METHOD_BASETYPE (node))))); + dump_decl_name (buffer, TYPE_NAME (TYPE_METHOD_BASETYPE (node)), flags); pp_string (buffer, "::"); break; @@ -384,7 +401,7 @@ dump_generic_node (pretty_printer *buffer, tree node, int spc, int flags, if (TYPE_NAME (node)) dump_generic_node (buffer, TYPE_NAME (node), spc, flags, false); else - print_struct_decl (buffer, node, spc); + print_struct_decl (buffer, node, spc, flags); break; case QUAL_UNION_TYPE: @@ -512,22 +529,13 @@ dump_generic_node (pretty_printer *buffer, tree node, int spc, int flags, break; case FUNCTION_DECL: - pp_tree_identifier (buffer, DECL_NAME (node)); + case CONST_DECL: + dump_decl_name (buffer, node, flags); break; case LABEL_DECL: if (DECL_NAME (node)) - { - pp_string (buffer, IDENTIFIER_POINTER (DECL_NAME (node))); - if (flags & TDF_DETAILS) - { - if (LABEL_DECL_UID (node) != -1) - pp_printf (buffer, "<L" HOST_WIDE_INT_PRINT_DEC ">", - LABEL_DECL_UID (node)); - else - pp_printf (buffer, "<D%u>", DECL_UID (node)); - } - } + dump_decl_name (buffer, node, flags); else if (LABEL_DECL_UID (node) != -1) pp_printf (buffer, "<L" HOST_WIDE_INT_PRINT_DEC ">", LABEL_DECL_UID (node)); @@ -535,17 +543,6 @@ dump_generic_node (pretty_printer *buffer, tree node, int spc, int flags, pp_printf (buffer, "<D%u>", DECL_UID (node)); break; - case CONST_DECL: - if (DECL_NAME (node)) - { - pp_string (buffer, IDENTIFIER_POINTER (DECL_NAME (node))); - if (flags & TDF_DETAILS) - pp_printf (buffer, "<D%u>", DECL_UID (node)); - } - else - pp_printf (buffer, "<D%u>", DECL_UID (node)); - break; - case TYPE_DECL: if (strcmp (DECL_SOURCE_FILE (node), "<built-in>") == 0) { @@ -554,7 +551,7 @@ dump_generic_node (pretty_printer *buffer, tree node, int spc, int flags, } if (DECL_NAME (node)) { - pp_string (buffer, IDENTIFIER_POINTER (DECL_NAME (node))); + dump_decl_name (buffer, node, flags); } else { @@ -577,34 +574,15 @@ dump_generic_node (pretty_printer *buffer, tree node, int spc, int flags, case VAR_DECL: case PARM_DECL: - if (DECL_NAME (node)) - { - pp_string (buffer, IDENTIFIER_POINTER (DECL_NAME (node))); - if (flags & TDF_DETAILS) - pp_printf (buffer, "<D%u>", DECL_UID (node)); - } - else - pp_printf (buffer, "<D%u>", DECL_UID (node)); + case FIELD_DECL: + case NAMESPACE_DECL: + dump_decl_name (buffer, node, flags); break; case RESULT_DECL: pp_string (buffer, "<retval>"); break; - case FIELD_DECL: - if (DECL_NAME (node)) - pp_string (buffer, IDENTIFIER_POINTER (DECL_NAME (node))); - else - pp_printf (buffer, "<D%u>", DECL_UID (node)); - break; - - case NAMESPACE_DECL: - if (DECL_NAME (node)) - pp_string (buffer, IDENTIFIER_POINTER (DECL_NAME (node))); - else - pp_printf (buffer, "<D%u>", DECL_UID (node)); - break; - case COMPONENT_REF: op0 = TREE_OPERAND (node, 0); str = "."; @@ -676,10 +654,7 @@ dump_generic_node (pretty_printer *buffer, tree node, int spc, int flags, val = TREE_OPERAND (val, 0); if (val && TREE_CODE (val) == FUNCTION_DECL) { - if (DECL_NAME (val)) - pp_string (buffer, IDENTIFIER_POINTER (DECL_NAME (val))); - else - pp_printf (buffer, "<D%u>", DECL_UID (val)); + dump_decl_name (buffer, val, flags); } else { @@ -843,7 +818,7 @@ dump_generic_node (pretty_printer *buffer, tree node, int spc, int flags, for (op0 = BIND_EXPR_VARS (node); op0; op0 = TREE_CHAIN (op0)) { - print_declaration (buffer, op0, spc+2); + print_declaration (buffer, op0, spc+2, flags); pp_newline (buffer); } } @@ -1511,7 +1486,7 @@ dump_generic_node (pretty_printer *buffer, tree node, int spc, int flags, /* Print the declaration of a variable. */ static void -print_declaration (pretty_printer *buffer, tree t, int spc) +print_declaration (pretty_printer *buffer, tree t, int spc, int flags) { /* Don't print type declarations. */ if (TREE_CODE (t) == TYPE_DECL) @@ -1536,11 +1511,11 @@ print_declaration (pretty_printer *buffer, tree t, int spc) tmp = TREE_TYPE (t); while (TREE_CODE (TREE_TYPE (tmp)) == ARRAY_TYPE) tmp = TREE_TYPE (tmp); - dump_generic_node (buffer, TREE_TYPE (tmp), spc, 0, false); + dump_generic_node (buffer, TREE_TYPE (tmp), spc, flags, false); /* Print variable's name. */ pp_space (buffer); - dump_generic_node (buffer, t, spc, 0, false); + dump_generic_node (buffer, t, spc, flags, false); /* Print the dimensions. */ tmp = TREE_TYPE (t); @@ -1554,7 +1529,8 @@ print_declaration (pretty_printer *buffer, tree t, int spc) TREE_INT_CST_LOW (TYPE_SIZE (tmp)) / TREE_INT_CST_LOW (TYPE_SIZE (TREE_TYPE (tmp)))); else - dump_generic_node (buffer, TYPE_SIZE_UNIT (tmp), spc, 0, false); + dump_generic_node (buffer, TYPE_SIZE_UNIT (tmp), spc, flags, + false); } pp_character (buffer, ']'); tmp = TREE_TYPE (tmp); @@ -1563,11 +1539,11 @@ print_declaration (pretty_printer *buffer, tree t, int spc) else { /* Print type declaration. */ - dump_generic_node (buffer, TREE_TYPE (t), spc, 0, false); + dump_generic_node (buffer, TREE_TYPE (t), spc, flags, false); /* Print variable's name. */ pp_space (buffer); - dump_generic_node (buffer, t, spc, 0, false); + dump_generic_node (buffer, t, spc, flags, false); } /* The initial value of a function serves to determine wether the function @@ -1581,7 +1557,7 @@ print_declaration (pretty_printer *buffer, tree t, int spc) pp_space (buffer); pp_character (buffer, '='); pp_space (buffer); - dump_generic_node (buffer, DECL_INITIAL (t), spc, 0, false); + dump_generic_node (buffer, DECL_INITIAL (t), spc, flags, false); } } @@ -1593,7 +1569,7 @@ print_declaration (pretty_printer *buffer, tree t, int spc) FIXME: Still incomplete. */ static void -print_struct_decl (pretty_printer *buffer, tree node, int spc) +print_struct_decl (pretty_printer *buffer, tree node, int spc, int flags) { /* Print the name of the structure. */ if (TYPE_NAME (node)) @@ -1623,13 +1599,13 @@ print_struct_decl (pretty_printer *buffer, tree node, int spc) /* Avoid to print recursively the structure. */ /* FIXME : Not implemented correctly..., what about the case when we have a cycle in the contain graph? ... - Maybe this could be solved by looking at the scope in which the structure - was declared. */ + Maybe this could be solved by looking at the scope in which the + structure was declared. */ if (TREE_TYPE (tmp) != node || (TREE_CODE (TREE_TYPE (tmp)) == POINTER_TYPE && TREE_TYPE (TREE_TYPE (tmp)) != node)) { - print_declaration (buffer, tmp, spc+2); + print_declaration (buffer, tmp, spc+2, flags); pp_newline (buffer); } else diff --git a/gcc/tree-sra.c b/gcc/tree-sra.c index a7189668392..aef77c00772 100644 --- a/gcc/tree-sra.c +++ b/gcc/tree-sra.c @@ -293,7 +293,7 @@ can_be_scalarized_p (tree var) if (dump_file && (dump_flags & TDF_DETAILS)) { fprintf (dump_file, "Cannot scalarize variable "); - print_generic_expr (dump_file, var, 0); + print_generic_expr (dump_file, var, dump_flags); fprintf (dump_file, " because it must live in memory\n"); } return false; @@ -304,7 +304,7 @@ can_be_scalarized_p (tree var) if (dump_file && (dump_flags & TDF_DETAILS)) { fprintf (dump_file, "Cannot scalarize variable "); - print_generic_expr (dump_file, var, 0); + print_generic_expr (dump_file, var, dump_flags); fprintf (dump_file, " because it is declared volatile\n"); } return false; @@ -328,10 +328,10 @@ can_be_scalarized_p (tree var) if (dump_file && (dump_flags & TDF_DETAILS)) { fprintf (dump_file, "Cannot scalarize variable "); - print_generic_expr (dump_file, var, 0); + print_generic_expr (dump_file, var, dump_flags); fprintf (dump_file, " because it contains an aggregate type field, "); - print_generic_expr (dump_file, field, 0); + print_generic_expr (dump_file, field, dump_flags); fprintf (dump_file, "\n"); } return false; @@ -346,10 +346,10 @@ can_be_scalarized_p (tree var) if (dump_file && (dump_flags & TDF_DETAILS)) { fprintf (dump_file, "Cannot scalarize variable "); - print_generic_expr (dump_file, var, 0); + print_generic_expr (dump_file, var, dump_flags); fprintf (dump_file, " because it contains a __complex__ field, "); - print_generic_expr (dump_file, field, 0); + print_generic_expr (dump_file, field, dump_flags); fprintf (dump_file, "\n"); } return false; @@ -364,10 +364,10 @@ can_be_scalarized_p (tree var) if (dump_file && (dump_flags & TDF_DETAILS)) { fprintf (dump_file, "Cannot scalarize variable "); - print_generic_expr (dump_file, var, 0); + print_generic_expr (dump_file, var, dump_flags); fprintf (dump_file, " because it contains a bit-field, "); - print_generic_expr (dump_file, field, 0); + print_generic_expr (dump_file, field, dump_flags); fprintf (dump_file, "\n"); } return false; @@ -379,7 +379,7 @@ can_be_scalarized_p (tree var) if (dump_file && (dump_flags & TDF_DETAILS)) { fprintf (dump_file, "Cannot scalarize variable "); - print_generic_expr (dump_file, var, 0); + print_generic_expr (dump_file, var, dump_flags); fprintf (dump_file, " because it contains more than %d fields\n", MAX_NFIELDS_FOR_SRA); @@ -1087,16 +1087,16 @@ dump_sra_map_trav (void **slot, void *data) { case REALPART_EXPR: fputs ("__real__ ", f); - print_generic_expr (dump_file, e->base, 0); + print_generic_expr (dump_file, e->base, dump_flags); fprintf (f, " -> %s\n", get_name (e->replace)); break; case IMAGPART_EXPR: fputs ("__imag__ ", f); - print_generic_expr (dump_file, e->base, 0); + print_generic_expr (dump_file, e->base, dump_flags); fprintf (f, " -> %s\n", get_name (e->replace)); break; case COMPONENT_REF: - print_generic_expr (dump_file, e->base, 0); + print_generic_expr (dump_file, e->base, dump_flags); fprintf (f, ".%s -> %s\n", get_name (e->field), get_name (e->replace)); break; default: diff --git a/gcc/tree-ssa-alias.c b/gcc/tree-ssa-alias.c index 5fee057c437..eabce62df5c 100644 --- a/gcc/tree-ssa-alias.c +++ b/gcc/tree-ssa-alias.c @@ -1479,13 +1479,13 @@ add_pointed_to_expr (tree ptr, tree value) if (dump_file) { fprintf (dump_file, "Pointer "); - print_generic_expr (dump_file, ptr, 0); + print_generic_expr (dump_file, ptr, dump_flags); fprintf (dump_file, " points to "); if (ann->pt_malloc) fprintf (dump_file, "malloc space: "); else fprintf (dump_file, "an arbitrary address: "); - print_generic_expr (dump_file, value, 0); + print_generic_expr (dump_file, value, dump_flags); fprintf (dump_file, "\n"); } } @@ -1543,7 +1543,7 @@ collect_points_to_info_r (tree var, tree stmt, void *data) if (dump_file && (dump_flags & TDF_DETAILS)) { fprintf (dump_file, "Visiting use-def links for "); - print_generic_expr (dump_file, var, 0); + print_generic_expr (dump_file, var, dump_flags); fprintf (dump_file, "\n"); } @@ -1892,7 +1892,7 @@ dump_points_to_info_for (FILE *file, tree ptr) ssa_name_ann_t ann = ssa_name_ann (ptr); fprintf (file, "Pointer "); - print_generic_expr (file, ptr, 0); + print_generic_expr (file, ptr, dump_flags); if (ann == NULL) return; @@ -1900,7 +1900,7 @@ dump_points_to_info_for (FILE *file, tree ptr) if (ann->name_mem_tag) { fprintf (file, ", name memory tag: "); - print_generic_expr (file, ann->name_mem_tag, 0); + print_generic_expr (file, ann->name_mem_tag, dump_flags); } if (ann->value_escapes_p) @@ -1919,7 +1919,7 @@ dump_points_to_info_for (FILE *file, tree ptr) fprintf (file, ", points-to vars: { "); EXECUTE_IF_SET_IN_BITMAP (ann->pt_vars, 0, ix, { - print_generic_expr (file, referenced_var (ix), 0); + print_generic_expr (file, referenced_var (ix), dump_flags); fprintf (file, " "); }); fprintf (file, "}"); @@ -2009,7 +2009,7 @@ dump_may_aliases_for (FILE *file, tree var) fprintf (file, "{ "); for (i = 0; i < VARRAY_ACTIVE_SIZE (aliases); i++) { - print_generic_expr (file, VARRAY_TREE (aliases, i), 0); + print_generic_expr (file, VARRAY_TREE (aliases, i), dump_flags); fprintf (file, " "); } fprintf (file, "}"); diff --git a/gcc/tree-ssa-ccp.c b/gcc/tree-ssa-ccp.c index 839245d5169..f174b7a1911 100644 --- a/gcc/tree-ssa-ccp.c +++ b/gcc/tree-ssa-ccp.c @@ -310,7 +310,7 @@ simulate_stmt (tree use_stmt) if (dump_file && (dump_flags & TDF_DETAILS)) { fprintf (dump_file, "\nSimulating statement (from ssa_edges): "); - print_generic_stmt (dump_file, use_stmt, 0); + print_generic_stmt (dump_file, use_stmt, dump_flags); } if (TREE_CODE (use_stmt) == PHI_NODE) @@ -425,7 +425,7 @@ visit_phi_node (tree phi) if (dump_file && (dump_flags & TDF_DETAILS)) { fprintf (dump_file, "\nVisiting PHI node: "); - print_generic_expr (dump_file, phi, 0); + print_generic_expr (dump_file, phi, dump_flags); } curr_val = get_value (PHI_RESULT (phi)); @@ -493,7 +493,7 @@ visit_phi_node (tree phi) if (dump_file && (dump_flags & TDF_DETAILS)) { fprintf (dump_file, "\t"); - print_generic_expr (dump_file, rdef, 0); + print_generic_expr (dump_file, rdef, dump_flags); dump_lattice_value (dump_file, "\tValue: ", *rdef_val); fprintf (dump_file, "\n"); } @@ -975,7 +975,7 @@ dump_lattice_value (FILE *outf, const char *prefix, value val) break; case CONSTANT: fprintf (outf, "%sCONSTANT ", prefix); - print_generic_expr (outf, val.const_val, 0); + print_generic_expr (outf, val.const_val, dump_flags); break; default: abort (); @@ -2316,7 +2316,7 @@ execute_fold_all_builtins (void) if (dump_file && (dump_flags & TDF_DETAILS)) { fprintf (dump_file, "Simplified\n "); - print_generic_stmt (dump_file, *stmtp, 0); + print_generic_stmt (dump_file, *stmtp, dump_flags); } set_rhs (stmtp, result); @@ -2325,7 +2325,7 @@ execute_fold_all_builtins (void) if (dump_file && (dump_flags & TDF_DETAILS)) { fprintf (dump_file, "to\n "); - print_generic_stmt (dump_file, *stmtp, 0); + print_generic_stmt (dump_file, *stmtp, dump_flags); fprintf (dump_file, "\n"); } } diff --git a/gcc/tree-ssa-copy.c b/gcc/tree-ssa-copy.c index 65a52b74287..027cde018d2 100644 --- a/gcc/tree-ssa-copy.c +++ b/gcc/tree-ssa-copy.c @@ -240,11 +240,11 @@ cprop_into_stmt (tree stmt, varray_type const_and_copies) if (dump_file && (dump_flags & TDF_DETAILS)) { fprintf (dump_file, " Replaced '"); - print_generic_expr (dump_file, *op_p, 0); + print_generic_expr (dump_file, *op_p, dump_flags); fprintf (dump_file, "' with %s '", (TREE_CODE (val) != SSA_NAME ? "constant" : "variable")); - print_generic_expr (dump_file, val, 0); + print_generic_expr (dump_file, val, dump_flags); fprintf (dump_file, "'\n"); } diff --git a/gcc/tree-ssa-dom.c b/gcc/tree-ssa-dom.c index b922b01610b..4d9c7c9736a 100644 --- a/gcc/tree-ssa-dom.c +++ b/gcc/tree-ssa-dom.c @@ -2269,9 +2269,9 @@ eliminate_redundant_computations (struct dom_walk_data *walk_data, if (dump_file && (dump_flags & TDF_DETAILS)) { fprintf (dump_file, " Replaced redundant expr '"); - print_generic_expr (dump_file, *expr_p, 0); + print_generic_expr (dump_file, *expr_p, dump_flags); fprintf (dump_file, "' with '"); - print_generic_expr (dump_file, cached_lhs, 0); + print_generic_expr (dump_file, cached_lhs, dump_flags); fprintf (dump_file, "'\n"); } diff --git a/gcc/tree-ssa-dse.c b/gcc/tree-ssa-dse.c index 6d5b0e80eb1..68bdfe9ae58 100644 --- a/gcc/tree-ssa-dse.c +++ b/gcc/tree-ssa-dse.c @@ -305,7 +305,7 @@ dse_optimize_stmt (struct dom_walk_data *walk_data, if (dump_file && (dump_flags & TDF_DETAILS)) { fprintf (dump_file, " Deleted dead store '"); - print_generic_expr (dump_file, bsi_stmt (bsi), 0); + print_generic_expr (dump_file, bsi_stmt (bsi), dump_flags); fprintf (dump_file, "'\n"); } diff --git a/gcc/tree-ssa-forwprop.c b/gcc/tree-ssa-forwprop.c index 5cad3144349..f86608d2b88 100644 --- a/gcc/tree-ssa-forwprop.c +++ b/gcc/tree-ssa-forwprop.c @@ -351,9 +351,9 @@ substitute_single_use_vars (varray_type forwprop_data) if (dump_file && (dump_flags & TDF_DETAILS)) { fprintf (dump_file, " Replaced '"); - print_generic_expr (dump_file, cond, 0); + print_generic_expr (dump_file, cond, dump_flags); fprintf (dump_file, "' with '"); - print_generic_expr (dump_file, new_cond, 0); + print_generic_expr (dump_file, new_cond, dump_flags); fprintf (dump_file, "'\n"); } diff --git a/gcc/tree-ssa-operands.c b/gcc/tree-ssa-operands.c index 5c9fa19d2b9..43c40b62107 100644 --- a/gcc/tree-ssa-operands.c +++ b/gcc/tree-ssa-operands.c @@ -933,9 +933,9 @@ get_expr_operands (tree stmt, tree *expr_p, int flags, voperands_t prev_vops) { fprintf (dump_file, "NOTE: no flow-sensitive alias info for "); - print_generic_expr (dump_file, ptr, 0); + print_generic_expr (dump_file, ptr, dump_flags); fprintf (dump_file, " in "); - print_generic_stmt (dump_file, stmt, 0); + print_generic_stmt (dump_file, stmt, dump_flags); } if (TREE_CODE (ptr) == SSA_NAME) diff --git a/gcc/tree-ssa-pre.c b/gcc/tree-ssa-pre.c index 59ad87d6996..c1e3ed6eae4 100644 --- a/gcc/tree-ssa-pre.c +++ b/gcc/tree-ssa-pre.c @@ -612,7 +612,7 @@ factor_through_injuries (struct expr_info *ei, tree start, tree var, if (dump_file) { fprintf (dump_file, "Found a real injury:"); - print_generic_stmt (dump_file, SSA_NAME_DEF_STMT (end), 0); + print_generic_stmt (dump_file, SSA_NAME_DEF_STMT (end), dump_flags); fprintf (dump_file, "\n"); } if (injured) @@ -735,7 +735,7 @@ set_var_phis (struct expr_info *ei, tree phi) if (dump_file) { fprintf (dump_file, "After factoring through injuries:"); - print_generic_stmt (dump_file, phi_operand, 0); + print_generic_stmt (dump_file, phi_operand, dump_flags); fprintf (dump_file, "\n"); } } @@ -1739,7 +1739,7 @@ rename_1 (struct expr_info *ei) { size_t i; fprintf (dump_file, "Occurrences for expression "); - print_generic_expr (dump_file, ei->expr, 0); + print_generic_expr (dump_file, ei->expr, dump_flags); fprintf (dump_file, " after Rename 1\n"); for (i = 0; i < VARRAY_ACTIVE_SIZE (ei->euses_dt_order); i++) { @@ -2102,9 +2102,9 @@ insert_one_operand (struct expr_info *ei, tree ephi, int opnd_indx, if (dump_file) { fprintf (dump_file, "In BB %d, insert save of ", bb->index); - print_generic_expr (dump_file, expr, 0); + print_generic_expr (dump_file, expr, dump_flags); fprintf (dump_file, " to "); - print_generic_expr (dump_file, newtemp, 0); + print_generic_expr (dump_file, newtemp, dump_flags); fprintf (dump_file, " after "); print_generic_stmt (dump_file, last_stmt (bb), dump_flags); fprintf (dump_file, " (on edge), because of EPHI"); @@ -2773,11 +2773,11 @@ code_motion (struct expr_info *ei) { fprintf (dump_file, "In BB %d, insert save of ", usebb->index); - print_generic_expr (dump_file, copy, 0); + print_generic_expr (dump_file, copy, dump_flags); fprintf (dump_file, " to "); - print_generic_expr (dump_file, newtemp, 0); + print_generic_expr (dump_file, newtemp, dump_flags); fprintf (dump_file, " before statement "); - print_generic_expr (dump_file, use_stmt, 0); + print_generic_expr (dump_file, use_stmt, dump_flags); fprintf (dump_file, "\n"); if (EXPR_LOCUS (use_stmt)) fprintf (dump_file, " on line %d\n", @@ -2807,9 +2807,9 @@ code_motion (struct expr_info *ei) print_generic_expr (dump_file, TREE_OPERAND (use_stmt, 1), 0); fprintf (dump_file, " from "); - print_generic_expr (dump_file, newtemp, 0); + print_generic_expr (dump_file, newtemp, dump_flags); fprintf (dump_file, " in statement "); - print_generic_stmt (dump_file, use_stmt, 0); + print_generic_stmt (dump_file, use_stmt, dump_flags); fprintf (dump_file, "\n"); if (EXPR_LOCUS (use_stmt)) fprintf (dump_file, " on line %d\n", @@ -3104,7 +3104,7 @@ pre_expression (struct expr_info *slot, void *data, bitmap vars_to_rename) { size_t i; fprintf (dump_file, "Occurrences for expression "); - print_generic_expr (dump_file, ei->expr, 0); + print_generic_expr (dump_file, ei->expr, dump_flags); fprintf (dump_file, " after Rename 2\n"); for (i = 0; i < VARRAY_ACTIVE_SIZE (ei->euses_dt_order); i++) { @@ -3120,7 +3120,7 @@ pre_expression (struct expr_info *slot, void *data, bitmap vars_to_rename) if (dump_file && (dump_flags & TDF_DETAILS)) { fprintf (dump_file, "EPHI's for expression "); - print_generic_expr (dump_file, ei->expr, 0); + print_generic_expr (dump_file, ei->expr, dump_flags); fprintf (dump_file, " after down safety and will_be_avail computation\n"); FOR_EACH_BB (bb) diff --git a/gcc/tree-ssa.c b/gcc/tree-ssa.c index 11dd4b983d0..708f7dcf0a9 100644 --- a/gcc/tree-ssa.c +++ b/gcc/tree-ssa.c @@ -2910,7 +2910,7 @@ dump_tree_ssa (FILE *file) { dump_bb (bb, file, 0); fputs (" ", file); - print_generic_stmt (file, phi_nodes (bb), 0); + print_generic_stmt (file, phi_nodes (bb), dump_flags); fputs ("\n\n", file); } } @@ -3623,7 +3623,7 @@ debug_def_blocks_r (void **slot, void *data ATTRIBUTE_UNUSED) struct def_blocks_d *db_p = (struct def_blocks_d *) *slot; fprintf (stderr, "VAR: "); - print_generic_expr (stderr, db_p->var, 0); + print_generic_expr (stderr, db_p->var, dump_flags); fprintf (stderr, ", DEF_BLOCKS: { "); EXECUTE_IF_SET_IN_BITMAP (db_p->def_blocks, 0, i, fprintf (stderr, "%ld ", i)); diff --git a/gcc/tree-tailcall.c b/gcc/tree-tailcall.c index ca9dca2c1ee..41887dd7eb6 100644 --- a/gcc/tree-tailcall.c +++ b/gcc/tree-tailcall.c @@ -746,7 +746,7 @@ optimize_tail_call (struct tailcall *t, bool opt_tailcalls) if (dump_file && (dump_flags & TDF_DETAILS)) { fprintf (dump_file, "Found tail call "); - print_generic_expr (dump_file, stmt, 0); + print_generic_expr (dump_file, stmt, dump_flags); fprintf (dump_file, " in bb %i\n", t->call_block->index); } } diff --git a/gcc/tree.h b/gcc/tree.h index 64d6d8eaeb9..0e875e0a851 100644 --- a/gcc/tree.h +++ b/gcc/tree.h @@ -3642,7 +3642,8 @@ enum tree_dump_index each pass */ #define TDF_BLOCKS (1 << 5) /* display basic block boundaries */ #define TDF_VOPS (1 << 6) /* display virtual operands */ -#define TDF_LINENO (1 << 7) /* display line numbers for statements */ +#define TDF_LINENO (1 << 7) /* display statement line numbers */ +#define TDF_UID (1 << 8) /* display decl UIDs */ typedef struct dump_info *dump_info_p; |