diff options
Diffstat (limited to 'gcc/toplev.c')
-rw-r--r-- | gcc/toplev.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/gcc/toplev.c b/gcc/toplev.c index 8e7da03c..0250c97 100644 --- a/gcc/toplev.c +++ b/gcc/toplev.c @@ -1530,9 +1530,15 @@ process_options (void) if (flag_unroll_all_loops) flag_unroll_loops = 1; - /* The loop unrolling code assumes that cse will be run after loop. */ + /* The loop unrolling code assumes that cse will be run after loop. + Also enable -fweb and -frename-registers that help scheduling + the unrolled loop. */ if (flag_unroll_loops || flag_peel_loops) - flag_rerun_cse_after_loop = 1; + { + flag_rerun_cse_after_loop = 1; + flag_web = 1; + flag_rename_registers = 1; + } /* If explicitly asked to run new loop optimizer, switch off the old one. */ |