Test of Mathematical Functions of the Standard C Library
Some of the mathematical functions of the standard C library have been tested on worst cases for the exact rounding in double precision. The following table gives the ratio or the number of incorrect roundings for various machines, in the rounding to nearest mode. If your browser has CSS 2 support, you can put the pointer over the machine name to have some information about the machine (you can also look at the details host by host). Greyed cells (or with brackets) contain a link to explanations below the table. This table is quite old (latest changes in 2005 and a bit in 2006), but this gives an idea about the problem.
| Function |
exp |
log |
exp2 |
log2 |
exp10 |
log10 |
sinh |
asinh |
cosh |
acosh |
sin |
asin |
cos |
acos |
tan |
atan |
isq |
isqrt |
cube |
cbrt |
| Number of tests |
2268 |
2813 |
1145 |
929 |
1668 |
1883 |
2215 |
2262 |
2026 |
1877 |
1611 |
1655 |
1576 |
1569 |
1706 |
1735 |
58 |
78 |
150 |
138 |
jules (Host: jules.medicis.polytechnique.fr - Processor: GenuineIntel / 6 / 1 / Pentium Pro - System: Red Hat GNU/Linux 6.1 - C compiler: egcs-2.91.66 - C library: 2.1.2) |
49 % |
43 % |
|
|
52 % |
46 % |
49 % |
100 % |
50 % |
41 % |
100 % |
49 % |
100 % |
83 % |
100 % |
100 % |
55 % |
51 % |
|
|
laudomia5 (Host: laudomia5.medicis.polytechnique.fr - Processor: GenuineIntel / 6 / 5 / Pentium II (Deschutes) - System: Red Hat GNU/Linux - C compiler: gcc 3.2 20020903 - C library: 2.3.2 - Test time (in cs): 123)
greux (Host: greux.loria.fr - Machine: Compaq - Processor: GenuineIntel / 6 / 8 / Pentium III (Coppermine) - System: Debian GNU/Linux - C compiler: gcc 3.3.5 / gcc 3.4.4 20050203 - C library: 2.3.2 - Test time (in cs): 70)
tate (Host: tate.loria.fr - Processor: GenuineIntel / 15 / 2 / Pentium 4 3.00GHz - System: Red Hat GNU/Linux - C compiler: gcc 3.3.4 20040817 / gcc 3.4.2 20041017 - C library: 2.3.4 - Test time (in cs): 22)
dixsept (Host: dixsept.loria.fr - Machine: Dell Optiplex GX280 - Processor: GenuineIntel / 15 / 3 / Pentium 4 3.00GHz - System: Debian GNU/Linux - C compiler: gcc 3.3.5 / gcc 3.4.4 20050314 - C library: 2.3.2 - Test time (in cs): 22)
hermione (Host: hermione.loria.fr - Processor: GenuineIntel / 15 / 0 / Xeon 1700MHz - System: Mandrake GNU/Linux - C compiler: gcc 3.2.1 - C library: 2.2.4 - Comment: cube and cbrt not tested on this machine.)
ble (Host: ble.ens-lyon.fr - Processor: GenuineIntel / 15 / 2 / Xeon 2.40GHz - System: Debian GNU/Linux - C compiler: gcc 3.2.1 20020924 - C library: 2.2.5 - Test time (in cs): 21)
spe186 (Host: spe186.testdrive.hp.com - Machine: SuSE Enterprise Server 9 - Processor: GenuineIntel / 15 / 2 / Xeon 3.20GHz - System: SuSE GNU/Linux Enterprise Server 9 - C compiler: gcc 3.3.3 - C library: 2.3.3 - Test time (in cs): 2185) |
49 % |
43 % |
48 % |
45 % |
52 % |
46 % |
49 % |
52 % |
50 % |
41 % |
51 % |
49 % |
49 % |
83 % |
52 % |
50 % |
55 % |
51 % |
53 % |
43 % |
vin (old) (Host: vin.lip.ens-lyon.fr (old) - Processor: GenuineIntel / 15 / 6 / Pentium D CPU 3.00GHz [x86 (32 bits)] - System: Debian GNU/Linux - C compiler: gcc 4.1.2 20061028 - C library: 2.3.6 - Test time (in cs): 29) |
49 % |
43 % |
48 % |
45 % |
52 % |
46 % |
52 % |
52 % |
50 % |
41 % |
51 % |
49 % |
49 % |
83 % |
52 % |
50 % |
55 % |
51 % |
53 % |
43 % |
spe152 (Host: spe152.testdrive.hp.com - Machine: ProLiant DL360 G2 2@1.4GHz - Processor: Intel Pentium III CPU family - System: FreeBSD 5.3 - C compiler: gcc 3.4.2 [FreeBSD] 20040728 - Test time (in cs): 31) |
49 % |
43 % |
|
|
|
46 % |
51 % |
49 % |
46 % |
49 % |
51 % |
50 % |
49 % |
50 % |
52 % |
50 % |
53 % |
51 % |
51 % |
58 % |
spe143 (old) (Host: spe143.testdrive.hp.com (old) - Machine: ProLiant 5500 1@450MHz - Processor: Intel Pentium III - System: NetBSD 1.6 - C compiler: gcc 2.95.3) |
49 % |
43 % |
|
|
|
46 % |
51 % |
82 % |
46 % |
86 % |
51 % |
51 % |
49 % |
95 % |
52 % |
50 % |
53 % |
51 % |
|
|
spe143 (Host: spe143.testdrive.hp.com - Machine: ProLiant DL360 2@1.2GHz - Processor: Intel Pentium III - System: NetBSD 2.0 - C compiler: gcc 3.3.3 - Test time (in cs): 33) |
49 % |
43 % |
|
|
|
46 % |
51 % |
50 % |
46 % |
50 % |
51 % |
51 % |
49 % |
95 % |
52 % |
50 % |
53 % |
51 % |
51 % |
58 % |
lepuid (Host: lepuid.loria.fr - Processor: AuthenticAMD / 6 / 6 / Athlon MP 2000+ - System: Red Hat GNU/Linux - C compiler: gcc 3.3.4 20040817 / gcc 3.4.2 20041017 - C library: 2.3.4 - Test time (in cs): 30)
lucrezia (Host: lucrezia.medicis.polytechnique.fr - Processor: AuthenticAMD / 6 / 4 / Athlon K7 - System: Red Hat GNU/Linux - C compiler: gcc 3.2 20020903 - C library: 2.3.2 - Comment: cube and cbrt not tested on this machine.)
courge (Host: courge.ens-lyon.fr - Processor: AuthenticAMD / 15 / 33 / Dual Core Opteron 875 - System: Debian GNU/Linux 3.1 - C compiler: gcc 3.3.5 - C library: 2.3.2 - Test time (in cs): 20) |
49 % |
43 % |
48 % |
44 % |
52 % |
47 % |
49 % |
51 % |
50 % |
41 % |
51 % |
49 % |
49 % |
83 % |
52 % |
50 % |
55 % |
51 % |
53 % |
43 % |
l.ldh.org (Host: l.ldh.org - Processor: CentaurHauls / 6 / 7 / VIA Samuel 2 - System: Debian GNU/Linux - C compiler: gcc 3.0.4 - C library: 2.2.5 - Test time (in cs): 271) |
49 % |
42 % |
48 % |
44 % |
52 % |
48 % |
49 % |
50 % |
50 % |
41 % |
51 % |
49 % |
49 % |
83 % |
51 % |
50 % |
55 % |
51 % |
53 % |
43 % |
prunille (macosx) (Host: prunille (macosx) - Machine: Power Mac G5 2 × 2.7 GHz - Processor: PowerPC G5 - System: Mac OS X v10.4 Tiger / Darwin 8.2.0 - C compiler: powerpc-apple-darwin8-gcc-4.0.0 (build 5026) - Test time (in cs): 21) |
49 % |
31 % |
46 % |
29 % |
|
41 % |
50 % |
50 % |
50 % |
49 % |
49 % |
48 % |
44 % |
50 % |
46 % |
44 % |
41 % |
50 % |
47 % |
58 % |
zaurus (Host: zaurus - Machine: Zaurus SL-C860 - Processor: Intel XScale-PXA255 rev 6 (v5l) - System: OpenPDA 1.0 / Linux / ROM 1.40 JP - C compiler: gcc 2.95.2 (zgcc 2.02) - C library: 2.2.2 - Test time (in cs): 2330) |
49 % |
30 % |
|
|
70 % |
48 % |
51 % |
50 % |
46 % |
48 % |
49 % |
48 % |
45 % |
30 % |
51 % |
51 % |
53 % |
51 % |
|
|
spe153 (Host: spe153.testdrive.hp.com - Machine: DS10-L 1@466MHz - Processor: Alpha EV6 - System: SuSE GNU/Linux 7.1 - C compiler: gcc 2.96 - C library: 2.2)
spe158 (Host: spe158.testdrive.hp.com - Machine: ES40 4@667MHz - Processor: Alpha EV67 - System: SuSE GNU/Linux 7.1 - C compiler: gcc 2.96 - C library: 2.2) |
49 % |
30 % |
51 % |
50 % |
|
|
51 % |
50 % |
46 % |
48 % |
49 % |
48 % |
45 % |
30 % |
51 % |
51 % |
53 % |
51 % |
|
|
spe149 (old) (Host: spe149.testdrive.hp.com (old) - Machine: XP1000a 1@667MHz - Processor: Alpha EV6 - System: FreeBSD 4.8 - C compiler: gcc 2.95.4)
spe149 (Host: spe149.testdrive.hp.com - Machine: XP1000a 1@667MHz - Processor: Alpha EV6 - System: FreeBSD 5.2.1 - C compiler: gcc 3.3.3 [FreeBSD] 20031106 - Test time (in cs): 122) |
50 % |
30 % |
|
|
|
48 % |
51 % |
50 % |
47 % |
48 % |
49 % |
47 % |
45 % |
29 % |
51 % |
51 % |
53 % |
51 % |
|
|
spe192 (Host: spe192.testdrive.hp.com - Machine: rp2470 2@750MHz - Processor: PA-RISC 8700 - System: HP-UX 11.11 - C compiler: HP C/HP-UX Version 11.11.08 - Test time (in cs): 55)
spe191 (Host: spe191.testdrive.hp.com - Machine: rp3410 2@800MHz - Processor: PA-RISC 8800 - System: HP-UX 11.23 - C compiler: HP C/HP-UX Version 11.11.23.02 - Test time (in cs): 44) |
50 % |
31 % |
|
|
|
50 % |
47 % |
50 % |
49 % |
54 % |
50 % |
48 % |
49 % |
49 % |
50 % |
50 % |
45 % |
45 % |
43 % |
57 % |
ange (Host: ange.loria.fr - Processor: MIPS IP35 - System: IRIX64 6.5 - C compiler: MIPSpro Compilers: Version 7.3.1.3m - Test time (in cs): 47) |
50 % |
31 % |
|
|
|
51 % |
48 % |
51 % |
48 % |
53 % |
49 % |
48 % |
51 % |
49 % |
49 % |
50 % |
55 % |
60 % |
49 % |
58 % |
spe145 (Host: spe145.testdrive.hp.com - Machine: AlphaServer 1200 - Processor: Alpha EV56 - System: OSF1 4.0 - C compiler: Compaq C V6.5-207 (dtk) - Test time (in cs): 478) |
51 % |
31 % |
47 % |
42 % |
|
44 % |
47 % |
47 % |
45 % |
51 % |
51 % |
47 % |
50 % |
41 % |
49 % |
46 % |
48 % |
55 % |
45 % |
51 % |
jean (Host: jean.medicis.polytechnique.fr - Machine: Digital 3000/600 - Processor: Alpha EV4 - System: OSF1 4.0 - C compiler: DEC C V5.8-009 - Test time (in cs): 1952) |
51 % |
31 % |
|
|
|
44 % |
47 % |
47 % |
45 % |
51 % |
51 % |
47 % |
50 % |
41 % |
49 % |
46 % |
48 % |
55 % |
|
|
eleonore (Host: eleonore.medicis.polytechnique.fr - Machine: Compaq Ultimate - Processor: Alpha EV56 - System: OSF1 4.0 - C compiler: DEC C V5.8-009 / gcc 3.2.1 - Test time (in cs): 363) |
51 % |
31 % |
|
|
|
44 % |
47 % |
47 % |
45 % |
51 % |
51 % |
47 % |
50 % |
41 % |
49 % |
46 % |
48 % |
55 % |
45 % |
51 % |
leon1 (Host: leon1.medicis.polytechnique.fr - Machine: Compaq XP/1000 - Processor: Alpha EV6 - System: OSF1 4.0 - C compiler: DEC C V5.8-009 / gcc 3.2.1 - Test time (in cs): 210)
cosimo (Host: cosimo.medicis.polytechnique.fr - Machine: Compaq DS20E - Processor: Alpha EV6 - System: OSF1 4.0 - C compiler: DEC C V5.9-005 / gcc 3.2.1 - Test time (in cs): 222)
ginevra (Host: ginevra.medicis.polytechnique.fr - Machine: Compaq DS20E - Processor: Alpha EV68 - System: OSF1 5.1 - C compiler: Compaq C V6.3-029 / gcc 3.2.1 - Test time (in cs): 80)
spe206 (Host: spe206.testdrive.hp.com - Machine: Compaq DS20E - Processor: Alpha EV67 - System: OSF1 5.1 - C compiler: gcc 3.3 - Test time (in cs): 107) |
51 % |
31 % |
|
|
|
44 % |
47 % |
46 % |
45 % |
50 % |
51 % |
47 % |
50 % |
41 % |
49 % |
46 % |
48 % |
55 % |
45 % |
51 % |
spe171 (Host: spe171.testdrive.hp.com - Machine: AlphaServer ES47 - Processor: Alpha EV7 - System: OSF1 5.1 - C compiler: Compaq C V6.5-207 - Test time (in cs): 68) |
51 % |
31 % |
47 % |
42 % |
|
44 % |
47 % |
46 % |
45 % |
50 % |
51 % |
47 % |
50 % |
41 % |
49 % |
46 % |
48 % |
55 % |
45 % |
51 % |
marie (libc232) (Host: marie.medicis.polytechnique.fr (libc232) - Processor: AuthenticAMD / 15 / 5 / Opteron 246 - System: Mandrake Linux 9.2 - C compiler: gcc 3.3.1 - C library: 2.3.2) |
50 % |
30 % |
46 % |
38 % |
50 % |
42 % |
50 % |
50 % |
46 % |
49 % |
48 % |
47 % |
48 % |
29 % |
50 % |
45 % |
48 % |
47 % |
|
|
spe190 (Host: spe190.testdrive.hp.com - Machine: ProLiant DL145 2@2.2GHz - Processor: AuthenticAMD / 15 / 5 / Opteron 248 - System: SuSE GNU/Linux Enterprise Server 9 - C compiler: gcc 3.3.3 - Test time (in cs): 18) |
50 % |
30 % |
46 % |
38 % |
50 % |
42 % |
50 % |
50 % |
47 % |
49 % |
48 % |
47 % |
48 % |
29 % |
50 % |
45 % |
48 % |
47 % |
49 % |
62 % |
spe166 (Host: spe166.testdrive.hp.com - Machine: DL590 4@800MHz - Processor: GenuineIntel / IA-64 / Itanium - System: SuSE GNU/Linux 7.2a - C compiler: gcc 3.0 - C library: 2.2.2) |
49 % |
30 % |
52 % |
50 % |
|
|
51 % |
50 % |
46 % |
48 % |
49 % |
47 % |
45 % |
28 % |
50 % |
51 % |
53 % |
51 % |
|
|
spe156 (Host: spe156.testdrive.hp.com - Machine: Integrity rx2600 2@900MHz - Processor: GenuineIntel / IA-64 / Itanium 2 - System: Debian GNU/Linux 3.0 - C compiler: gcc 3.4.1 - C library: 2.2.5 - Test time (in cs): 64) |
43 % |
52 % |
52 % |
50 % |
66 % |
46 % |
49 % |
50 % |
40 % |
49 % |
51 % |
50 % |
50 % |
41 % |
46 % |
46 % |
55 % |
54 % |
48 % |
46 % |
spe176 (old) (Host: spe176.testdrive.hp.com (old) - Machine: Integrity rx1600 - Processor: GenuineIntel / IA-64 / Itanium 2 - System: HP-UX 11.23 - C compiler: aC++/C Version A.06.00) |
47 % |
43 % |
|
|
46 % |
46 % |
47 % |
49 % |
46 % |
44 % |
52 % |
49 % |
50 % |
39 % |
49 % |
41 % |
59 % |
49 % |
|
|
spe176 (Host: spe176.testdrive.hp.com - Machine: Integrity rx1600 - Processor: GenuineIntel / IA-64 / Itanium 2 - System: HP-UX 11.23 - C compiler: HP aC++/ANSI C B3910B A.06.00 - Test time (in cs): 36) |
47 % |
43 % |
|
|
46 % |
46 % |
44 % |
49 % |
38 % |
44 % |
52 % |
49 % |
50 % |
39 % |
49 % |
41 % |
59 % |
49 % |
45 % |
43 % |
bar (Host: bar.loria.fr - Machine: SUNW,Ultra-Enterprise - Processor: sun4u sparc - System: SunOS 5.7 - C compiler: Sun WorkShop 6 2000/04/07 C 5.1 - Test time (in cs): 262)
craffe (Host: craffe.loria.fr - Machine: SUNW,Ultra-4 - Processor: sun4u sparc - System: SunOS 5.7 - C compiler: Sun WorkShop 6 2000/04/07 C 5.1 - Test time (in cs): 219) |
50 % |
30 % |
47 % |
49 % |
51 % |
48 % |
50 % |
50 % |
46 % |
49 % |
49 % |
47 % |
50 % |
29 % |
51 % |
50 % |
57 % |
53 % |
40 % |
58 % |
riscpc (Host: riscpc - Machine: Acorn Risc PC - Processor: StrongARM SA-110 - System: RISC OS 4.02 - C compiler: gcc 2.95.4 20010319 (prerelease) [gccsdk 20020112] - C library: unixlib - Test time (in cs): 3192) |
42 % |
34 % |
|
|
66 % |
45 % |
80 % |
50 % |
48 % |
49 % |
47 % |
50 % |
50 % |
37 % |
50 % |
44 % |
59 % |
59 % |
|
|
iyonix (Host: iyonix - Machine: Iyonix PC - Processor: Intel XScale 80321 - System: RISC OS 5.03 - C compiler: gcc 3.3.3 20040214 / gcc 3.4.4 20041113 - C library: unixlib - Test time (in cs): 828) |
42 % |
34 % |
51 % |
50 % |
66 % |
45 % |
80 % |
50 % |
48 % |
49 % |
47 % |
50 % |
50 % |
37 % |
50 % |
44 % |
59 % |
59 % |
|
|
spe170 (Host: spe170.testdrive.hp.com - Machine: rp5470 1@550MHz - Processor: PA-RISC 2.0 / PA8600 (PCX-W+) - System: Debian GNU/Linux 3.0 - C compiler: gcc 3.0.4 - C library: 2.2.5 - Test time (in cs): 2074) |
0 |
0 |
51 % |
50 % |
66 % |
47 % |
45 % |
50 % |
45 % |
49 % |
0 |
0 |
[5] |
17 % |
0 |
0 |
0 |
0 |
0 |
62 % |
lepois (Host: lepois.loria.fr - Machine: COMPAQ Professional Workstation XP1000 - Processor: Alpha EV6 - System: Debian GNU/Linux - C compiler: gcc 3.2.3 20030309 - C library: 2.3.1) |
0 |
0 |
51 % |
50 % |
66 % |
47 % |
45 % |
50 % |
45 % |
49 % |
0 |
0 |
[5] |
17 % |
0 |
[28 %] |
0 |
0 |
|
|
lepois (sid) (Host: lepois.loria.fr (sid) - Machine: COMPAQ Professional Workstation XP1000 - Processor: Alpha EV6 - System: Debian GNU/Linux - C compiler: gcc 3.3.2 - C library: 2.3.2)
julien1 (Host: julien1.medicis.polytechnique.fr - Processor: Alpha EV56 - System: Debian GNU/Linux - C compiler: gcc 3.3.4 - C library: 2.3.2 - Test time (in cs): 3619) |
0 |
0 |
51 % |
50 % |
66 % |
47 % |
45 % |
50 % |
45 % |
49 % |
0 |
0 |
0 |
17 % |
0 |
[28 %] |
0 |
0 |
|
|
madeleine1 (Host: madeleine1.medicis.polytechnique.fr - Processor: AuthenticAMD / 15 / 15 / Athlon 64 3500+ - System: Debian GNU/Linux - C compiler: gcc 3.3.5 - C library: 2.3.2 - Test time (in cs): 625)
doubleeagle (Host: doubleeagle.ens-lyon.fr - Processor: AuthenticAMD / 15 / 5 / Opteron 248 - System: Debian GNU/Linux 3.1 - C compiler: gcc 3.3.5 - C library: 2.3.2 - Test time (in cs): 623) |
0 |
0 |
51 % |
50 % |
66 % |
47 % |
45 % |
50 % |
45 % |
49 % |
0 |
0 |
0 |
17 % |
0 |
[28 %] |
0 |
0 |
0 |
62 % |
marie (libc233) (Host: marie.medicis.polytechnique.fr (libc233) - Processor: AuthenticAMD / 15 / 5 / Opteron 246 - System: Fedora Core release 2 (Tettnang) - C compiler: gcc 3.3.3 20040412 / gcc 3.4.0 - C library: 2.3.3 - Test time (in cs): 682)
spe189 (Host: spe189.testdrive.hp.com - Machine: ProLiant DL145 - Processor: AuthenticAMD / 15 / 5 / Opteron 248 - System: Red Hat GNU/Linux - C compiler: gcc 3.2.3 20030502 - C library: 2.3.2 - Test time (in cs): 613)
helene (Host: helene.loria.fr - Processor: AuthenticAMD / 15 / 5 / Opteron 250 - System: Red Hat GNU/Linux - C compiler: gcc 3.4.2 20041017 - C library: 2.3.4 - Test time (in cs): 549)
vin (Host: vin.lip.ens-lyon.fr - Processor: GenuineIntel / 15 / 6 / Pentium D CPU 3.00GHz [x86_64 (64 bits)] - System: Debian GNU/Linux - C compiler: gcc.real (Debian 4.3.4-3) 4.3.4 - C library: 2.9 - Test time (in cs): 893)
n810 (Host: n810 - Machine: Nokia N810 - Processor: TI OMAP 2420 - System: Maemo 4.1.3 (5.2008.43-7) / Linux - C compiler: gcc 3.4.4 - C library: 2.5 - Test time (in cs): 7088) |
0 |
0 |
51 % |
50 % |
66 % |
47 % |
45 % |
50 % |
45 % |
49 % |
0 |
0 |
0 |
17 % |
0 |
0 |
0 |
0 |
0 |
62 % |
ay (libc236) (Host: ay (libc236) - Machine: PowerBook3,2 G4 - Processor: PowerPC 7410, revision 0.3 (pvr 800c 1103) - System: Debian GNU/Linux - C compiler: gcc 4.1.2 20060901 - C library: 2.3.6 - Test time (in cs): 2642) |
0 |
0 |
52 % |
50 % |
66 % |
47 % |
45 % |
50 % |
45 % |
49 % |
0 |
0 |
0 |
17 % |
0 |
0 |
0 |
0 |
0 |
62 % |
ay (libc235) (Host: ay (libc235) - Machine: PowerBook3,2 G4 - Processor: PowerPC 7410, revision 17.3 (pvr 800c 1103) - System: Debian GNU/Linux - C compiler: gcc 4.0.3 20051201 - C library: 2.3.5 - Test time (in cs): 2661) |
0 |
0 |
52 % |
50 % |
66 % |
48 % |
45 % |
50 % |
45 % |
49 % |
0 |
0 |
0 |
17 % |
0 |
0 |
0 |
0 |
0 |
62 % |
ay (libc232) (Host: ay (libc232) - Machine: PowerBook3,2 G4 - Processor: PowerPC 7410, revision 17.3 (pvr 800c 1103) - System: Debian GNU/Linux - C compiler: gcc 3.3.5 / gcc 3.4.4 20041218 - C library: 2.3.2 - Test time (in cs): 2689)
doublejack (Host: doublejack.ens-lyon.fr - Processor: POWER5 (gr) - System: SuSE GNU/Linux - C compiler: gcc 3.3.3 - C library: 2.3.3 - Test time (in cs): 1312) |
0 |
[5 %] |
52 % |
50 % |
66 % |
48 % |
45 % |
50 % |
45 % |
49 % |
0 |
0 |
0 |
17 % |
0 |
0 |
0 |
0 |
0 |
62 % |
- Bug 153548 on the Debian BTS: These 5 values are wrong.
- Bug 210400 on the Debian BTS: This is a regression.
- Bug 210613 on the Debian BTS: These values are wrong. This is fixed in the glibc CVS and in the Debian package libc6 2.3.5-3.
Notes:
With gcc 3.4 under Linux/x86, the -ffloat-store option is necessary, since the results of some functions of the mathematical library are and remain in extended precision after an assignment. This does not conform to the ISO/IEC 9899:1999 standard (C language); it is a bug in gcc.
The time to perform the tests on the worst cases is given for some platforms. It is high for implementations that provide correct rounding, but you have to remember that in practice, the probability to encounter such worst cases is very low.
The search for worst cases (except precomputations and postcomputations) currently required 49130 hours of computation on a cluster of the Centre Charles Hermite (8 biprocessor machines), 42129 hours on machines of the Laboratoire de l'Informatique du Parallélisme (ENS de Lyon, France), 9333 hours on machines of the MEDICIS computation center, and 5767 hours on machines of the Loria.
This page deals with correct rounding only. For error analysis of the mathematical functions, you can look at Gaston H. Gonnet's page or at MPCHECK (by Paul Zimmermann and Nathalie Revol).