Print this page
5261 libm should stop using synonyms.h
5298 fabs is 0-sized, confuses dis(1) and others
Reviewed by: Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
Approved by: Gordon Ross <gwr@nexenta.com>

Split Close
Expand all
Collapse all
          --- old/usr/src/lib/libm/common/R/acosf.c
          +++ new/usr/src/lib/libm/common/R/acosf.c
↓ open down ↓ 18 lines elided ↑ open up ↑
  19   19   * CDDL HEADER END
  20   20   */
  21   21  /*
  22   22   * Copyright 2011 Nexenta Systems, Inc.  All rights reserved.
  23   23   */
  24   24  /*
  25   25   * Copyright 2005 Sun Microsystems, Inc.  All rights reserved.
  26   26   * Use is subject to license terms.
  27   27   */
  28   28  
  29      -#pragma weak acosf = __acosf
       29 +#pragma weak __acosf = acosf
  30   30  
  31   31  #include "libm.h"
  32   32  
  33   33  static const float zero = 0.0f;
  34   34  
  35   35  float
  36   36  acosf(float x) {
  37   37          int     ix;
  38   38  
  39   39          ix = *(int *)&x & ~0x80000000;
  40   40          if (ix > 0x3f800000)    /* |x| > 1 or x is nan */
  41   41                  return ((x * zero) / zero);
  42   42          return ((float)acos((double)x));
  43   43  }
    
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX