summaryrefslogtreecommitdiffstats
path: root/tools/regression
diff options
context:
space:
mode:
authordas <das@FreeBSD.org>2004-07-19 08:17:47 +0000
committerdas <das@FreeBSD.org>2004-07-19 08:17:47 +0000
commit2408fa162f0651f37f403c5b98495ceb284e8b5a (patch)
treeb02909149c3d78c4a0d13ce5bafd74e5f0780e6a /tools/regression
parent86c293bf54231dee13f45592a39a3f0d0cf19931 (diff)
downloadFreeBSD-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/regression')
-rw-r--r--tools/regression/lib/msun/test-fenv.c10
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);
}
OpenPOWER on IntegriCloud