summaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorhp <hp@138bc75d-0d04-0410-961f-82ee72b054a4>2007-09-25 02:01:24 +0000
committerhp <hp@138bc75d-0d04-0410-961f-82ee72b054a4>2007-09-25 02:01:24 +0000
commit5b83677d1ae4ab4cca9ca01c454e1eb1a28130a1 (patch)
treea273e3ec7879a8d32c2871169f4407d4f74f7ccf /gcc
parent768b23adce445a1a919677f9e99a5b3e15d12a05 (diff)
downloadgcc-5b83677d1ae4ab4cca9ca01c454e1eb1a28130a1.tar.gz
* config/mmix/mmix.md ("*cmpcc_folded"): In condition, gate
with REG_P tests before REGNO access. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128743 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc')
-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 d21eb1eaab1..b46d9373a41 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 44ab5667ac3..aa878af0f82 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"