memmove.s

来自「h内核」· S 代码 · 共 32 行

S
32
字号
/* memmove.S: Simple memmove implementation. * * Copyright (C) 1997, 2004 David S. Miller (davem@redhat.com) * Copyright (C) 1996, 1997, 1998, 1999 Jakub Jelinek (jj@ultra.linux.cz) */	.text	.align		32	.globl		memmove	.type		memmove,#functionmemmove:		/* o0=dst o1=src o2=len */	mov		%o0, %g1	cmp		%o0, %o1	bleu,pt		%xcc, memcpy	 add		%o1, %o2, %g5	cmp		%g5, %o0	bleu,pt		%xcc, memcpy	 add		%o0, %o2, %o5	sub		%g5, 1, %o1	sub		%o5, 1, %o01:	ldub		[%o1], %g5	subcc		%o2, 1, %o2	sub		%o1, 1, %o1	stb		%g5, [%o0]	bne,pt		%icc, 1b	 sub		%o0, 1, %o0	retl	 mov		%g1, %o0	.size		memmove, .-memmove

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?