aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorH.J. Lu <hjl@gcc.gnu.org>2009-02-12 06:04:20 -0800
committerH.J. Lu <hjl@gcc.gnu.org>2009-02-12 06:04:20 -0800
commit12019aec3dfb86d12943404faf733b7775c13123 (patch)
tree5f402a301bbb89b58eb8d42b60a022436a7066f1 /gcc
parent28c11eb39b17d2c0a9eca41e69af9777ee8cdd60 (diff)
downloadgcc-12019aec3dfb86d12943404faf733b7775c13123.zip
gcc-12019aec3dfb86d12943404faf733b7775c13123.tar.gz
gcc-12019aec3dfb86d12943404faf733b7775c13123.tar.bz2
re PR target/39152 (Revision 144098 breaks 416.gamess in SPEC CPU 2006)
gcc/ 2009-02-12 Paolo Bonzini <bonzini@gnu.org> PR target/39152 * config/i386/i386.md: Replace simplify_replace_rtx with replace_rtx in the new peephole2. gcc/testsuite/ 2009-02-12 H.J. Lu <hongjiu.lu@intel.com> PR target/39152 * gfortran.dg/pr39152.f: New. From-SVN: r144126
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/config/i386/i386.md2
-rw-r--r--gcc/testsuite/ChangeLog5
-rw-r--r--gcc/testsuite/gfortran.dg/pr39152.f22
4 files changed, 34 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index d0f7127..6efef4c 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2009-02-12 Paolo Bonzini <bonzini@gnu.org>
+
+ PR target/39152
+ * config/i386/i386.md: Replace simplify_replace_rtx with
+ replace_rtx in the new peephole2.
+
2009-02-12 Nathan Sidwell <nathan@codesourcery.com>
* doc/invoke.texi (Optimize Options): Stop claiming inlining and
diff --git a/gcc/config/i386/i386.md b/gcc/config/i386/i386.md
index 1516237..f4aaed6 100644
--- a/gcc/config/i386/i386.md
+++ b/gcc/config/i386/i386.md
@@ -20741,7 +20741,7 @@
(parallel [(set (match_dup 0)
(match_op_dup 3 [(match_dup 0) (match_dup 1)]))
(clobber (reg:CC FLAGS_REG))])]
- "operands[4] = simplify_replace_rtx (operands[2], operands[0], operands[1]);")
+ "operands[4] = replace_rtx (operands[2], operands[0], operands[1]);")
(define_peephole2
[(set (match_operand 0 "register_operand" "")
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index b140c2f..3fb1fc5 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,8 @@
+2009-02-12 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR target/39152
+ * gfortran.dg/pr39152.f: New.
+
2009-02-11 Jason Merrill <jason@redhat.com>
PR c++/39153
diff --git a/gcc/testsuite/gfortran.dg/pr39152.f b/gcc/testsuite/gfortran.dg/pr39152.f
new file mode 100644
index 0000000..477200f
--- /dev/null
+++ b/gcc/testsuite/gfortran.dg/pr39152.f
@@ -0,0 +1,22 @@
+! { dg-do compile }
+! { dg-options "-O2" }
+ SUBROUTINE CASHES(E,HESS,FC,FA,NORB,NPR)
+ IMPLICIT DOUBLE PRECISION (A-H,O-Z)
+ PARAMETER (MXAO=2047)
+ DIMENSION HESS(NPR),E(NORB,*),FC(*),FA(*)
+ COMMON /IJPAIR/ IA(MXAO)
+ COMMON /MCPAR / NFZC,NCORBS,NCI,NORBS,NORBX,NUM
+ K=0
+ DO 200 IU = 1,NORB - NCORBS
+ I = IU + NCORBS
+ II=IA(I)+I
+ DO 100 J = 1,NCORBS
+ IF (I.GT.NORBS) THEN
+ HESS(K)=FC(II) + FA(II) - E(J,J)
+ ELSE
+ HESS(K)=FA(II) - E(I,I) - E(J,J) + FC(JJ) + FA(JJ)
+ END IF
+ 100 CONTINUE
+ 200 CONTINUE
+ RETURN
+ END