+2016-02-19 Joseph Myers <joseph@codesourcery.com>
+
+ [BZ #19603]
+ * sysdeps/ieee754/ldbl-128ibm/e_remainderl.c
+ (__ieee754_remainderl): Adjust sign of integer version of low part
+ when taking absolute value of high part.
+ * sysdeps/ieee754/ldbl-128ibm/s_remquol.c (__remquol): Likewise.
+ * math/libm-test.inc (remainder_test_data): Add another test.
+ (remquo_test_data): Likewise.
+
2016-02-18 Joseph Myers <joseph@codesourcery.com>
[BZ #19602]
TEST_ff_f (remainder, 3.0, 2.0, -1.0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
#if defined TEST_LDOUBLE && LDBL_MANT_DIG >= 56
TEST_ff_f (remainder, -0x1.80000000000002p1L, 2.0, 0x1.fffffffffffff8p-1L, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+ TEST_ff_f (remainder, 0x0.ffffffffffffffp0L, -0x1.00000000000001p0L, -0x1p-55L, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
#endif
TEST_ff_f (remainder, 3419, 360, 179, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ffI_f1 (remquo, 3, 2, -1, 2, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
#if defined TEST_LDOUBLE && LDBL_MANT_DIG >= 56
TEST_ffI_f1 (remquo, -0x1.80000000000002p1L, 2.0, 0x1.fffffffffffff8p-1L, -2, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+ TEST_ffI_f1 (remquo, 0x0.ffffffffffffffp0L, -0x1.00000000000001p0L, -0x1p-55L, -1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
#endif
TEST_ffI_f1 (remquo, 3419, 360, 179, 1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
EXTRACT_WORDS64 (hp, phi);
EXTRACT_WORDS64 (lp, plo);
sx = hx&0x8000000000000000ULL;
+ lp ^= hp & 0x8000000000000000ULL;
hp &= 0x7fffffffffffffffLL;
+ lx ^= sx;
hx &= 0x7fffffffffffffffLL;
/* purge off exception values */
EXTRACT_WORDS64 (ly, ylo);
sx = hx & 0x8000000000000000ULL;
qs = sx ^ (hy & 0x8000000000000000ULL);
+ ly ^= hy & 0x8000000000000000ULL;
hy &= 0x7fffffffffffffffLL;
+ lx ^= sx;
hx &= 0x7fffffffffffffffLL;
/* Purge off exception values. */