xref: /netbsd-src/lib/libc/arch/x86_64/stdlib/ldiv.S (revision 92d1d4411b9f8cbaff3d5eb0b336fcc1c32deb29)
1*92d1d441Suebayasi/*	$NetBSD: ldiv.S,v 1.3 2014/05/22 15:01:56 uebayasi Exp $	*/
210f59d7bSfvdl
310f59d7bSfvdl/*
410f59d7bSfvdl * Written by gcc 3.0.
510f59d7bSfvdl * Copy/pasted by Frank van der Linden (fvdl@wasabisystems.com)
610f59d7bSfvdl */
710f59d7bSfvdl
810f59d7bSfvdl#include <machine/asm.h>
910f59d7bSfvdl
1010f59d7bSfvdl#if defined(LIBC_SCCS)
11*92d1d441Suebayasi	RCSID("$NetBSD: ldiv.S,v 1.3 2014/05/22 15:01:56 uebayasi Exp $")
1210f59d7bSfvdl#endif
1310f59d7bSfvdl
1401b36ae8Smatt#ifdef WEAK_ALIAS
1501b36ae8SmattWEAK_ALIAS(ldiv, _ldiv)
1601b36ae8Smatt#endif
1701b36ae8Smatt
1801b36ae8Smatt#ifdef WEAK_ALIAS
1901b36ae8SmattENTRY(_ldiv)
2001b36ae8Smatt#else
2110f59d7bSfvdlENTRY(ldiv)
2201b36ae8Smatt#endif
2310f59d7bSfvdl	movq    %rdi, %rax
2410f59d7bSfvdl	cqto
2510f59d7bSfvdl	idivq   %rsi
2610f59d7bSfvdl	ret
27*92d1d441Suebayasi#ifdef WEAK_ALIAS
28*92d1d441SuebayasiEND(_ldiv)
29*92d1d441Suebayasi#else
30*92d1d441SuebayasiEND(ldiv)
31*92d1d441Suebayasi#endif
32