about summary refs log tree commit diff
path: root/sysdeps/x86_64/fpu
diff options
context:
space:
mode:
authorJoseph Myers <joseph@codesourcery.com>2012-04-09 09:42:05 +0000
committerJoseph Myers <joseph@codesourcery.com>2012-04-09 09:42:05 +0000
commitc483f6b4a4277bc209820efc1ae35d976af57b4e (patch)
tree501d3025d498d3e27308f32db0838e19c13f826e /sysdeps/x86_64/fpu
parentd2de7579f257386ba5c28dfca94fa8aef143b4e0 (diff)
downloadglibc-c483f6b4a4277bc209820efc1ae35d976af57b4e.tar.gz
glibc-c483f6b4a4277bc209820efc1ae35d976af57b4e.tar.xz
glibc-c483f6b4a4277bc209820efc1ae35d976af57b4e.zip
Fix x86 pow inaccuracy for large integer exponents (bug 706).
Diffstat (limited to 'sysdeps/x86_64/fpu')
-rw-r--r--sysdeps/x86_64/fpu/libm-test-ulps15
1 files changed, 15 insertions, 0 deletions
diff --git a/sysdeps/x86_64/fpu/libm-test-ulps b/sysdeps/x86_64/fpu/libm-test-ulps
index d43955aff8..dce60cfb5b 100644
--- a/sysdeps/x86_64/fpu/libm-test-ulps
+++ b/sysdeps/x86_64/fpu/libm-test-ulps
@@ -1444,6 +1444,17 @@ Test "log1p (-0.25) == -0.287682072451780927439219005993827432":
 float: 1
 ifloat: 1
 
+# pow
+Test "pow (0x0.ffffffp0, -0x1p24) == 2.7182819094701610539628664526874952929416":
+float: 1
+ifloat: 1
+Test "pow (0x0.ffffffp0, 0x1p24) == 0.3678794302077803437135155590023422899744":
+float: 1
+ifloat: 1
+Test "pow (0x1.000002p0, 0x1p24) == 7.3890552180866447284268641248075832310141":
+float: 1
+ifloat: 1
+
 # pow_downward
 Test "pow_downward (1.0625, 1.125) == 1.070582293028761362162622578677070098674":
 ildouble: 1
@@ -2413,6 +2424,10 @@ Function: "log1p":
 float: 1
 ifloat: 1
 
+Function: "pow":
+float: 1
+ifloat: 1
+
 Function: "pow_downward":
 float: 1
 ifloat: 1