crt-test: Add tests of ldexp/scalbn/scalbln

This commit is contained in:
Martin Storsjö committed 2019-04-09 12:32:56 +03:00
1 parent dde687f36d
commit 5d969f2a70
1 file changed
+36
+36
View File
@@ -633,6 +633,42 @@ int main(int argc, char* argv[]) {
TEST_FLT_ACCURACY(exp2l(F(32.0)), 4294967296.0, 0.001);
TEST_FLT_ACCURACY(exp2l(F(-2.0)), 0.25, 0.001);
TEST_FLT_ACCURACY(ldexp(F(0.0), 1), 0.0, 0.001);
TEST_FLT_ACCURACY(ldexp(F(2.0), 2), 8.0, 0.001);
TEST_FLT_ACCURACY(ldexp(F(2.0), -2), 0.5, 0.001);
TEST_FLT_ACCURACY(ldexpf(F(0.0), 1), 0.0, 0.001);
TEST_FLT_ACCURACY(ldexpf(F(2.0), 2), 8.0, 0.001);
TEST_FLT_ACCURACY(ldexpf(F(2.0), -2), 0.5, 0.001);
TEST_FLT_ACCURACY(ldexpl(F(0.0), 1), 0.0, 0.001);
TEST_FLT_ACCURACY(ldexpl(F(2.0), 2), 8.0, 0.001);
TEST_FLT_ACCURACY(ldexpl(F(2.0), -2), 0.5, 0.001);
TEST_FLT_ACCURACY(scalbn(F(0.0), 1), 0.0, 0.001);
TEST_FLT_ACCURACY(scalbn(F(2.0), 2), 8.0, 0.001);
TEST_FLT_ACCURACY(scalbn(F(2.0), -2), 0.5, 0.001);
TEST_FLT_ACCURACY(scalbnf(F(0.0), 1), 0.0, 0.001);
TEST_FLT_ACCURACY(scalbnf(F(2.0), 2), 8.0, 0.001);
TEST_FLT_ACCURACY(scalbnf(F(2.0), -2), 0.5, 0.001);
TEST_FLT_ACCURACY(scalbnl(F(0.0), 1), 0.0, 0.001);
TEST_FLT_ACCURACY(scalbnl(F(2.0), 2), 8.0, 0.001);
TEST_FLT_ACCURACY(scalbnl(F(2.0), -2), 0.5, 0.001);
TEST_FLT_ACCURACY(scalbln(F(0.0), 1), 0.0, 0.001);
TEST_FLT_ACCURACY(scalbln(F(2.0), 2), 8.0, 0.001);
TEST_FLT_ACCURACY(scalbln(F(2.0), -2), 0.5, 0.001);
TEST_FLT_ACCURACY(scalblnf(F(0.0), 1), 0.0, 0.001);
TEST_FLT_ACCURACY(scalblnf(F(2.0), 2), 8.0, 0.001);
TEST_FLT_ACCURACY(scalblnf(F(2.0), -2), 0.5, 0.001);
TEST_FLT_ACCURACY(scalblnl(F(0.0), 1), 0.0, 0.001);
TEST_FLT_ACCURACY(scalblnl(F(2.0), 2), 8.0, 0.001);
TEST_FLT_ACCURACY(scalblnl(F(2.0), -2), 0.5, 0.001);
TEST_INT(llround(F(3.3)), 3);
TEST_INT(llround(F(3.6)), 4);
TEST_INT(llround(F(3.5)), 4);