patch-2.4.26 linux-2.4.26/arch/x86_64/lib/copy_page.S
Next file: linux-2.4.26/arch/x86_64/lib/copy_user.S
Previous file: linux-2.4.26/arch/x86_64/kernel/x8664_ksyms.c
Back to the patch index
Back to the overall index
- Lines: 43
- Date:
2004-04-14 06:05:28.000000000 -0700
- Orig file:
linux-2.4.25/arch/x86_64/lib/copy_page.S
- Orig date:
2003-11-28 10:26:19.000000000 -0800
diff -urN linux-2.4.25/arch/x86_64/lib/copy_page.S linux-2.4.26/arch/x86_64/lib/copy_page.S
@@ -1,5 +1,7 @@
/* Written 2003 by Andi Kleen, based on a kernel by Evandro Menezes */
+#include <linux/config.h>
+
/* Don't use streaming store because it's better when the target
ends up in cache. */
@@ -8,10 +10,13 @@
.globl copy_page
.p2align 4
copy_page:
- prefetch (%rsi)
- prefetch 1*64(%rsi)
+
+ prefetcht0 (%rsi)
+ prefetcht0 1*64(%rsi)
+#ifdef CONFIG_MK8
prefetchw (%rdi)
prefetchw 1*64(%rdi)
+#endif
subq $3*8,%rsp
movq %rbx,(%rsp)
@@ -32,7 +37,7 @@
movq 48 (%rsi), %r11
movq 56 (%rsi), %r12
- prefetch 5*64(%rsi)
+ prefetcht0 5*64(%rsi)
movq %rax, (%rdi)
movq %rbx, 8 (%rdi)
@@ -43,7 +48,9 @@
movq %r11, 48 (%rdi)
movq %r12, 56 (%rdi)
+#ifdef CONFIG_MK8
prefetchw 5*64(%rdi)
+#endif
leaq 64 (%rsi), %rsi
leaq 64 (%rdi), %rdi
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)