diff options
author | das <das@FreeBSD.org> | 2004-07-19 08:17:47 +0000 |
---|---|---|
committer | das <das@FreeBSD.org> | 2004-07-19 08:17:47 +0000 |
commit | 2408fa162f0651f37f403c5b98495ceb284e8b5a (patch) | |
tree | b02909149c3d78c4a0d13ce5bafd74e5f0780e6a /tools | |
parent | 86c293bf54231dee13f45592a39a3f0d0cf19931 (diff) | |
download | FreeBSD-src-2408fa162f0651f37f403c5b98495ceb284e8b5a.zip FreeBSD-src-2408fa162f0651f37f403c5b98495ceb284e8b5a.tar.gz |
While testing fe[gs]etround(), make sure FLT_ROUNDS reflects the
proper rounding mode as well.
Diffstat (limited to 'tools')
-rw-r--r-- | tools/regression/lib/msun/test-fenv.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/tools/regression/lib/msun/test-fenv.c b/tools/regression/lib/msun/test-fenv.c index c789b07..d8bda6d 100644 --- a/tools/regression/lib/msun/test-fenv.c +++ b/tools/regression/lib/msun/test-fenv.c @@ -236,17 +236,27 @@ test_fegsetround(void) assert(fegetround() == FE_TONEAREST); assert(getround() == FE_TONEAREST); + assert(FLT_ROUNDS == 1); + assert(fesetround(FE_DOWNWARD) == 0); assert(fegetround() == FE_DOWNWARD); assert(getround() == FE_DOWNWARD); + assert(FLT_ROUNDS == 3); + assert(fesetround(FE_UPWARD) == 0); assert(getround() == FE_UPWARD); assert(fegetround() == FE_UPWARD); + assert(FLT_ROUNDS == 2); + assert(fesetround(FE_TOWARDZERO) == 0); assert(getround() == FE_TOWARDZERO); assert(fegetround() == FE_TOWARDZERO); + assert(FLT_ROUNDS == 0); + assert(fesetround(FE_TONEAREST) == 0); assert(getround() == FE_TONEAREST); + assert(FLT_ROUNDS == 1); + assert(feclearexcept(FE_ALL_EXCEPT) == 0); } |