mirror of
git://gcc.gnu.org/git/gcc.git
synced 2024-12-19 00:19:44 +08:00
* gcse.c (gcse_emit_move_after): Use gen_move_insn to produce the move.
From-SVN: r55087
This commit is contained in:
parent
f1b1186f6c
commit
6bdb8dd695
@ -1,3 +1,7 @@
|
||||
2002-06-28 Jan Hubicka <jh@suse.cz>
|
||||
|
||||
* gcse.c (gcse_emit_move_after): Use gen_move_insn to produce the move.
|
||||
|
||||
2002-06-28 Stephen Clarke <stephen.clarke@superh.com>
|
||||
|
||||
* combine.c (combine_simplify_rtx): Pass the mode of the
|
||||
|
12
gcc/gcse.c
12
gcc/gcse.c
@ -5144,21 +5144,19 @@ gcse_emit_move_after (src, dest, insn)
|
||||
rtx src, dest, insn;
|
||||
{
|
||||
rtx new;
|
||||
rtx set = single_set (insn);
|
||||
rtx set = single_set (insn), set2;
|
||||
rtx note;
|
||||
rtx eqv;
|
||||
|
||||
/* This should never fail since we're creating a reg->reg copy
|
||||
we've verified to be valid. */
|
||||
|
||||
new = emit_insn_after (gen_rtx_SET (VOIDmode, dest, src), insn);
|
||||
|
||||
/* want_to_gcse_p verifies that this move will be valid. Still this call
|
||||
is mandatory as it may create clobbers required by the pattern. */
|
||||
if (insn_invalid_p (insn))
|
||||
abort ();
|
||||
new = emit_insn_after (gen_move_insn (dest, src), insn);
|
||||
|
||||
/* Note the equivalence for local CSE pass. */
|
||||
set2 = single_set (new);
|
||||
if (!set2 || !rtx_equal_p (SET_DEST (set2), dest))
|
||||
return new;
|
||||
if ((note = find_reg_equal_equiv_note (insn)))
|
||||
eqv = XEXP (note, 0);
|
||||
else
|
||||
|
Loading…
Reference in New Issue
Block a user