diff options
Diffstat (limited to 'lib/msun/src/math_private.h')
-rw-r--r-- | lib/msun/src/math_private.h | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/lib/msun/src/math_private.h b/lib/msun/src/math_private.h index afaf201..7487902 100644 --- a/lib/msun/src/math_private.h +++ b/lib/msun/src/math_private.h @@ -306,9 +306,21 @@ do { \ fpsetprec(__oprec); \ RETURNF(__retval); \ } while (0) +#define ENTERV() \ + fp_prec_t __oprec; \ + \ + if ((__oprec = fpgetprec()) != FP_PE) \ + fpsetprec(FP_PE) +#define RETURNV() do { \ + if (__oprec != FP_PE) \ + fpsetprec(__oprec); \ + return; \ +} while (0) #else -#define ENTERI(x) +#define ENTERI() #define RETURNI(x) RETURNF(x) +#define ENTERV() +#define RETURNV() return #endif /* Default return statement if hack*_t() is not used. */ |