[Bug middle-end/31115] [4.3 regression] libstdc++ 22_locale/num_get/get/char/2.cc 27_io/basic_ostream/inserters_arithmetic/char/6.cc
hp at gcc dot gnu dot org
gcc-bugzilla@gcc.gnu.org
Sat Mar 10 22:05:00 GMT 2007
------- Comment #8 from hp at gcc dot gnu dot org 2007-03-10 22:04 -------
Created an attachment (id=13186)
--> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=13186&action=view)
Preprocessed code
cc1 -fpreprocessed strtod.i -melf -quiet -dumpbase strtod.c -auxbase-strip
nrblib_a-strtod.o -g -O2 -O2 -O2 -version -fno-builtin -fno-reorder-blocks
-fno-inline -fdump-tree-vrp -o strtod.s
It seems that in this code:
...
e1 = -e1;
if ( (i = e1 & 15) !=0)
((U*)&rv)->d /= __mprec_tens[i];
if (e1 >>= 4) {
if (e1 >= 1 << 5)
goto undfl;
if (e1 & 0x10)
scale = 2*53;
...
that the if (e1 >= 1 << 5) goto undfl; is optimized away. Not sure though.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31115
More information about the Gcc-bugs
mailing list