Home | History | Annotate | Line # | Download | only in stdlib
labs.S revision 1.2.38.1
      1  1.2.38.1   tls /*	$NetBSD: labs.S,v 1.2.38.1 2014/08/10 06:51:49 tls 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.2.38.1   tls 	RCSID("$NetBSD: labs.S,v 1.2.38.1 2014/08/10 06:51:49 tls Exp $")
     12       1.1  fvdl #endif
     13       1.1  fvdl 
     14       1.2  matt #ifdef WEAK_ALIAS
     15       1.2  matt WEAK_ALIAS(imaxabs, _llabs)
     16       1.2  matt WEAK_ALIAS(llabs, _llabs)
     17       1.2  matt WEAK_ALIAS(labs, _labs)
     18       1.2  matt #endif
     19       1.2  matt 
     20       1.2  matt #ifdef WEAK_ALIAS
     21       1.2  matt ENTRY(_llabs)
     22       1.2  matt ENTRY(_labs)
     23       1.2  matt #else
     24       1.1  fvdl ENTRY(llabs)
     25       1.1  fvdl ENTRY(labs)
     26       1.2  matt #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  1.2.38.1   tls #ifdef WEAK_ALIAS
     33  1.2.38.1   tls END(_llabs)
     34  1.2.38.1   tls END(_labs)
     35  1.2.38.1   tls #else
     36  1.2.38.1   tls END(llabs)
     37  1.2.38.1   tls END(labs)
     38  1.2.38.1   tls #endif
     39