NetBSD-Bugs archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: lib/44057
The following reply was made to PR lib/44057; it has been noted by GNATS.
From: Taylor R Campbell <campbell+netbsd%mumble.net@localhost>
To: gnats-bugs%NetBSD.org@localhost
Cc:
Subject: Re: lib/44057
Date: Fri, 15 Apr 2011 17:04:10 +0000
The problem is that GCC has distributed x*(one + x) = x + (x*x) in the
definition of tanh in src/lib/libm/src/s_tanh.c, as revealed by
disassembling libm.so.
I suspect that GCC fixed this in SVN revision 152443 by adding the
following fragment to the top of distribute_and_simplify_rtx in
gcc/combine.c:
if (FLOAT_MODE_P (GET_MODE (x))
&& ! flag_unsafe_math_optimizations)
return NULL_RTX;
I don't have the resources to test this hypothesis right now, though.
I imagine that if this fixes the problem, it is safe to back-port to
whatever version of GCC we are using; the surrounding code looks
pretty similar.
Home |
Main Index |
Thread Index |
Old Index