This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug tree-optimization/22504] [4.1 Regression] benchmark - galgel fails at runtime with miscompare output
- From: "steven at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 26 Jul 2005 00:30:52 -0000
- Subject: [Bug tree-optimization/22504] [4.1 Regression] benchmark - galgel fails at runtime with miscompare output
- References: <20050715182623.22504.uttamp@us.ibm.com>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Additional Comments From steven at gcc dot gnu dot org 2005-07-26 00:30 -------
This is miscompiled:
SUBROUTINE foo (A, B)
IMPLICIT NONE
COMPLEX*16 A, Im1
REAL*8 B
Im1 = Dcmplx(0.D0, 1.D0)
A = A + Im1 * B
RETURN
END SUBROUTINE foo
t.f90.t35.ch:
;; Function foo (foo_)
foo (a, b)
{
complex8 im1;
complex8 D.808;
complex8 D.807;
complex8 D.806;
real8 D.805;
complex8 D.804;
<bb 0>:
D.804_3 = *a_2;
D.805_5 = *b_4;
D.806_6 = COMPLEX_EXPR <D.805_5, 0.0>;
D.807_7 = D.806_6 * __complex__ (0.0, 1.0e+0);
D.808_8 = D.804_3 + D.807_7;
*a_2 = D.808_8;
return;
}
t.f90.t37.cplxlower:
foo (a, b)
{
real8 CI.14;
real8 D.834;
real8 CI.13;
real8 CR.12;
real8 D.831;
real8 D.830;
complex8 im1;
complex8 D.808;
complex8 D.807;
complex8 D.806;
real8 D.805;
complex8 D.804;
<bb 0>:
D.830_15 = REALPART_EXPR <*a_2>;
D.831_16 = IMAGPART_EXPR <*a_2>;
D.804_3 = COMPLEX_EXPR <D.830_15, D.831_16>;
CR.12_12 = D.830_15;
CI.13_13 = D.831_16;
D.805_5 = *b_4;
D.806_6 = COMPLEX_EXPR <D.805_5, 0.0>;
D.807_7 = COMPLEX_EXPR <0.0, D.805_5>;
D.834_17 = CI.13_13 - D.805_5;
D.808_8 = COMPLEX_EXPR <CR.12_12, D.834_17>;
CI.14_14 = D.834_17;
REALPART_EXPR <*a_2> = CR.12_12;
IMAGPART_EXPR <*a_2> = CI.14_14;
return;
}
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=22504