Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 4 Apr 2003 21:17:54 -0800 (PST)
From:      Peter Wemm <peter@FreeBSD.org>
To:        Perforce Change Reviews <perforce@freebsd.org>
Subject:   PERFORCE change 28173 for review
Message-ID:  <200304050517.h355Hs6i014203@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=28173

Change 28173 by peter@peter_overcee on 2003/04/04 21:17:34

	bcopy/zero/etc can move to C.

Affected files ...

.. //depot/projects/hammer/sys/x86_64/x86_64/support.s#8 edit

Differences ...

==== //depot/projects/hammer/sys/x86_64/x86_64/support.s#8 (text+ko) ====

@@ -43,193 +43,6 @@
 
 	.text
 
-/*
- * bcopy family
- * void bzero(void *buf, u_int len)
- */
-
-ENTRY(bzero)
-	pushl	%edi
-	movl	8(%esp),%edi
-	movl	12(%esp),%ecx
-	xorl	%eax,%eax
-	shrl	$2,%ecx
-	cld
-	rep
-	stosl
-	movl	12(%esp),%ecx
-	andl	$3,%ecx
-	rep
-	stosb
-	popl	%edi
-	ret
-
-ENTRY(pagezero)
-	pushl	%edi
-	pushl	%ebx
-
-	movl	12(%esp), %edi
-	movl	$1024, %ecx
-	cld
-
-	ALIGN_TEXT
-1:
-	xorl	%eax, %eax
-	repe
-	scasl
-	jnz	2f
-
-	popl	%ebx
-	popl	%edi
-	ret
-
-	ALIGN_TEXT
-
-2:
-	incl	%ecx
-	subl	$4, %edi
-
-	movl	%ecx, %edx
-	cmpl	$16, %ecx
-
-	jge	3f
-
-	movl	%edi, %ebx
-	andl	$0x3f, %ebx
-	shrl	%ebx
-	shrl	%ebx
-	movl	$16, %ecx
-	subl	%ebx, %ecx
-
-3:
-	subl	%ecx, %edx
-	rep
-	stosl
-
-	movl	%edx, %ecx
-	testl	%edx, %edx
-	jnz	1b
-
-	popl	%ebx
-	popl	%edi
-	ret
-
-/* fillw(pat, base, cnt) */
-ENTRY(fillw)
-	pushl	%edi
-	movl	8(%esp),%eax
-	movl	12(%esp),%edi
-	movl	16(%esp),%ecx
-	cld
-	rep
-	stosw
-	popl	%edi
-	ret
-
-ENTRY(bcopyb)
-	pushl	%esi
-	pushl	%edi
-	movl	12(%esp),%esi
-	movl	16(%esp),%edi
-	movl	20(%esp),%ecx
-	movl	%edi,%eax
-	subl	%esi,%eax
-	cmpl	%ecx,%eax			/* overlapping && src < dst? */
-	jb	1f
-	cld					/* nope, copy forwards */
-	rep
-	movsb
-	popl	%edi
-	popl	%esi
-	ret
-
-	ALIGN_TEXT
-1:
-	addl	%ecx,%edi			/* copy backwards. */
-	addl	%ecx,%esi
-	decl	%edi
-	decl	%esi
-	std
-	rep
-	movsb
-	popl	%edi
-	popl	%esi
-	cld
-	ret
-
-/*
- * bcopy(src, dst, cnt)
- *  ws@tools.de     (Wolfgang Solfrank, TooLs GmbH) +49-228-985800
- */
-ALTENTRY(ovbcopy)
-ENTRY(bcopy)
-	pushl	%esi
-	pushl	%edi
-	movl	12(%esp),%esi
-	movl	16(%esp),%edi
-	movl	20(%esp),%ecx
-
-	movl	%edi,%eax
-	subl	%esi,%eax
-	cmpl	%ecx,%eax			/* overlapping && src < dst? */
-	jb	1f
-
-	shrl	$2,%ecx				/* copy by 32-bit words */
-	cld					/* nope, copy forwards */
-	rep
-	movsl
-	movl	20(%esp),%ecx
-	andl	$3,%ecx				/* any bytes left? */
-	rep
-	movsb
-	popl	%edi
-	popl	%esi
-	ret
-
-	ALIGN_TEXT
-1:
-	addl	%ecx,%edi			/* copy backwards */
-	addl	%ecx,%esi
-	decl	%edi
-	decl	%esi
-	andl	$3,%ecx				/* any fractional bytes? */
-	std
-	rep
-	movsb
-	movl	20(%esp),%ecx			/* copy remainder by 32-bit words */
-	shrl	$2,%ecx
-	subl	$3,%esi
-	subl	$3,%edi
-	rep
-	movsl
-	popl	%edi
-	popl	%esi
-	cld
-	ret
-
-/*
- * Note: memcpy does not support overlapping copies
- */
-ENTRY(memcpy)
-	pushl	%edi
-	pushl	%esi
-	movl	12(%esp),%edi
-	movl	16(%esp),%esi
-	movl	20(%esp),%ecx
-	movl	%edi,%eax
-	shrl	$2,%ecx				/* copy by 32-bit words */
-	cld					/* nope, copy forwards */
-	rep
-	movsl
-	movl	20(%esp),%ecx
-	andl	$3,%ecx				/* any bytes left? */
-	rep
-	movsb
-	popl	%esi
-	popl	%edi
-	ret
-
-
 /*****************************************************************************/
 /* copyout and fubyte family                                                 */
 /*****************************************************************************/
@@ -682,14 +495,3 @@
 	pushq	$KCSEL
 	pushq	%rax
 	lretq
-
-/* void reset_dbregs() */
-ENTRY(reset_dbregs)
-	movl    $0,%eax
-	movl    %eax,%dr7     /* disable all breapoints first */
-	movl    %eax,%dr0
-	movl    %eax,%dr1
-	movl    %eax,%dr2
-	movl    %eax,%dr3
-	movl    %eax,%dr6
-	ret



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200304050517.h355Hs6i014203>