mirror of
https://sourceware.org/git/glibc.git
synced 2025-12-24 17:51:17 +03:00
[BZ #3919]
* math/libm-test.inc (log_test): Test -Inf and NaN. (log10_test, log1p_test, log2_test): Test -Inf. * sysdeps/i386/fpu/e_log.S (__ieee754_log): Don't raise FE_INVALID when argument is qNaN. * sysdeps/i386/fpu/e_logl.S (__ieee754_logl): Likewise. * sysdeps/i386/fpu/e_logf.S (__ieee754_logf): Likewise. * sysdeps/x86_64/fpu/e_logl.S (__ieee754_logl): Likewise. * sysdeps/x86_64/fpu/e_log10l.S (__ieee754_log10l): Replace andb $1, %ah with testb $1, %ah, don't test for parity, instead testb $4, %ah and jump if non-zero. * sysdeps/x86_64/fpu/e_log2l.S (__ieee754_log2l): Likewise. * sysdeps/x86_64/fpu/s_log1pl.S (__log1pl): Likewise. 2007-03-15 Jakub Jelinek <jakub@redhat.com>
This commit is contained in:
@@ -4127,7 +4127,9 @@ log_test (void)
|
||||
TEST_f_f (log, 1, 0);
|
||||
|
||||
TEST_f_f (log, -1, nan_value, INVALID_EXCEPTION);
|
||||
TEST_f_f (log, minus_infty, nan_value, INVALID_EXCEPTION);
|
||||
TEST_f_f (log, plus_infty, plus_infty);
|
||||
TEST_f_f (log, nan_value, nan_value);
|
||||
|
||||
TEST_f_f (log, M_El, 1);
|
||||
TEST_f_f (log, 1.0 / M_El, -1);
|
||||
@@ -4157,6 +4159,7 @@ log10_test (void)
|
||||
|
||||
/* log10 (x) == NaN plus invalid exception if x < 0. */
|
||||
TEST_f_f (log10, -1, nan_value, INVALID_EXCEPTION);
|
||||
TEST_f_f (log10, minus_infty, nan_value, INVALID_EXCEPTION);
|
||||
|
||||
TEST_f_f (log10, plus_infty, plus_infty);
|
||||
TEST_f_f (log10, nan_value, nan_value);
|
||||
@@ -4188,6 +4191,7 @@ log1p_test (void)
|
||||
|
||||
TEST_f_f (log1p, -1, minus_infty, DIVIDE_BY_ZERO_EXCEPTION);
|
||||
TEST_f_f (log1p, -2, nan_value, INVALID_EXCEPTION);
|
||||
TEST_f_f (log1p, minus_infty, nan_value, INVALID_EXCEPTION);
|
||||
|
||||
TEST_f_f (log1p, plus_infty, plus_infty);
|
||||
TEST_f_f (log1p, nan_value, nan_value);
|
||||
@@ -4218,6 +4222,7 @@ log2_test (void)
|
||||
TEST_f_f (log2, 1, 0);
|
||||
|
||||
TEST_f_f (log2, -1, nan_value, INVALID_EXCEPTION);
|
||||
TEST_f_f (log2, minus_infty, nan_value, INVALID_EXCEPTION);
|
||||
|
||||
TEST_f_f (log2, plus_infty, plus_infty);
|
||||
TEST_f_f (log2, nan_value, nan_value);
|
||||
|
||||
Reference in New Issue
Block a user