diff options
author | kan <kan@FreeBSD.org> | 2003-11-07 03:27:32 +0000 |
---|---|---|
committer | kan <kan@FreeBSD.org> | 2003-11-07 03:27:32 +0000 |
commit | aba667dc7484a10355d2ebaee76e50d6535a64af (patch) | |
tree | 180de18a45adf652a2295650ee9429f4f82c92e6 /contrib/gcc | |
parent | 06a580baf72956f54110bc727f164f0f00fd6323 (diff) | |
download | FreeBSD-src-aba667dc7484a10355d2ebaee76e50d6535a64af.zip FreeBSD-src-aba667dc7484a10355d2ebaee76e50d6535a64af.tar.gz |
Merge revs 1.2 (-fformat-extensions), 1.7 (FORCE_OPTIMIZATION_DOWNGRADE knob),
1.14 (-O/-O1 optimize alignment for time, not size).
Back out r1.22 which used to enable warnings in system headers by
default.
Diffstat (limited to 'contrib/gcc')
-rw-r--r-- | contrib/gcc/toplev.c | 22 |
1 files changed, 20 insertions, 2 deletions
diff --git a/contrib/gcc/toplev.c b/contrib/gcc/toplev.c index 60a6bca..5947f6f 100644 --- a/contrib/gcc/toplev.c +++ b/contrib/gcc/toplev.c @@ -1410,7 +1410,7 @@ int inhibit_warnings = 0; /* Don't suppress warnings from system headers. -Wsystem-headers. */ -int warn_system_headers = 1; +int warn_system_headers = 0; /* Print various extra warnings. -W. */ @@ -2823,7 +2823,8 @@ rest_of_compilation (decl) tem = cse_main (insns, max_reg_num (), 0, rtl_dump_file); if (tem) rebuild_jump_labels (insns); - purge_all_dead_edges (0); + if (purge_all_dead_edges (0)) + delete_unreachable_blocks (); delete_trivially_dead_insns (insns, max_reg_num ()); @@ -3468,6 +3469,23 @@ rest_of_compilation (decl) #endif #ifdef STACK_REGS +#if defined (HAVE_ATTR_length) + /* If flow2 creates new instructions which need splitting + and scheduling after reload is not done, they might not be + splitten until final which doesn't allow splitting + if HAVE_ATTR_length. */ +#ifdef INSN_SCHEDULING + if (optimize && !flag_schedule_insns_after_reload) +#else + if (optimize) +#endif + { + timevar_push (TV_SHORTEN_BRANCH); + split_all_insns (1); + timevar_pop (TV_SHORTEN_BRANCH); + } +#endif + timevar_push (TV_REG_STACK); open_dump_file (DFI_stack, decl); |