;Schneller Speichervergleich
;Beide Buffer muessen Longwordaligned sein !

	XDEF	_fastmemcmp
	SECTION	CODE

_fastmemcmp:
	move.l	4(a7),a0
	move.l	8(a7),a1
	move.l	12(a7),d0
	move.w	d2,-(a7)
	move.w	d0,d2
	and.w	#%11,d2
	lsr.l	#2,d0
	beq.s	equal

	move.l	d0,d1
	swap	d1
	cmp.l	d0,d0
	bra.s	los
loop:	cmp.l	(a0)+,(a1)+
los:	dbne	d0,loop
	dbne	d1,loop
	bne.s	differ

	bra.s	los2
loop2:	cmp.b	(a0)+,(a1)+
	bne.s	differ
los2:	dbra	d2,loop2

equal:	move.w	(a7)+,d2
	moveq	#0,d0
	rts

differ:	move.w	(a7)+,d2
	moveq	#-1,d0
	rts

	END
