diff options
author | das <das@FreeBSD.org> | 2011-10-21 06:41:46 +0000 |
---|---|---|
committer | das <das@FreeBSD.org> | 2011-10-21 06:41:46 +0000 |
commit | 28e8dea25892d12660b01d59590e5a8e70ae3880 (patch) | |
tree | 4864c165434b2f4d41bd1dcd9710d5f86fe98dcc /sys/powerpc/include | |
parent | 9373f7b9c4f30f6577adcbbba17be55d53f114b6 (diff) | |
download | FreeBSD-src-28e8dea25892d12660b01d59590e5a8e70ae3880.zip FreeBSD-src-28e8dea25892d12660b01d59590e5a8e70ae3880.tar.gz |
People porting FreeBSD to new architectures ought not have to
implement a deprecated FPU control interface in addition to the
standard one. To make this clearer, further deprecate ieeefp.h
by not declaring the function prototypes except on architectures
that implement them already.
Currently i386 and amd64 implement the ieeefp.h interface for
compatibility, and for fp[gs]etprec(), which doesn't exist on
most other hardware. Powerpc, sparc64, and ia64 partially implement
it and probably shouldn't, and other architectures don't implement it
at all.
Diffstat (limited to 'sys/powerpc/include')
-rw-r--r-- | sys/powerpc/include/ieeefp.h | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/sys/powerpc/include/ieeefp.h b/sys/powerpc/include/ieeefp.h index 820fffe..58a4fe8 100644 --- a/sys/powerpc/include/ieeefp.h +++ b/sys/powerpc/include/ieeefp.h @@ -8,6 +8,8 @@ #ifndef _MACHINE_IEEEFP_H_ #define _MACHINE_IEEEFP_H_ +/* Deprecated historical FPU control interface */ + typedef int fp_except_t; #define FP_X_IMP 0x01 /* imprecise (loss of precision) */ #define FP_X_DZ 0x02 /* divide-by-zero exception */ @@ -22,4 +24,12 @@ typedef enum { FP_RM=3 /* round toward negative infinity */ } fp_rnd_t; +__BEGIN_DECLS +extern fp_rnd_t fpgetround(void); +extern fp_rnd_t fpsetround(fp_rnd_t); +extern fp_except_t fpgetmask(void); +extern fp_except_t fpsetmask(fp_except_t); +extern fp_except_t fpgetsticky(void); +__END_DECLS + #endif /* _MACHINE_IEEEFP_H_ */ |