diff options
author | vlefevre <vlefevre@280ebfd0-de03-0410-8827-d642c229c3f4> | 2001-11-08 03:04:00 +0000 |
---|---|---|
committer | vlefevre <vlefevre@280ebfd0-de03-0410-8827-d642c229c3f4> | 2001-11-08 03:04:00 +0000 |
commit | 9bcc04eeec1cd38b7841a85bf92b7b264e4bafbc (patch) | |
tree | aa7566536c062637c92783dd94d212e1cb0cd28d /mpfr.h | |
parent | 6dc42ef94f5ad9ab2a0162b7a22390bcb6d9aa77 (diff) | |
download | mpfr-9bcc04eeec1cd38b7841a85bf92b7b264e4bafbc.tar.gz |
Macros added.
git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@1468 280ebfd0-de03-0410-8827-d642c229c3f4
Diffstat (limited to 'mpfr.h')
-rw-r--r-- | mpfr.h | 23 |
1 files changed, 23 insertions, 0 deletions
@@ -248,6 +248,29 @@ int mpfr_sub_q _PROTO ((mpfr_ptr, mpfr_srcptr, mpq_srcptr, mp_rnd_t)); } #endif +/* prevent from using mpfr_get_e{min,max} as lvalues */ +#define mpfr_get_emin() (__mpfr_emin + 0) +#define mpfr_get_emax() (__mpfr_emax + 0) + +#define mpfr_clear_flags() \ + ((void) (__mpfr_flags = 0)) +#define mpfr_clear_underflow() \ + ((void) (__mpfr_flags &= MPFR_FLAGS_ALL ^ MPFR_FLAGS_UNDERFLOW)) +#define mpfr_clear_overflow() \ + ((void) (__mpfr_flags &= MPFR_FLAGS_ALL ^ MPFR_FLAGS_OVERFLOW)) +#define mpfr_clear_nanflag() \ + ((void) (__mpfr_flags &= MPFR_FLAGS_ALL ^ MPFR_FLAGS_NAN)) +#define mpfr_clear_inexflag() \ + ((void) (__mpfr_flags &= MPFR_FLAGS_ALL ^ MPFR_FLAGS_INEXACT)) +#define mpfr_underflow_p() \ + ((int) (__mpfr_flags & MPFR_FLAGS_UNDERFLOW)) +#define mpfr_overflow_p() \ + ((int) (__mpfr_flags & MPFR_FLAGS_OVERFLOW)) +#define mpfr_nanflag_p() \ + ((int) (__mpfr_flags & MPFR_FLAGS_NAN)) +#define mpfr_inexflag_p() \ + ((int) (__mpfr_flags & MPFR_FLAGS_INEXACT)) + #define mpfr_cmp_ui(b,i) mpfr_cmp_ui_2exp((b),(i),0) #define mpfr_cmp_si(b,i) mpfr_cmp_si_2exp((b),(i),0) #define mpfr_set(a,b,r) mpfr_set4(a,b,r,MPFR_SIGN(b)) |