Home | History | Annotate | Line # | Download | only in stdlib
labs.S revision 1.1.34.1
      1  1.1.34.1  wrstuden /*	$NetBSD: labs.S,v 1.1.34.1 2008/09/18 04:39:20 wrstuden Exp $	*/
      2       1.1      fvdl 
      3       1.1      fvdl /*
      4       1.1      fvdl  * Written by Frank van der Linden (fvdl (at) wasabisystems.com)
      5       1.1      fvdl  * Public Domain.
      6       1.1      fvdl  */
      7       1.1      fvdl 
      8       1.1      fvdl #include <machine/asm.h>
      9       1.1      fvdl 
     10       1.1      fvdl #if defined(LIBC_SCCS)
     11  1.1.34.1  wrstuden 	RCSID("$NetBSD: labs.S,v 1.1.34.1 2008/09/18 04:39:20 wrstuden Exp $")
     12       1.1      fvdl #endif
     13       1.1      fvdl 
     14  1.1.34.1  wrstuden #ifdef WEAK_ALIAS
     15  1.1.34.1  wrstuden WEAK_ALIAS(imaxabs, _llabs)
     16  1.1.34.1  wrstuden WEAK_ALIAS(llabs, _llabs)
     17  1.1.34.1  wrstuden WEAK_ALIAS(labs, _labs)
     18  1.1.34.1  wrstuden #endif
     19  1.1.34.1  wrstuden 
     20  1.1.34.1  wrstuden #ifdef WEAK_ALIAS
     21  1.1.34.1  wrstuden ENTRY(_llabs)
     22  1.1.34.1  wrstuden ENTRY(_labs)
     23  1.1.34.1  wrstuden #else
     24       1.1      fvdl ENTRY(llabs)
     25       1.1      fvdl ENTRY(labs)
     26  1.1.34.1  wrstuden #endif
     27       1.1      fvdl         movq    %rdi,%rax
     28       1.1      fvdl         testq   %rax,%rax
     29       1.1      fvdl         jns     1f
     30       1.1      fvdl         negq    %rax
     31       1.1      fvdl 1:      ret
     32