summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog3
-rw-r--r--sysdeps/unix/sysv/linux/sh/makecontext.S2
2 files changed, 4 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 3ebc2aba18..49c98fb10b 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,8 @@
2012-06-23 Thomas Schwinge <thomas@codesourcery.com>
+ * sysdeps/unix/sysv/linux/sh/makecontext.S (__makecontext): Fix
+ calculation of ARGC > 4.
+
* sysdeps/unix/sysv/linux/sh/makecontext.S: Add comments and give more
meaningful names to some local labels.
diff --git a/sysdeps/unix/sysv/linux/sh/makecontext.S b/sysdeps/unix/sysv/linux/sh/makecontext.S
index 9e1358dba6..4a0207a223 100644
--- a/sysdeps/unix/sysv/linux/sh/makecontext.S
+++ b/sysdeps/unix/sysv/linux/sh/makecontext.S
@@ -36,7 +36,7 @@ ENTRY(__makecontext)
mov.l @(oSS_SP,r4), r1 /* r1 <- ucb->stack_base */
mov.l @(oSS_SIZE,r4), r2 /* r2 <- ucb->stack_size */
add r1, r2 /* r2 <- stack_top */
- cmp/gt r6, r3 /* 4 > argc? */
+ cmp/gt r3, r6 /* argc > 4? */
bf/s 1f
shlr2 r2 /* r2 <- stack_top / 4 */
sub r6, r2