diff options
Diffstat (limited to 'math/auto-libm-test-in')
-rw-r--r-- | math/auto-libm-test-in | 95 |
1 files changed, 95 insertions, 0 deletions
diff --git a/math/auto-libm-test-in b/math/auto-libm-test-in index 614fe251b1..fc407e9b90 100644 --- a/math/auto-libm-test-in +++ b/math/auto-libm-test-in @@ -142,6 +142,101 @@ acosh 0x1.1808eep+0 acosh 0x1.1052c4p+0 acosh max no-test-inline +add 0 0 +add 0 -0 +add -0 0 +add -0 -0 +add max max +add max -max +add -max max +add -max -max +add min min missing-underflow:arg-ibm128 +add min -min missing-underflow:arg-ibm128 +add -min min missing-underflow:arg-ibm128 +add -min -min missing-underflow:arg-ibm128 +add min_subnorm min_subnorm missing-underflow:arg-ibm128 +add min_subnorm -min_subnorm missing-underflow:arg-ibm128 +add -min_subnorm min_subnorm missing-underflow:arg-ibm128 +add -min_subnorm -min_subnorm missing-underflow:arg-ibm128 +add 1 2 +add 1 -2 +add -1 2 +add -1 -2 +add 100.5 0.75 +add 100.5 -0.75 +add -100.5 0.75 +add -100.5 -0.75 +add 1 0x1p-23 +add 1 0x1.7fp-23 +add 1 0x1.8p-23 +add 1 0x1.81p-23 +add 1 0x1p-24 +add 1 0x1.1p-24 +add 1 0x0.fp-24 +add 1 min +add 1 -min +add 1 min_subnorm +add 1 -min_subnorm +add -1 min +add -1 -min +add -1 min_subnorm +add -1 -min_subnorm +# Cases where larger argument is half way between two values of a +# floating-point format, so that double rounding would sometimes yield +# the wrong result. +add 0x1.000001p0 min +add 0x1.000001p0 -min +add 0x1.000001p0 min_subnorm +add 0x1.000001p0 -min_subnorm +add -0x1.000001p0 min +add -0x1.000001p0 -min +add -0x1.000001p0 min_subnorm +add -0x1.000001p0 -min_subnorm +add 0x1.00000000000008p0 min +add 0x1.00000000000008p0 -min +add 0x1.00000000000008p0 min_subnorm +add 0x1.00000000000008p0 -min_subnorm +add -0x1.00000000000008p0 min +add -0x1.00000000000008p0 -min +add -0x1.00000000000008p0 min_subnorm +add -0x1.00000000000008p0 -min_subnorm +add 0x1.0000000000000001p0 min +add 0x1.0000000000000001p0 -min +add 0x1.0000000000000001p0 min_subnorm +add 0x1.0000000000000001p0 -min_subnorm +add -0x1.0000000000000001p0 min +add -0x1.0000000000000001p0 -min +add -0x1.0000000000000001p0 min_subnorm +add -0x1.0000000000000001p0 -min_subnorm +# Two values representable in the same format with sum very close to +# half way between two representable values. In particular, verify +# that there is no intermediate rounding to 64 bits when adding two +# double values. +add 1 0x1.000002p-24 +add 1 -0x1.000002p-24 +add 1 0x0.ffffffp-24 +add 1 -0x0.ffffffp-24 +add 0x1.000002p0 0x1.000002p-24 +add 0x1.000002p0 -0x1.000002p-24 +add 0x1.000002p0 0x0.ffffffp-24 +add 0x1.000002p0 -0x0.ffffffp-24 +add 1 0x1.0000000000001p-53 +add 1 -0x1.0000000000001p-53 +add 1 0x0.fffffffffffff8p-53 +add 1 -0x0.fffffffffffff8p-53 +add 0x1.0000000000001p0 0x1.0000000000001p-53 +add 0x1.0000000000001p0 -0x1.0000000000001p-53 +add 0x1.0000000000001p0 0x0.fffffffffffff8p-53 +add 0x1.0000000000001p0 -0x0.fffffffffffff8p-53 +add 1 0x1.0000000000000002p-64 +add 1 -0x1.0000000000000002p-64 +add 1 0x0.ffffffffffffffffp-64 +add 1 -0x0.ffffffffffffffffp-64 +add 0x1.0000000000000002p0 0x1.0000000000000002p-64 +add 0x1.0000000000000002p0 -0x1.0000000000000002p-64 +add 0x1.0000000000000002p0 0x0.ffffffffffffffffp-64 +add 0x1.0000000000000002p0 -0x0.ffffffffffffffffp-64 + asin 0 asin -0 asin 0.5 |