diff options
author | Richard Henderson <rth@cygnus.com> | 1999-11-17 15:28:50 -0800 |
---|---|---|
committer | Richard Henderson <rth@gcc.gnu.org> | 1999-11-17 15:28:50 -0800 |
commit | bc6c134e71e7909c5af54b8cf4a0041f577b3533 (patch) | |
tree | 4a6c90dd46fbaba54739c5e5d4ea7054b5c33e75 /gcc/jump.c | |
parent | 00f8656751b2e5a5c6f902471b91874ed111d88e (diff) | |
download | gcc-bc6c134e71e7909c5af54b8cf4a0041f577b3533.zip gcc-bc6c134e71e7909c5af54b8cf4a0041f577b3533.tar.gz gcc-bc6c134e71e7909c5af54b8cf4a0041f577b3533.tar.bz2 |
jump.c (jump_optimize_1): Don't try to duplicate the loop exit test if optimizing for size.
* jump.c (jump_optimize_1): Don't try to duplicate the loop exit
test if optimizing for size.
From-SVN: r30559
Diffstat (limited to 'gcc/jump.c')
-rw-r--r-- | gcc/jump.c | 8 |
1 files changed, 6 insertions, 2 deletions
@@ -319,8 +319,12 @@ jump_optimize_1 (f, cross_jump, noop_moves, after_regscan, mark_labels_only) /* See if this is a NOTE_INSN_LOOP_BEG followed by an unconditional jump. Try to optimize by duplicating the loop exit test if so. This is only safe immediately after regscan, because it uses - the values of regno_first_uid and regno_last_uid. */ - if (after_regscan && GET_CODE (insn) == NOTE + the values of regno_first_uid and regno_last_uid. Don't do this + if optimizing for size. */ + + if (! optimize_size + && after_regscan + && GET_CODE (insn) == NOTE && NOTE_LINE_NUMBER (insn) == NOTE_INSN_LOOP_BEG && (temp1 = next_nonnote_insn (insn)) != 0 && simplejump_p (temp1)) |