This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug optimization/13718] Miscompilation of comparison of complex values
- 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: 17 Jan 2004 15:00:44 -0000
- Subject: [Bug optimization/13718] Miscompilation of comparison of complex values
- References: <20040117140859.13718.pbrook@gcc.gnu.org>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- 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