SysIII/usr/src/uts/vax/ml/copy.s

Compare this file to the similar file:
Show the results in this format:

	.align	2
	.globl	_copyseg
_copyseg:
	.word	0x0000
	mfpr	$IPL,-(sp)
	mtpr	$HIGH,$IPL	# turn off interrupts
	bisl3	$PG_V|PG_KR,4(ap),_Sysmap+CMAP1
	bisl3	$PG_V|PG_KW,8(ap),_Sysmap+CMAP2
	mtpr	$CADDR1,$TBIS	# invalidate entry for copy 
	mtpr	$CADDR2,$TBIS
	movc3	$512,CADDR1,CADDR2
	mtpr	(sp)+,$IPL
	ret

	.align	2
	.globl	_clearseg
_clearseg:
	.word	0x0000
	mfpr	$IPL,-(sp)
	mtpr	$HIGH,$IPL	# extreme pri level
	bisl3	$PG_V|PG_KW,4(ap),_Sysmap+CMAP1
	mtpr	$CADDR1,$TBIS
	movc5	$0,(r0),$0,$512,CADDR1
	mtpr	(sp)+,$IPL
	ret

	.align	2
	.globl	_copyin
_copyin:
	.word	0x0000
	movl	12(ap),r0
	movl	4(ap),r1
	cmpl	$512,r0
	bgeq	cishort
ciloop:
	prober	$3,$512,(r1)
	beql	ceret
	addl2	$512,r1
	acbl	$513,$-512,r0,ciloop
cishort:
	prober	$3,r0,(r1)
	beql	ceret
	brb	copymov

	.align	2
	.globl	_copyout
_copyout:
	.word	0x0000
	movl	12(ap),r0
	movl	8(ap),r1
	cmpl	$512,r0
	bgeq	coshort
coloop:
	probew	$3,$512,(r1)
	beql	ceret
	addl2	$512,r1
	acbl	$513,$-512,r0,coloop
coshort:
	probew	$3,r0,(r1)
	beql	ceret
copymov:
	movc3	12(ap),*4(ap),*8(ap)
	clrl	r0
	ret
ceret:
	mnegl	$1,r0
	ret