X-Git-Url: http://git.sourceforge.jp/view?a=blobdiff_plain;f=gcc%2Ftree-dump.c;h=5467e28b5e8693f964f144c336e786f10c840c2c;hb=b4c8770a930c5beb405c7094d4dea99fb488ed4d;hp=b7363c377c00e05e47e2d5abc9982a680b464de1;hpb=45ba15034406e35c256ecb230d03603289eef617;p=pf3gnuchains%2Fgcc-fork.git diff --git a/gcc/tree-dump.c b/gcc/tree-dump.c index b7363c377c0..5467e28b5e8 100644 --- a/gcc/tree-dump.c +++ b/gcc/tree-dump.c @@ -1,5 +1,5 @@ /* Tree-dumping functionality for intermediate representation. - Copyright (C) 1999, 2000, 2002, 2003, 2004, 2005, 2006, 2007, 2008 + Copyright (C) 1999, 2000, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc. Written by Mark Mitchell @@ -510,10 +510,10 @@ dequeue_and_dump (dump_info_p di) case CONST_DECL: dump_child ("cnst", DECL_INITIAL (t)); break; - - case SYMBOL_MEMORY_TAG: - case NAME_MEMORY_TAG: - break; + + case DEBUG_EXPR_DECL: + dump_int (di, "-uid", DEBUG_TEMP_UID (t)); + /* Fall through. */ case VAR_DECL: case PARM_DECL: @@ -598,11 +598,6 @@ dequeue_and_dump (dump_info_p di) dump_child ("op 1", TREE_OPERAND (t, 1)); break; - case GIMPLE_MODIFY_STMT: - dump_child ("op 0", GIMPLE_STMT_OPERAND (t, 0)); - dump_child ("op 1", GIMPLE_STMT_OPERAND (t, 1)); - break; - case COMPONENT_REF: dump_child ("op 0", TREE_OPERAND (t, 0)); dump_child ("op 1", TREE_OPERAND (t, 1)); @@ -812,8 +807,10 @@ struct dump_option_value_info static const struct dump_option_value_info dump_options[] = { {"address", TDF_ADDRESS}, + {"asmname", TDF_ASMNAME}, {"slim", TDF_SLIM}, {"raw", TDF_RAW}, + {"graph", TDF_GRAPH}, {"details", TDF_DETAILS}, {"stats", TDF_STATS}, {"blocks", TDF_BLOCKS}, @@ -823,8 +820,12 @@ static const struct dump_option_value_info dump_options[] = {"stmtaddr", TDF_STMTADDR}, {"memsyms", TDF_MEMSYMS}, {"verbose", TDF_VERBOSE}, - {"all", ~(TDF_RAW | TDF_SLIM | TDF_LINENO | TDF_TREE | TDF_RTL | TDF_IPA - | TDF_STMTADDR | TDF_GRAPH | TDF_DIAGNOSTIC | TDF_VERBOSE)}, + {"eh", TDF_EH}, + {"alias", TDF_ALIAS}, + {"nouid", TDF_NOUID}, + {"all", ~(TDF_RAW | TDF_SLIM | TDF_LINENO | TDF_TREE | TDF_RTL | TDF_IPA + | TDF_STMTADDR | TDF_GRAPH | TDF_DIAGNOSTIC | TDF_VERBOSE + | TDF_RHS_ONLY | TDF_NOUID)}, {NULL, 0} }; @@ -835,9 +836,9 @@ dump_register (const char *suffix, const char *swtch, const char *glob, static int next_dump = FIRST_AUTO_NUMBERED_DUMP; int num = next_dump++; - size_t this = extra_dump_files_in_use++; + size_t count = extra_dump_files_in_use++; - if (this >= extra_dump_files_alloced) + if (count >= extra_dump_files_alloced) { if (extra_dump_files_alloced == 0) extra_dump_files_alloced = 32; @@ -848,25 +849,25 @@ dump_register (const char *suffix, const char *swtch, const char *glob, extra_dump_files_alloced); } - memset (&extra_dump_files[this], 0, sizeof (struct dump_file_info)); - extra_dump_files[this].suffix = suffix; - extra_dump_files[this].swtch = swtch; - extra_dump_files[this].glob = glob; - extra_dump_files[this].flags = flags; - extra_dump_files[this].num = num; + memset (&extra_dump_files[count], 0, sizeof (struct dump_file_info)); + extra_dump_files[count].suffix = suffix; + extra_dump_files[count].swtch = swtch; + extra_dump_files[count].glob = glob; + extra_dump_files[count].flags = flags; + extra_dump_files[count].num = num; - return this + TDI_end; + return count + TDI_end; } /* Return the dump_file_info for the given phase. */ struct dump_file_info * -get_dump_file_info (enum tree_dump_index phase) +get_dump_file_info (int phase) { if (phase < TDI_end) return &dump_files[phase]; - else if (phase - TDI_end >= extra_dump_files_in_use) + else if ((size_t) (phase - TDI_end) >= extra_dump_files_in_use) return NULL; else return extra_dump_files + (phase - TDI_end); @@ -877,7 +878,7 @@ get_dump_file_info (enum tree_dump_index phase) If the dump is not enabled, returns NULL. */ char * -get_dump_file_name (enum tree_dump_index phase) +get_dump_file_name (int phase) { char dump_id[10]; struct dump_file_info *dfi; @@ -914,7 +915,7 @@ get_dump_file_name (enum tree_dump_index phase) Multiple calls will reopen and append to the dump file. */ FILE * -dump_begin (enum tree_dump_index phase, int *flag_ptr) +dump_begin (int phase, int *flag_ptr) { char *name; struct dump_file_info *dfi; @@ -942,7 +943,7 @@ dump_begin (enum tree_dump_index phase, int *flag_ptr) TDI_tree_all, return nonzero if any dump is enabled. */ int -dump_enabled_p (enum tree_dump_index phase) +dump_enabled_p (int phase) { if (phase == TDI_tree_all) { @@ -965,7 +966,7 @@ dump_enabled_p (enum tree_dump_index phase) /* Returns nonzero if tree dump PHASE has been initialized. */ int -dump_initialized_p (enum tree_dump_index phase) +dump_initialized_p (int phase) { struct dump_file_info *dfi = get_dump_file_info (phase); return dfi->state > 0; @@ -974,7 +975,7 @@ dump_initialized_p (enum tree_dump_index phase) /* Returns the switch name of PHASE. */ const char * -dump_flag_name (enum tree_dump_index phase) +dump_flag_name (int phase) { struct dump_file_info *dfi = get_dump_file_info (phase); return dfi->swtch; @@ -984,7 +985,7 @@ dump_flag_name (enum tree_dump_index phase) dump_begin. */ void -dump_end (enum tree_dump_index phase ATTRIBUTE_UNUSED, FILE *stream) +dump_end (int phase ATTRIBUTE_UNUSED, FILE *stream) { fclose (stream); } @@ -1026,7 +1027,7 @@ dump_switch_p_1 (const char *arg, struct dump_file_info *dfi, bool doglob) const char *option_value; const char *ptr; int flags; - + if (doglob && !dfi->glob) return 0; @@ -1093,7 +1094,7 @@ dump_switch_p (const char *arg) for (i = 0; i < extra_dump_files_in_use; i++) any |= dump_switch_p_1 (arg, &extra_dump_files[i], false); - + if (!any) for (i = 0; i < extra_dump_files_in_use; i++) any |= dump_switch_p_1 (arg, &extra_dump_files[i], true); @@ -1105,7 +1106,7 @@ dump_switch_p (const char *arg) /* Dump FUNCTION_DECL FN as tree dump PHASE. */ void -dump_function (enum tree_dump_index phase, tree fn) +dump_function (int phase, tree fn) { FILE *stream; int flags; @@ -1123,5 +1124,3 @@ enable_rtl_dump_file (void) { return dump_enable_all (TDF_RTL | TDF_DETAILS | TDF_BLOCKS) > 0; } - -