Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 20 Feb 1997 04:37:54 -0800 (PST)
From:      Bruce Evans <bde>
To:        CVS-committers, cvs-all, cvs-lib
Subject:   cvs commit:  src/lib/msun/i387 e_acos.S e_asin.S
Message-ID:  <199702201237.EAA09916@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help
bde         97/02/20 04:37:52

  Modified:    lib/msun/i387  e_acos.S e_asin.S
  Log:
  Compute (1 - x^2) as ((1 - x) * (1 + x)) instead of as (1 - x * x) to
  avoid easily avoidable loss of precision when |x| is nearly 1.
  
  Extended (64-bit) precision only moves the meaning of "nearly" here.
  
  This probably could be done better by splitting up the range into
  |x| <= 0.5 and |x| > 0.5 like the C version.  However, ucbtest
  does't report any errors in this version.  Perhaps the C version
  should be used anyway.  It's only 25% slower now on a P5, provided
  the C version of sqrt() isn't used, and the C version could be
  optimized better.
  
  Errors checked by:	ucbtest
  
  Revision  Changes    Path
  1.4       +12 -6     src/lib/msun/i387/e_acos.S
  1.4       +11 -5     src/lib/msun/i387/e_asin.S



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199702201237.EAA09916>