patch-2.4.20 linux-2.4.20/arch/mips64/lib/memcpy.S
Next file: linux-2.4.20/arch/mips64/lib/memset.S
Previous file: linux-2.4.20/arch/mips64/lib/ide-std.c
Back to the patch index
Back to the overall index
- Lines: 30
- Date:
Thu Nov 28 15:53:10 2002
- Orig file:
linux-2.4.19/arch/mips64/lib/memcpy.S
- Orig date:
Sun Sep 9 10:43:02 2001
diff -urN linux-2.4.19/arch/mips64/lib/memcpy.S linux-2.4.20/arch/mips64/lib/memcpy.S
@@ -501,7 +501,7 @@
r_word_align:
beqz t8, r_dword_align
sltiu t8, a2, 56
-
+
lh ta0, -2(a1)
dsubu a2, a2, 0x2
sh ta0, -2(a0)
@@ -762,8 +762,18 @@
dsubu a2, AT, ta0 # a2 bytes to go
daddu a0, ta0 # compute start address in a1
dsubu a0, a1
- j __bzero
- move a1, zero
+ /*
+ * Clear len bytes starting at dst. Can't call __bzero because it
+ * might modify len. An inefficient loop for these rare times...
+ */
+ beqz a2, 2f
+ dsubu a1, a2, 1
+1: sb zero, 0(a0)
+ daddu a0, a0, 1
+ bnez a1, 1b
+ dsubu a1, a1, 1
+2: jr ra
+ nop
s_fixup:
jr ra
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)