X-Git-Url: http://git.sourceforge.jp/view?a=blobdiff_plain;f=gcc%2Ftree-pretty-print.c;h=1821700635aebbed47b8478d8b1a091e78018e56;hb=020c749b4c8119d7493328aac7462e447dec88cf;hp=e660b4488190dbadcf01d3feffea1465ec46d5c0;hpb=6388f9f700c2179281798c832fa45aa1914706f8;p=pf3gnuchains%2Fgcc-fork.git diff --git a/gcc/tree-pretty-print.c b/gcc/tree-pretty-print.c index e660b448819..1821700635a 100644 --- a/gcc/tree-pretty-print.c +++ b/gcc/tree-pretty-print.c @@ -31,6 +31,7 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA #include "tree-flow.h" #include "langhooks.h" #include "tree-iterator.h" +#include "tree-chrec.h" /* Local functions, macros and variables. */ static int op_prio (tree); @@ -164,7 +165,10 @@ dump_decl_name (pretty_printer *buffer, tree node, int flags) pp_printf (buffer, "", LABEL_DECL_UID (node)); else - pp_printf (buffer, "", DECL_UID (node)); + { + char c = TREE_CODE (node) == CONST_DECL ? 'C' : 'D'; + pp_printf (buffer, "<%c%u>", c, DECL_UID (node)); + } } } @@ -753,7 +757,7 @@ dump_generic_node (pretty_printer *buffer, tree node, int spc, int flags, { tree_stmt_iterator si; bool first = true; - + if ((flags & TDF_SLIM) || !dumping_stmts) { pp_string (buffer, ""); @@ -897,6 +901,8 @@ dump_generic_node (pretty_printer *buffer, tree node, int spc, int flags, pp_character (buffer, ']'); } + if (CALL_EXPR_HAS_RETURN_SLOT_ADDR (node)) + pp_string (buffer, " [return slot addr]"); if (CALL_EXPR_TAILCALL (node)) pp_string (buffer, " [tail call]"); break; @@ -1096,12 +1102,6 @@ dump_generic_node (pretty_printer *buffer, tree node, int spc, int flags, pp_character (buffer, '>'); break; - case UNSAVE_EXPR: - pp_string (buffer, "UNSAVE_EXPR <"); - dump_generic_node (buffer, TREE_OPERAND (node, 0), spc, flags, false); - pp_character (buffer, '>'); - break; - case ENTRY_VALUE_EXPR: NIY; break; @@ -1412,10 +1412,36 @@ dump_generic_node (pretty_printer *buffer, tree node, int spc, int flags, pp_decimal_int (buffer, SSA_NAME_VERSION (node)); break; + case WITH_SIZE_EXPR: + pp_string (buffer, "WITH_SIZE_EXPR <"); + dump_generic_node (buffer, TREE_OPERAND (node, 0), spc, flags, false); + pp_string (buffer, ", "); + dump_generic_node (buffer, TREE_OPERAND (node, 1), spc, flags, false); + pp_string (buffer, ">"); + break; + case VALUE_HANDLE: pp_printf (buffer, "VH.%d", VALUE_HANDLE_ID (node)); break; + case SCEV_KNOWN: + pp_string (buffer, "scev_known"); + break; + + case SCEV_NOT_KNOWN: + pp_string (buffer, "scev_not_known"); + break; + + case POLYNOMIAL_CHREC: + pp_string (buffer, "{"); + dump_generic_node (buffer, CHREC_LEFT (node), spc, flags, false); + pp_string (buffer, ", +, "); + dump_generic_node (buffer, CHREC_RIGHT (node), spc, flags, false); + pp_string (buffer, "}_"); + dump_generic_node (buffer, CHREC_VAR (node), spc, flags, false); + is_stmt = false; + break; + default: NIY; } @@ -2022,10 +2048,10 @@ dump_vops (pretty_printer *buffer, tree stmt, int spc, int flags) for (i = 0; i < NUM_V_MAY_DEFS (v_may_defs); i++) { pp_string (buffer, "# "); - dump_generic_node (buffer, V_MAY_DEF_RESULT (v_may_defs, i), + dump_generic_node (buffer, V_MAY_DEF_RESULT (v_may_defs, i), spc + 2, flags, false); pp_string (buffer, " = V_MAY_DEF <"); - dump_generic_node (buffer, V_MAY_DEF_OP (v_may_defs, i), + dump_generic_node (buffer, V_MAY_DEF_OP (v_may_defs, i), spc + 2, flags, false); pp_string (buffer, ">;"); newline_and_indent (buffer, spc); @@ -2118,6 +2144,8 @@ dump_bb_header (pretty_printer *buffer, basic_block bb, int indent, int flags) pp_newline (buffer); } } + pp_write_text_to_stream (buffer); + check_bb_profile (bb, buffer->buffer->stream); } /* Dumps end of basic block BB to buffer BUFFER indented by INDENT @@ -2254,7 +2282,7 @@ dump_generic_bb_buff (pretty_printer *buffer, basic_block bb, if (bb_ann (bb)) dump_phi_nodes (buffer, bb, indent, flags); - + for (bsi = bsi_start (bb); !bsi_end_p (bsi); bsi_next (&bsi)) { int curr_indent;