diff options
author | Joseph Myers <joseph@codesourcery.com> | 2013-10-12 12:20:12 +0000 |
---|---|---|
committer | Joseph Myers <joseph@codesourcery.com> | 2013-10-12 12:20:12 +0000 |
commit | 8edc4a11cfbfd65a86696264f20e2d6d22edff54 (patch) | |
tree | d3bad864b92235578e55cca6e01a04b38cfe90dc /soft-fp/soft-fp.h | |
parent | 8399acaf7c5cb2252117ad1d65e468f688b84fc0 (diff) | |
download | glibc-8edc4a11cfbfd65a86696264f20e2d6d22edff54.zip glibc-8edc4a11cfbfd65a86696264f20e2d6d22edff54.tar.gz glibc-8edc4a11cfbfd65a86696264f20e2d6d22edff54.tar.bz2 |
soft-fp: add macro FP_NO_EXCEPTIONS.
Diffstat (limited to 'soft-fp/soft-fp.h')
-rw-r--r-- | soft-fp/soft-fp.h | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/soft-fp/soft-fp.h b/soft-fp/soft-fp.h index 8a22a11..d6c4b68 100644 --- a/soft-fp/soft-fp.h +++ b/soft-fp/soft-fp.h @@ -142,6 +142,30 @@ #define FP_TRAPPING_EXCEPTIONS 0 #endif +/* A file using soft-fp may define FP_NO_EXCEPTIONS before including + soft-fp.h to indicate that, although a macro used there could raise + exceptions, or do rounding and potentially thereby raise + exceptions, for some arguments, for the particular arguments used + in that file no exceptions or rounding can occur. Such a file + should not itself use macros relating to handling exceptions and + rounding modes; this is only for indirect uses (in particular, in + _FP_FROM_INT and the macros it calls). */ +#ifdef FP_NO_EXCEPTIONS + +#undef FP_SET_EXCEPTION +#define FP_SET_EXCEPTION(ex) do {} while (0) + +#undef FP_CUR_EXCEPTIONS +#define FP_CUR_EXCEPTIONS 0 + +#undef FP_TRAPPING_EXCEPTIONS +#define FP_TRAPPING_EXCEPTIONS 0 + +#undef FP_ROUNDMODE +#define FP_ROUNDMODE FP_RND_ZERO + +#endif + #define _FP_ROUND_NEAREST(wc, X) \ do { \ if ((_FP_FRAC_LOW_##wc(X) & 15) != _FP_WORK_ROUND) \ |