Date: Fri, 06 Feb 2026 05:37:46 +0000 From: bugzilla-noreply@freebsd.org To: bugs@FreeBSD.org Subject: [Bug 292988] [libm] powl(x,y) gives the wrong result on x86_64. Message-ID: <bug-292988-227@https.bugs.freebsd.org/bugzilla/>
index | next in thread | raw e-mail
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=292988 Bug ID: 292988 Summary: [libm] powl(x,y) gives the wrong result on x86_64. Product: Base System Version: CURRENT Hardware: Any OS: Any Status: New Severity: Affects Only Me Priority: --- Component: bin Assignee: bugs@FreeBSD.org Reporter: kargl@FreeBSD.org The following code produces the wrong result. /* * This code yields an NaN when the result should be zero. */ #include <math.h> #include <stdio.h> int main(void) { long double x = 0x1.98p-3072L; long double y = 0xa.ab43b6dba9a6383p+16364L; long double v; v = powl(x, y); printf("%.21Le\n%.21Le\n%.21Le\n", x, y, v); return 0; } The bug was originally identified by Paul Zimmermann, and I've confirmed his finding. I do not hack on libm functions, which were imported from Cephus, so I cannot help with a patch. -- You are receiving this mail because: You are the assignee for the bug.home | help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-292988-227>
