* Copyright (c) 1991 The Regents of the University of California.
* %sccs.include.redist.c%
#if defined(LIBC_SCCS) && !defined(lint)
.asciz "@(#)udiv.s 5.5 (Berkeley) %G%"
#endif /* LIBC_SCCS and not lint */
* Unsigned division, PCC flavor.
* udiv() takes an ordinary dividend/divisor pair;
* audiv() takes a pointer to a dividend and an ordinary divisor.
jlss Leasy # big divisor: settle by comparison
jlss Lhard # big dividend: extended division
divl2 r2,r0 # small divisor and dividend: signed division
jgequ Lone # if dividend is as big or bigger, return 1
jlss La_easy # big divisor: settle by comparison
jlss La_hard # big dividend: extended division
divl2 r2,r0 # small divisor and dividend: signed division
movl r0,(r3) # leave the value of the assignment in r0
jgequ La_one # if dividend is as big or bigger, return 1