summaryrefslogtreecommitdiffstats
path: root/arch/powerpc/lib/copyuser_power7.S
diff options
context:
space:
mode:
authorAnton Blanchard <anton@samba.org>2014-02-04 16:09:02 +1100
committerAnton Blanchard <anton@samba.org>2014-04-23 10:05:23 +1000
commitb37c10d128a2fa3256d4e67c184177270eac4b86 (patch)
treea71357c1497ca0223ff05b7af59ec8e2c4b9c3e0 /arch/powerpc/lib/copyuser_power7.S
parent7cedd6014bfe353d4b552ed8d54d63f6e06e26ba (diff)
downloadlinux-b37c10d128a2fa3256d4e67c184177270eac4b86.tar.bz2
powerpc: Fix ABIv2 issues with stack offsets in assembly code
Fix STK_PARAM and use it instead of hardcoding ABIv1 offsets. Signed-off-by: Anton Blanchard <anton@samba.org>
Diffstat (limited to 'arch/powerpc/lib/copyuser_power7.S')
-rw-r--r--arch/powerpc/lib/copyuser_power7.S24
1 files changed, 12 insertions, 12 deletions
diff --git a/arch/powerpc/lib/copyuser_power7.S b/arch/powerpc/lib/copyuser_power7.S
index 62f0540418b9..db0fcbcc1d60 100644
--- a/arch/powerpc/lib/copyuser_power7.S
+++ b/arch/powerpc/lib/copyuser_power7.S
@@ -85,9 +85,9 @@
.Lexit:
addi r1,r1,STACKFRAMESIZE
.Ldo_err1:
- ld r3,48(r1)
- ld r4,56(r1)
- ld r5,64(r1)
+ ld r3,STK_PARAM(R3)(r1)
+ ld r4,STK_PARAM(R4)(r1)
+ ld r5,STK_PARAM(R5)(r1)
b __copy_tofrom_user_base
@@ -96,18 +96,18 @@ _GLOBAL(__copy_tofrom_user_power7)
cmpldi r5,16
cmpldi cr1,r5,4096
- std r3,48(r1)
- std r4,56(r1)
- std r5,64(r1)
+ std r3,STK_PARAM(R3)(r1)
+ std r4,STK_PARAM(R4)(r1)
+ std r5,STK_PARAM(R5)(r1)
blt .Lshort_copy
bgt cr1,.Lvmx_copy
#else
cmpldi r5,16
- std r3,48(r1)
- std r4,56(r1)
- std r5,64(r1)
+ std r3,STK_PARAM(R3)(r1)
+ std r4,STK_PARAM(R4)(r1)
+ std r5,STK_PARAM(R5)(r1)
blt .Lshort_copy
#endif
@@ -298,9 +298,9 @@ err1; stb r0,0(r3)
bl enter_vmx_usercopy
cmpwi cr1,r3,0
ld r0,STACKFRAMESIZE+16(r1)
- ld r3,STACKFRAMESIZE+48(r1)
- ld r4,STACKFRAMESIZE+56(r1)
- ld r5,STACKFRAMESIZE+64(r1)
+ ld r3,STACKFRAMESIZE+STK_PARAM(R3)(r1)
+ ld r4,STACKFRAMESIZE+STK_PARAM(R4)(r1)
+ ld r5,STACKFRAMESIZE+STK_PARAM(R5)(r1)
mtlr r0
/*