Bug 1043

Summary: asinh in __math.h fails for negative arg
Product: [Retired] Red Hat Linux Reporter: mcconnau
Component: libcAssignee: David Lawrence <dkl>
Status: CLOSED CURRENTRELEASE QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: 5.0   
Target Milestone: ---   
Target Release: ---   
Hardware: i386   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 1999-03-22 18:49:35 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:

Description mcconnau 1999-02-04 19:22:06 UTC
In /usr/include/__math.h  the function asinh fails for
negative arguments because __sgn1 is called before log1p.
The statement should be "return log1p (__y *__y /
(sqrt(__y * __y + 1.0) + 1.0) + __y) * __sgn1(__x);"
A more general problem with this file (or maybe it is the
compiler) is that when function arguments are given as long
double type, they get converted to temporary variables of
double type and then those are loaded onto the FPU.  This
can cause loss of precision and overflow.