* Copyright (c) 1992, 1993
* The Regents of the University of California. All rights reserved.
* This software was developed by the Computer Systems Engineering group
* at Lawrence Berkeley Laboratory under DARPA contract BG 91-66 and
* contributed to Berkeley.
* %sccs.include.redist.c%
#if defined(LIBC_SCCS) && !defined(lint)
static char sccsid
[] = "@(#)moddi3.c 8.1 (Berkeley) %G%";
#endif /* LIBC_SCCS and not lint */
* Return remainder after dividing two signed quads.
* If -1/2 should produce -1 on this machine, this code is wrong.
ua
= -(u_quad_t
)a
, neg
= 1;
ub
= -(u_quad_t
)b
, neg
^= 1;
(void)__qdivrem(ua
, ub
, &ur
);