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

From: Pete Wyckoff <pw_at_osc.edu>
Date: 2000-10-10 03:03:58
Dan.Pop@cern.ch said:
> On Mon, 9 Oct 2000, Pete Wyckoff wrote:
> > This little code snippet causes floating-point underflow during the
> > multiplication.
> Try this code and see if it helps.  You don't have to explicitly call
> the function, it will be automatically executed before main().

Excellent.  I can manage to get this linked in with the fortran
application from whence the problem sprung, which is what I really
wanted.

Gcc and glibc seem only to care about st0.  The "minimal" fix,
which relies on glibc and exercises its fe*env functions, is:

    #include <fenv.h>
    #include <asm/fpu.h>

    fenv_t envp;
    fegetenv(&envp);
    envp |= FPSR_S0(FPSF_FTZ);
    fesetenv(&envp);

Helped me to understand what's going on.

Thanks,
		-- Pete
Received on Mon Oct 09 09:04:06 2000

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