Re: [Linux-ia64] avoiding float underflow software assist

From: Dan Pop <Dan.Pop_at_cern.ch>
Date: 2000-10-10 04:21:01
On Mon, 9 Oct 2000, David Mosberger wrote:

> >>>>> On Mon, 9 Oct 2000 17:37:35 +0200 (MET DST), Dan Pop <Dan.Pop@cern.ch> said:
> 
>   Dan> #include <asm/fpu.h>
> 
> Please don't do this.  Applications must not include Linux kernel
> header files.

I know.  I wrote it as a quick and dirty hack for Sverre, because no
other option was available at the time.

> The correct way of doing this is to do:
> 
> 	#include <fenv.h>
> 
> 	fesetenv (FE_NONIEEE_ENV);

I know that, too, but, between the above hack that worked and the
correct solution that was not (yet) implemented, the choice was
obvious :-)

> or to compile with -ffast-math.  For the former to work, you need
> glibc-2.2.  For the latter, you need both glibc-2.2 and some mods to
> the compiler (which probably don't exist yet).

In other words, neither of the correct solutions is available with the
current distributions :-)

> If you want to avoid the those complications, you can turn off
> flush-to-zero mode with the following hack:
> 
>         asm volatile ("mov ar.fpsr=%0" :: "r"(0x9804c0270037f));
> 
> It's only a hack, but it should do for now.

As a hack, it's even worse than mine :-)

Dan
Received on Mon Oct 09 10:21:23 2000

This archive was generated by hypermail 2.1.8 : 2005-08-02 09:20:00 EST