Your message dated Wed, 22 May 2013 14:23:23 +0200
with message-id <519cb8bb.8030...@debian.org>
and subject line Re: Bug#706207: gcc-4.6, gcc-4.7: invalid optimization when
doing double -> int math and conversion (on big endian archs(?))
has caused the Debian Bug report #706207,
regarding gcc-4.6, gcc-4.7: invalid optimization when doing double -> int math
and conversion (on big endian archs(?))
to be marked as done.
This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.
(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact ow...@bugs.debian.org
immediately.)
--
706207: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=706207
Debian Bug Tracking System
Contact ow...@bugs.debian.org with problems
--- Begin Message ---
Package: gcc-4.6,gcc-4.7
Version: 4.6.3-15
Severity: normal
Dear Maintainer,
this bug manifest itself on ia64, powerpc and s390x where gcc-4.6 is
used and the optmized code (-O2) fails to produce correct math
results.
This code from libgd2:src/gd.c:clip_1d:
*y1 -= m * (*x1 - mindim);
where
m = (double) -0.050000
*x1 = -200
mindim = 0
*y1 = 15
results in *y1 = 4, which is incorrect value, since it should be 5.
Most simple workaround, which allows gcc to produce correct value:
*y1 -= (int)(m * (*x1 - mindim));
Assigning to some other variable also works ok:
int t;
t = m * (*x1 - mindim);
*y1 -= t;
Compiling with -O0 also produces correct value.
gcc-4.7 is unfortunatelly also affected.
I just hope we don't compile the nuclear reactor controls with gcc :)
O.
-- System Information:
Debian Release: 7.0
APT prefers unstable
APT policy: (500, 'unstable')
Architecture: ia64
Kernel: Linux 2.6.32-5-mckinley (SMP w/2 CPU cores)
Locale: LANG=C, LC_CTYPE=C (charmap=ANSI_X3.4-1968)
Shell: /bin/sh linked to /bin/dash
Versions of packages gcc-4.6 depends on:
ii binutils 2.22-8
ii cpp-4.6 4.6.3-15
ii gcc-4.6-base 4.6.3-15
ii libc6.1 2.13-38
ii libgcc1 1:4.7.2-5
ii libgmp10 2:5.0.5+dfsg-2
ii libgomp1 4.7.2-5
ii libmpc2 0.9-4
ii libmpfr4 3.1.1-1
ii libquadmath0 4.7.2-5
ii libunwind7-dev 0.99-0.3
ii zlib1g 1:1.2.7.dfsg-13
Versions of packages gcc-4.6 recommends:
ii libc6.1-dev 2.13-38
Versions of packages gcc-4.6 suggests:
pn gcc-4.6-doc <none>
pn gcc-4.6-locales <none>
pn libgcc1-dbg <none>
pn libgomp1-dbg <none>
pn libmudflap0-4.6-dev <none>
pn libmudflap0-dbg <none>
pn libquadmath0-dbg <none>
-- no debconf information
--- End Message ---
--- Begin Message ---
now closing
--- End Message ---