diff options
author | Richard Henderson <rth@gcc.gnu.org> | 2002-05-03 13:34:31 -0700 |
---|---|---|
committer | Richard Henderson <rth@gcc.gnu.org> | 2002-05-03 13:34:31 -0700 |
commit | b548220837d0386f470b48d1318b7c005d38aa3c (patch) | |
tree | 892b45fd16cf2c42639551c3f8013562fae34414 /gcc/ifcvt.c | |
parent | ba2e86d69defc0b4d0e63cd2c202110f194b8720 (diff) | |
download | gcc-b548220837d0386f470b48d1318b7c005d38aa3c.zip gcc-b548220837d0386f470b48d1318b7c005d38aa3c.tar.gz gcc-b548220837d0386f470b48d1318b7c005d38aa3c.tar.bz2 |
ifcvt.c (noce_try_store_flag, [...]): Insert new code before JUMP, not EARLIEST.
* ifcvt.c (noce_try_store_flag, noce_try_store_flag_constants,
noce_try_store_flag_inc, noce_try_store_flag_mask, noce_try_cmove,
noce_try_cmove_arith, noce_try_minmax, noce_try_abs): Insert new
code before JUMP, not EARLIEST.
From-SVN: r53123
Diffstat (limited to 'gcc/ifcvt.c')
-rw-r--r-- | gcc/ifcvt.c | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/gcc/ifcvt.c b/gcc/ifcvt.c index f46a6cf..e8c2b5f 100644 --- a/gcc/ifcvt.c +++ b/gcc/ifcvt.c @@ -620,7 +620,7 @@ noce_try_store_flag (if_info) seq = get_insns (); end_sequence (); - emit_insns_before (seq, if_info->cond_earliest); + emit_insns_before (seq, if_info->jump); return TRUE; } @@ -755,7 +755,7 @@ noce_try_store_flag_constants (if_info) if (seq_contains_jump (seq)) return FALSE; - emit_insns_before (seq, if_info->cond_earliest); + emit_insns_before (seq, if_info->jump); return TRUE; } @@ -815,7 +815,7 @@ noce_try_store_flag_inc (if_info) if (seq_contains_jump (seq)) return FALSE; - emit_insns_before (seq, if_info->cond_earliest); + emit_insns_before (seq, if_info->jump); return TRUE; } @@ -867,7 +867,7 @@ noce_try_store_flag_mask (if_info) if (seq_contains_jump (seq)) return FALSE; - emit_insns_before (seq, if_info->cond_earliest); + emit_insns_before (seq, if_info->jump); return TRUE; } @@ -962,7 +962,7 @@ noce_try_cmove (if_info) seq = get_insns (); end_sequence (); - emit_insns_before (seq, if_info->cond_earliest); + emit_insns_before (seq, if_info->jump); return TRUE; } else @@ -1124,7 +1124,7 @@ noce_try_cmove_arith (if_info) tmp = get_insns (); end_sequence (); - emit_insns_before (tmp, if_info->cond_earliest); + emit_insns_before (tmp, if_info->jump); return TRUE; end_seq_and_fail: @@ -1376,7 +1376,7 @@ noce_try_minmax (if_info) if (seq_contains_jump (seq)) return FALSE; - emit_insns_before (seq, earliest); + emit_insns_before (seq, if_info->jump); if_info->cond = cond; if_info->cond_earliest = earliest; @@ -1494,7 +1494,7 @@ noce_try_abs (if_info) if (seq_contains_jump (seq)) return FALSE; - emit_insns_before (seq, earliest); + emit_insns_before (seq, if_info->jump); if_info->cond = cond; if_info->cond_earliest = earliest; @@ -1753,7 +1753,7 @@ noce_process_if_block (test_bb, then_bb, else_bb, join_bb) if (insn_b && else_bb) delete_insn (insn_b); - /* The new insns will have been inserted before cond_earliest. We should + /* The new insns will have been inserted just before the jump. We should be able to remove the jump with impunity, but the condition itself may have been modified by gcse to be shared across basic blocks. */ delete_insn (jump); |