Sylvestre Ledru <sylvestre.ledru_at_[hidden]> writes:
> This code will set the precision to double:
>
> #include <fpu_control.h>
> fpu_control_t _cw;
> _FPU_GETCW(_cw);
> _cw = (_cw & ~_FPU_DOUBLE) | _FPU_EXTENDED;
> _FPU_SETCW(_cw);
>
> You should get the same result on 32 & 64 bits CPU then.
Quite off-topic, but as far as I remember from GNU Fortran days, if you
want to avoid `excess precision' on an x86 system, you generally need to
spill registers with (the equivalent of) GCC's -ffloat-store, and take
the performance hit. Most of the time you don't, of course, and the
Paranoia test, for instance, passes without -ffloat-store.
|