This is the mail archive of the
mailing list for the GCC project.
Re: 11706 vs ([lno] Canonical iv creation)
Gabriel Dos Reis wrote:
Paolo Carlini <email@example.com> writes:
| Hi again,
| finally, I have been able to actually test the the new pass on the code
| we care about. The current assembler, is simply *astonishing*.
Fixing the problem at the _right place_ helps emitting good
executable in much broader situations, instead of damaging random
places in the library.
Apart from "damaging" I agree with this.
I bet there are other places where this improvement will be far
noticeable. I conjecture that very soon, we will not be afraid of
using right abstractions through the library instead of trying to
hide defects in the compiler.
I'm curious to how the standard actually defines std::pow()s accuracy
here though. I know we're not optimizing ::pow(x, 4) to the above
without -ffast-math because of accuracy concerns. So how does
std::pow() relate to ::pow in terms of accuracy guarrantees?
After all, if the required parts of lno branch are going into 3.5 I'm
happy there. But what about 3.3 and particular 3.4?