aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHans-Peter Nilsson <hp@bitrange.com>2007-09-25 02:01:24 +0000
committerHans-Peter Nilsson <hp@gcc.gnu.org>2007-09-25 02:01:24 +0000
commitab3e1ef66a7e5d765ffb9730c0894487211e0f82 (patch)
treea273e3ec7879a8d32c2871169f4407d4f74f7ccf
parent8d2fd9c9516dd878fb2809eca55e3bd35807f173 (diff)
downloadgcc-ab3e1ef66a7e5d765ffb9730c0894487211e0f82.zip
gcc-ab3e1ef66a7e5d765ffb9730c0894487211e0f82.tar.gz
gcc-ab3e1ef66a7e5d765ffb9730c0894487211e0f82.tar.bz2
mmix.md ("*cmpcc_folded"): In condition, gate with REG_P tests before REGNO access.
* config/mmix/mmix.md ("*cmpcc_folded"): In condition, gate with REG_P tests before REGNO access. From-SVN: r128743
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/config/mmix/mmix.md3
2 files changed, 7 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index d21eb1e..b46d937 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2007-09-25 Hans-Peter Nilsson <hp@bitrange.com>
+
+ * config/mmix/mmix.md ("*cmpcc_folded"): In condition, gate
+ with REG_P tests before REGNO access.
+
2007-09-24 DJ Delorie <dj@redhat.com>
PR target/31482
diff --git a/gcc/config/mmix/mmix.md b/gcc/config/mmix/mmix.md
index 44ab566..aa878af 100644
--- a/gcc/config/mmix/mmix.md
+++ b/gcc/config/mmix/mmix.md
@@ -481,7 +481,8 @@ DIVU %1,%1,%2\;GET %0,:rR\;NEGU %2,0,%0\;CSNN %0,$255,%2")
(const_int 0)))]
;; FIXME: Can we test equivalence any other way?
;; FIXME: Can we fold any other way?
- "REGNO (operands[1]) == REGNO (operands[0])"
+ "REG_P (operands[0]) && REG_P (operands[1])
+ && REGNO (operands[1]) == REGNO (operands[0])"
"%% folded: cmp %0,%1,0")
(define_insn "*cmpcc"