aboutsummaryrefslogtreecommitdiff
path: root/gcc/cse.c
diff options
context:
space:
mode:
authorJohn Wehle <john@feith.com>2000-04-12 05:03:32 +0000
committerJohn Wehle <wehle@gcc.gnu.org>2000-04-12 05:03:32 +0000
commite8019e47f6e814a44026e11fc718688a81217a3f (patch)
tree3385f42b17aa4c2f060d8392479e004d13944c45 /gcc/cse.c
parent8e3f90945d7686914c31a21fcd6cf7b3a5901753 (diff)
downloadgcc-e8019e47f6e814a44026e11fc718688a81217a3f.zip
gcc-e8019e47f6e814a44026e11fc718688a81217a3f.tar.gz
gcc-e8019e47f6e814a44026e11fc718688a81217a3f.tar.bz2
cse.c (delete_trivially_dead_insns): Also delete insns that copy a register to itself where the destination is a...
* cse.c (delete_trivially_dead_insns): Also delete insns that copy a register to itself where the destination is a strict_low_part. From-SVN: r33090
Diffstat (limited to 'gcc/cse.c')
-rw-r--r--gcc/cse.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/gcc/cse.c b/gcc/cse.c
index aa26539..967c6f9 100644
--- a/gcc/cse.c
+++ b/gcc/cse.c
@@ -7269,6 +7269,10 @@ delete_trivially_dead_insns (insns, nreg)
&& rtx_equal_p (SET_DEST (PATTERN (insn)),
SET_SRC (PATTERN (insn))))
;
+ else if (GET_CODE (SET_DEST (PATTERN (insn))) == STRICT_LOW_PART
+ && rtx_equal_p (XEXP (SET_DEST (PATTERN (insn)), 0),
+ SET_SRC (PATTERN (insn))))
+ ;
#ifdef HAVE_cc0
else if (GET_CODE (SET_DEST (PATTERN (insn))) == CC0