summaryrefslogtreecommitdiff
blob: 31c2fb732a75d0a084b69c9da5624fc7de07173e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
--- 2.4.10pre2aa1/arch/i386/lib/usercopy.c.~1~	Thu Aug 30 00:35:26 2001
+++ 2.4.10pre2aa1/arch/i386/lib/usercopy.c	Thu Aug 30 03:22:04 2001
@@ -166,6 +166,8 @@
 	unsigned long res, tmp;
 
 	__asm__ __volatile__(
+		"	testl %0, %0\n"
+		"	jz 3f\n"
 		"	andl %0,%%ecx\n"
 		"0:	repne; scasb\n"
 		"	setne %%al\n"
@@ -174,6 +176,8 @@
 		"1:\n"
 		".section .fixup,\"ax\"\n"
 		"2:	xorl %%eax,%%eax\n"
+		"	jmp 1b\n"
+		"3:	movb $1,%%al\n"
 		"	jmp 1b\n"
 		".previous\n"
 		".section __ex_table,\"a\"\n"