[Bug optimization/13718] Miscompilation of comparison of complex values
steven at gcc dot gnu dot org
gcc-bugzilla@gcc.gnu.org
Sat Jan 17 15:00:00 GMT 2004
------- Additional Comments From steven at gcc dot gnu dot org 2004-01-17 15:00 -------
Here is another nice one:
---------------------------
extern void foo( _Complex float a, _Complex float b);
int main()
{
_Complex float v;
v = 0;
foo (v, v);
}
---------------------------
----> t.c.t23.sra:
Scalar replacements for main:
__real__ v -> SR.1
__imag__ v -> SR.2
;; Function main (main)
main ()
{
float SR.2;
float SR.1;
complex float v;
<bb 0>:
SR.1_2 = 0.0;
SR.2_3 = 0.0;
v = COMPLEX_EXPR <SR.1_2, SR.2_3>;
v = COMPLEX_EXPR <SR.1_2, SR.2_3>;
foo (v, v);
return;
}
----> t.c.t33.optimized
;; Function main (main)
main ()
{
complex float v;
<bb 0>:
v = __complex__ (0.0, 0.0);
v = __complex__ (0.0, 0.0);
foo (v, v);
return;
}
SRA for complex seems to just not work yet. RTH, you worked on
this, so I have assigned this bug to you.
--
What |Removed |Added
----------------------------------------------------------------------------
AssignedTo|unassigned at gcc dot gnu |rth at redhat dot com
|dot org |
Status|NEW |ASSIGNED
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=13718
More information about the Gcc-bugs
mailing list