aboutsummaryrefslogtreecommitdiff
path: root/gcc/opts.c
diff options
context:
space:
mode:
authorIain Sandoe <iains@gcc.gnu.org>2010-12-20 10:14:36 +0000
committerIain Sandoe <iains@gcc.gnu.org>2010-12-20 10:14:36 +0000
commit940c416046d1310a011e0a291eea3d9b5ccf6ca1 (patch)
treea0616382bc9ba34f274e198dc9979b7d1bb5e596 /gcc/opts.c
parent1f81953bf40331cc3822dd64fb0085cdcfe42e40 (diff)
downloadgcc-940c416046d1310a011e0a291eea3d9b5ccf6ca1.zip
gcc-940c416046d1310a011e0a291eea3d9b5ccf6ca1.tar.gz
gcc-940c416046d1310a011e0a291eea3d9b5ccf6ca1.tar.bz2
re PR middle-end/46916 (gcc.dg/torture/stackalign/non-local-goto-[1,2].c ICEs compiler due to r167727)
PR middle-end/46916 * opts.c (finish_options): Enable -freorder-functions when -freorder-blocks-and-partition is active. Co-Authored-By: Jan Hubicka <jh@suse.cz> From-SVN: r168084
Diffstat (limited to 'gcc/opts.c')
-rw-r--r--gcc/opts.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/gcc/opts.c b/gcc/opts.c
index cc4181e..12f79f9 100644
--- a/gcc/opts.c
+++ b/gcc/opts.c
@@ -755,6 +755,10 @@ finish_options (struct gcc_options *opts, struct gcc_options *opts_set,
opts->x_flag_reorder_blocks = 1;
}
+ if (opts->x_flag_reorder_blocks_and_partition
+ && !opts_set->x_flag_reorder_functions)
+ opts->x_flag_reorder_functions = 1;
+
/* Pipelining of outer loops is only possible when general pipelining
capabilities are requested. */
if (!opts->x_flag_sel_sched_pipelining)