On Sun, 21 Feb 2010, Geert Bosch wrote: > On Feb 21, 2010, at 17:42, Erik Trulsson wrote: > > Newer compilers usually have better generic optimizations that are not > > CPU-dependent. Newer compilers also typically have improved support > > for new language-features (and new languages for that matter.) > > This is exactly where CPU dependence comes into play. I'd like > for example take advantage of IEEE floating point semantics in > our Ada compiler. Fifteen years ago, we had to face the fact that
It's up to the Ada maintainers what is or is not considered floating-point behavior expected to be stable between versions, and so whether making Ada use -mfpmath=sse when SSE2 is available would be appropriate. > So, I'd like to be able to put all this behind me, and only > have to think about fully IEEE compliant systems. Similarly, > there is no way to fully implement C99 Annex F without using > SSE2. I know some people have claimed (e.g. glibc bug 6981) that you can't conform to Annex F when you have excess precision, but this does not appear to be the view of WG14. A proper implementation of Annex F is also likely to result in generating slower floating-point code if we keep the present default of -ftrapping-math being on by default (I think it would end up inhibiting optimizations as much as -frounding-math to ensure exactly the right set of exceptions is raised). -- Joseph S. Myers jos...@codesourcery.com