|
@@ -14,31 +14,29 @@ ENTRY(memmove)
|
|
|
ltgr %r4,%r4
|
|
|
lgr %r1,%r2
|
|
|
bzr %r14
|
|
|
+ aghi %r4,-1
|
|
|
clgr %r2,%r3
|
|
|
jnh .Lmemmove_forward
|
|
|
- la %r5,0(%r4,%r3)
|
|
|
+ la %r5,1(%r4,%r3)
|
|
|
clgr %r2,%r5
|
|
|
jl .Lmemmove_reverse
|
|
|
.Lmemmove_forward:
|
|
|
- aghi %r4,-1
|
|
|
srlg %r0,%r4,8
|
|
|
ltgr %r0,%r0
|
|
|
- jz .Lmemmove_rest
|
|
|
-.Lmemmove_loop:
|
|
|
+ jz .Lmemmove_forward_remainder
|
|
|
+.Lmemmove_forward_loop:
|
|
|
mvc 0(256,%r1),0(%r3)
|
|
|
la %r1,256(%r1)
|
|
|
la %r3,256(%r3)
|
|
|
- brctg %r0,.Lmemmove_loop
|
|
|
-.Lmemmove_rest:
|
|
|
+ brctg %r0,.Lmemmove_forward_loop
|
|
|
+.Lmemmove_forward_remainder:
|
|
|
larl %r5,.Lmemmove_mvc
|
|
|
ex %r4,0(%r5)
|
|
|
br %r14
|
|
|
.Lmemmove_reverse:
|
|
|
- aghi %r4,-1
|
|
|
-.Lmemmove_reverse_loop:
|
|
|
ic %r0,0(%r4,%r3)
|
|
|
stc %r0,0(%r4,%r1)
|
|
|
- brctg %r4,.Lmemmove_reverse_loop
|
|
|
+ brctg %r4,.Lmemmove_reverse
|
|
|
ic %r0,0(%r4,%r3)
|
|
|
stc %r0,0(%r4,%r1)
|
|
|
br %r14
|
|
@@ -70,12 +68,12 @@ ENTRY(memset)
|
|
|
srlg %r3,%r4,8
|
|
|
ltgr %r3,%r3
|
|
|
lgr %r1,%r2
|
|
|
- jz .Lmemset_clear_rest
|
|
|
+ jz .Lmemset_clear_remainder
|
|
|
.Lmemset_clear_loop:
|
|
|
xc 0(256,%r1),0(%r1)
|
|
|
la %r1,256(%r1)
|
|
|
brctg %r3,.Lmemset_clear_loop
|
|
|
-.Lmemset_clear_rest:
|
|
|
+.Lmemset_clear_remainder:
|
|
|
larl %r3,.Lmemset_xc
|
|
|
ex %r4,0(%r3)
|
|
|
br %r14
|
|
@@ -87,12 +85,12 @@ ENTRY(memset)
|
|
|
aghi %r4,-2
|
|
|
srlg %r3,%r4,8
|
|
|
ltgr %r3,%r3
|
|
|
- jz .Lmemset_fill_rest
|
|
|
+ jz .Lmemset_fill_remainder
|
|
|
.Lmemset_fill_loop:
|
|
|
mvc 1(256,%r1),0(%r1)
|
|
|
la %r1,256(%r1)
|
|
|
brctg %r3,.Lmemset_fill_loop
|
|
|
-.Lmemset_fill_rest:
|
|
|
+.Lmemset_fill_remainder:
|
|
|
larl %r3,.Lmemset_mvc
|
|
|
ex %r4,0(%r3)
|
|
|
br %r14
|
|
@@ -115,7 +113,7 @@ ENTRY(memcpy)
|
|
|
ltgr %r5,%r5
|
|
|
lgr %r1,%r2
|
|
|
jnz .Lmemcpy_loop
|
|
|
-.Lmemcpy_rest:
|
|
|
+.Lmemcpy_remainder:
|
|
|
larl %r5,.Lmemcpy_mvc
|
|
|
ex %r4,0(%r5)
|
|
|
br %r14
|
|
@@ -124,7 +122,7 @@ ENTRY(memcpy)
|
|
|
la %r1,256(%r1)
|
|
|
la %r3,256(%r3)
|
|
|
brctg %r5,.Lmemcpy_loop
|
|
|
- j .Lmemcpy_rest
|
|
|
+ j .Lmemcpy_remainder
|
|
|
.Lmemcpy_mvc:
|
|
|
mvc 0(1,%r1),0(%r3)
|
|
|
EXPORT_SYMBOL(memcpy)
|