aboutsummaryrefslogtreecommitdiff
path: root/sysdeps/unix/sysv/linux
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2004-12-15 20:50:54 +0000
committerUlrich Drepper <drepper@redhat.com>2004-12-15 20:50:54 +0000
commitdcac063c84882e0916d5777c6fbb3c718a0b5216 (patch)
tree3d6f044c6512d5dd354afa126d5c464a3d29c9cc /sysdeps/unix/sysv/linux
parenta2eae4ccb194af634ba6336cc2dce3d6c2bac8af (diff)
downloadglibc-dcac063c84882e0916d5777c6fbb3c718a0b5216.tar
glibc-dcac063c84882e0916d5777c6fbb3c718a0b5216.tar.gz
glibc-dcac063c84882e0916d5777c6fbb3c718a0b5216.tar.bz2
glibc-dcac063c84882e0916d5777c6fbb3c718a0b5216.zip
* sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S: Correct stack alignment. Clean up flag bit tests. * sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S: Correct stack alignment. Clean up flag bit tests. Remove redundent SP assignment. Add TOC register save/restore around function call.
Diffstat (limited to 'sysdeps/unix/sysv/linux')
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S6
1 files changed, 3 insertions, 3 deletions
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S b/sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S
index 891cf83631..f232284747 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S
@@ -48,7 +48,7 @@ ENTRY (BP_SYM (__clone))
beq- cr0,L(badargs)
/* Set up stack frame for parent. */
- stwu r1,-36(r1)
+ stwu r1,-32(r1)
#ifdef RESET_PID
stmw r28,16(r1)
#else
@@ -100,7 +100,7 @@ ENTRY (BP_SYM (__clone))
#endif
#ifdef RESET_PID
- andis. r0,r28,1 /* This is & CLONE_THREAD */
+ andis. r0,r28,CLONE_THREAD>>16
bne+ r0,L(oldpid)
andi. r0,r28,CLONE_VM
li r3,-1
@@ -130,7 +130,7 @@ L(parent):
lmw r30,16(r1)
# endif
#endif
- addi r1,r1,36
+ addi r1,r1,32
bnslr+
b JUMPTARGET(__syscall_error)