This is the mail archive of the
glibc-cvs@sourceware.org
mailing list for the glibc project.
Community source repository for glibc add-on ports branch, master, updated. glibc-2.13-21-g420d6dd
- From: jsm28 at sourceware dot org
- To: glibc-cvs at sourceware dot org
- Date: 1 Apr 2011 16:45:10 -0000
- Subject: Community source repository for glibc add-on ports branch, master, updated. glibc-2.13-21-g420d6dd
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "Community source repository for glibc add-on ports".
The branch, master has been updated
via 420d6ddd5bbabbcffb02ba6ce35403d61d78567f (commit)
from cea44847924fe22ee2e1e112ef46880b6adf8d5e (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
http://sources.redhat.com/git/gitweb.cgi?p=glibc-ports.git;a=commitdiff;h=420d6ddd5bbabbcffb02ba6ce35403d61d78567f
commit 420d6ddd5bbabbcffb02ba6ce35403d61d78567f
Author: Ryosei Takagi <ryosei@sm.sony.co.jp>
Date: Fri Apr 1 16:44:42 2011 +0000
Save and restore r7 and adjust stack on failure for ARM EABI ____longjmp_chk.
diff --git a/ChangeLog.arm b/ChangeLog.arm
index 60f2c0b..e655775 100644
--- a/ChangeLog.arm
+++ b/ChangeLog.arm
@@ -1,3 +1,8 @@
+2011-04-01 Ryosei Takagi <ryosei@sm.sony.co.jp>
+
+ * sysdeps/unix/sysv/linux/arm/eabi/____longjmp_chk.S:
+ Save and restore r7, and also adjust sp.
+
2011-04-01 Joseph Myers <joseph@codesourcery.com>
* sysdeps/unix/sysv/linux/arm/bits/fcntl.h (O_PATH): Define.
diff --git a/sysdeps/unix/sysv/linux/arm/eabi/____longjmp_chk.S b/sysdeps/unix/sysv/linux/arm/eabi/____longjmp_chk.S
index 508b4ba..9d8e464 100644
--- a/sysdeps/unix/sysv/linux/arm/eabi/____longjmp_chk.S
+++ b/sysdeps/unix/sysv/linux/arm/eabi/____longjmp_chk.S
@@ -52,13 +52,15 @@ longjmp_msg:
cfi_remember_state; \
cmp sp, reg; \
bls .Lok; \
+ str r7, [sp, #-4]!; \
+ cfi_adjust_cfa_offset (4); \
+ cfi_rel_offset (r7, 0); \
mov r5, r0; \
cfi_undefined (r5); \
mov r7, #SYS_ify(sigaltstack); \
- cfi_undefined (r7); \
mov r0, #0; \
- sub sp, sp, #16; /* >= sizeof (stack_t) */ \
- cfi_adjust_cfa_offset (16); \
+ sub sp, sp, #12; /* == sizeof (stack_t) */ \
+ cfi_adjust_cfa_offset (12); \
cfi_remember_state; \
mov r1, sp; \
swi #0; \
@@ -74,6 +76,11 @@ longjmp_msg:
cmp r2, r3; \
bhi .Lok2; \
.Lfail: \
+ add sp, sp, #12; \
+ cfi_adjust_cfa_offset (-12); \
+ ldr r7, [sp], #4; \
+ cfi_adjust_cfa_offset (-4); \
+ cfi_restore (r7); \
CALL_FAIL \
cfi_restore_state; \
.Lok2: \
-----------------------------------------------------------------------
Summary of changes:
ChangeLog.arm | 5 +++++
sysdeps/unix/sysv/linux/arm/eabi/____longjmp_chk.S | 13 ++++++++++---
2 files changed, 15 insertions(+), 3 deletions(-)
hooks/post-receive
--
Community source repository for glibc add-on ports