diff options
author | Richard Kenner <kenner@gcc.gnu.org> | 1995-10-20 19:14:10 -0400 |
---|---|---|
committer | Richard Kenner <kenner@gcc.gnu.org> | 1995-10-20 19:14:10 -0400 |
commit | d02089a5f24db5cea75174304a367b8b5555ddb8 (patch) | |
tree | 258edc90ec9a796278cb454e3a8cad77bc2e787c | |
parent | 089a0f3971d78252014ade3acbb9f1087b6d8740 (diff) | |
download | gcc-d02089a5f24db5cea75174304a367b8b5555ddb8.zip gcc-d02089a5f24db5cea75174304a367b8b5555ddb8.tar.gz gcc-d02089a5f24db5cea75174304a367b8b5555ddb8.tar.bz2 |
(distribute_notes): Delete instructions without side effect that set a
subreg of an unused register.
From-SVN: r10491
-rw-r--r-- | gcc/combine.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/gcc/combine.c b/gcc/combine.c index cd7dc12..3cdfb32 100644 --- a/gcc/combine.c +++ b/gcc/combine.c @@ -10745,7 +10745,10 @@ distribute_notes (notes, from_insn, i3, i2, elim_i2, elim_i1) modified the register. */ if (set != 0 && ! side_effects_p (SET_SRC (set)) - && rtx_equal_p (XEXP (note, 0), SET_DEST (set))) + && (rtx_equal_p (XEXP (note, 0), SET_DEST (set)) + || (GET_CODE (SET_DEST (set)) == SUBREG + && rtx_equal_p (XEXP (note, 0), + XEXP (SET_DEST (set), 0))))) { /* Move the notes and links of TEM elsewhere. This might delete other dead insns recursively. |