git://git.onelab.eu
/
linux-2.6.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
linux 2.6.16.38 w/ vs2.0.3-rc1
[linux-2.6.git]
/
arch
/
s390
/
lib
/
uaccess.S
diff --git
a/arch/s390/lib/uaccess.S
b/arch/s390/lib/uaccess.S
index
90443e7
..
0028a54
100644
(file)
--- a/
arch/s390/lib/uaccess.S
+++ b/
arch/s390/lib/uaccess.S
@@
-98,31
+98,30
@@
__copy_to_user_asm:
.globl __copy_in_user_asm
# %r2 = from, %r3 = n, %r4 = to
__copy_in_user_asm:
.globl __copy_in_user_asm
# %r2 = from, %r3 = n, %r4 = to
__copy_in_user_asm:
- ahi %r3,-1
- jo 6f
sacf 256
sacf 256
- bras %r1,4f
-0: ahi %r3,257
-1: mvc 0(1,%r4),0(%r2)
+ bras 1,1f
+ mvc 0(1,%r4),0(%r2)
+0: mvc 0(256,%r4),0(%r2)
+ la %r2,256(%r2)
+ la %r4,256(%r4)
+1: ahi %r3,-256
+ jnm 0b
+2: ex %r3,0(%r1)
+ sacf 0
+ slr %r2,%r2
+ br 14
+3: mvc 0(1,%r4),0(%r2)
la %r2,1(%r2)
la %r4,1(%r4)
ahi %r3,-1
la %r2,1(%r2)
la %r4,1(%r4)
ahi %r3,-1
- jnz 1b
-2: lr %r2,%r3
- br %r14
-3: mvc 0(256,%r4),0(%r2)
- la %r2,256(%r2)
- la %r4,256(%r4)
-4: ahi %r3,-256
jnm 3b
jnm 3b
-5: ex %r3,4(%r1)
+4: lr %r2,%r3
sacf 0
sacf 0
-6: slr %r2,%r2
br %r14
.section __ex_table,"a"
br %r14
.section __ex_table,"a"
- .long
1b,2
b
- .long
3b,0
b
- .long
5b,0
b
+ .long
0b,3
b
+ .long
2b,3
b
+ .long
3b,4
b
.previous
.align 4
.previous
.align 4