File:  [Research Unix] / researchv10no / cmd / PDP11 / crt / udiv.s
Revision 1.1.1.1 (vendor branch): download - view: text, annotated - select for diffs
Tue Apr 24 17:21:35 2018 UTC (8 years, 1 month ago) by root
Branches: belllabs, MAIN
CVS tags: researchv10, HEAD
researchv10 Norman

/ unsigned divide routine

.globl	udiv, urem

udiv:
	cmp	r1,$1
	ble	9f
	mov	r1,-(sp)
	mov	r0,r1
	clr	r0
	div	(sp)+,r0
	rts	pc
9:
	bne	9f
	tst	r0
	rts	pc
9:
	cmp	r1,r0
	blos	9f
	clr	r0
	rts	pc
9:
	mov	$1,r0
	rts	pc

urem:
	cmp	r1,$1
	ble	9f
	mov	r1,-(sp)
	mov	r0,r1
	clr	r0
	div	(sp)+,r0
	mov	r1,r0
	rts	pc
9:
	bne	9f
	clr	r0
	rts	pc
9:
	cmp	r0,r1
	blo	9f
	sub	r1,r0
9:
	tst	r0
	rts	pc

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.