Print this page
5261 libm should stop using synonyms.h

Split Close
Expand all
Collapse all
          --- old/usr/src/lib/libm/i386/src/isnanf.s
          +++ new/usr/src/lib/libm/i386/src/isnanf.s
↓ open down ↓ 25 lines elided ↑ open up ↑
  26   26   * Use is subject to license terms.
  27   27   */
  28   28  
  29   29          .file "isnanf.s"
  30   30  
  31   31  #include "libm.h"
  32   32  LIBM_ANSI_PRAGMA_WEAK(isnanf,function)
  33   33          .weak _isnanf
  34   34          .type _isnanf,@function
  35   35  _isnanf = __isnanf
  36      -#include "libm_synonyms.h"
  37   36  
  38   37          ENTRY(isnanf)
  39   38          movl    4(%esp),%eax            / eax <-- x
  40   39          andl    $0x7fffffff,%eax        / eax <-- abs(x)
  41   40          subl    $0x7f800000,%eax        / ZF <-- 1      iff x is infinite
  42   41          jae     .nan_or_inf             / no jump iff arg. is finite
  43   42          movl    $0,%eax
  44   43          ret
  45   44  .nan_or_inf:
  46   45          jnz     .got_nan                / no jump if arg. infinite;
  47   46                                          / let nan waste time
  48   47          ret                             / %eax = 0 here
  49   48  .got_nan:
  50   49          movl    $1,%eax                 / %eax was 0, must be made 1 to
  51   50                                          / indicate TRUE 
  52   51          ret
  53   52          .align  4
  54   53          SET_SIZE(isnanf)
  55   54  
    
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX