diff options
author | Jeffrey A Law <law@cygnus.com> | 1997-08-28 03:35:22 +0000 |
---|---|---|
committer | Jeff Law <law@gcc.gnu.org> | 1997-08-27 21:35:22 -0600 |
commit | e5eb27e51fe9f28375a7ae5a8a9ed5719968b482 (patch) | |
tree | 480e183f65e682922ade7ab74d0bbc0d16008908 /gcc/loop.c | |
parent | 73624c403d6bc189395af0c8b7c47c0262d38ca0 (diff) | |
download | gcc-e5eb27e51fe9f28375a7ae5a8a9ed5719968b482.zip gcc-e5eb27e51fe9f28375a7ae5a8a9ed5719968b482.tar.gz gcc-e5eb27e51fe9f28375a7ae5a8a9ed5719968b482.tar.bz2 |
flags.h (flag_move_all_movables): Declare.
* flags.h (flag_move_all_movables): Declare.
(flag_reduce_all_givs): Likewise.
* loop.c (move_movables): Handle flag_move_all_movables.
(strength_reduce): Handle flag_reduce_all_givs.
* toplev.c (flag_move_all_movables): Define.
(flag_reduce_all_givs): Likewise.
(f_options): Add -fmove-all-movables and -freduce-all-givs.
* invoke.texi: Document new options, including alias stuff that
wasn't included last time.
Two of the "Tooning" options :-)
From-SVN: r14987
Diffstat (limited to 'gcc/loop.c')
-rw-r--r-- | gcc/loop.c | 5 |
1 files changed, 3 insertions, 2 deletions
@@ -1722,6 +1722,7 @@ move_movables (movables, threshold, insn_count, loop_start, end, nregs) extra cost because something else was already moved. */ if (already_moved[regno] + || flag_move_all_movables || (threshold * savings * m->lifetime) >= insn_count || (m->forces && m->forces->done && n_times_used[m->forces->regno] == 1)) @@ -3991,8 +3992,8 @@ strength_reduce (scan_start, end, loop_top, insn_count, of such giv's whether or not we know they are used after the loop exit. */ - if (v->lifetime * threshold * benefit < insn_count - && ! bl->reversed) + if ( ! flag_reduce_all_givs && v->lifetime * threshold * benefit < insn_count + && ! bl->reversed ) { if (loop_dump_stream) fprintf (loop_dump_stream, |