------- Additional Comments From pinskia at gcc dot gnu dot org 2005-01-21
04:15 -------
Hmm (sorry about that), never mind about not being a self contained or excess
precision problem
because it can be reproduced on 32bit powerpc also. The problem comes from
.16.life so this is not a
fortran related problem.
This can also reproduced with the following C code (but only at -O1 and above)
(the fortran example
can be reproduce with -O0):
_Complex float csqrtf(_Complex float);
float claic1 (float *tmp)
{
_Complex float D435;
_Complex float D433;
__imag D433 = 0.0;
__real D433 = 5.31108379364013671875e+0;
D435 = csqrtf (D433);
*tmp = __real D435;
}
And that is at least a regression from 3.3.2.
On x86, it also fails with 3.4.0.
--
What |Removed |Added
----------------------------------------------------------------------------
Severity|normal |critical
Component|target |middle-end
GCC build triplet|i686-pc-cygwin |
GCC host triplet|i686-pc-cygwin |
GCC target triplet|i686-pc-cygwin |i686-pc-cygwin, powerpc-
| |darwin
Keywords| |wrong-code
Known to fail| |4.0.0
Known to work| |3.3.2
Priority|P2 |P1
Summary|LAPACK routine claic1.f bug |[3.4/4.0 Regression] LAPACK
| |routine claic1.f bug
Target Milestone|--- |3.4.4
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19551