This is the mail archive of the glibc-cvs@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

GNU C Library master sources branch master updated. glibc-2.17-380-g7f86996


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 "GNU C Library master sources".

The branch, master has been updated
       via  7f86996afc72481789c01ccc392e542d3318ddc0 (commit)
      from  38435a9aff78b013067d1cccf7b9822af6e28cfb (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.git;a=commitdiff;h=7f86996afc72481789c01ccc392e542d3318ddc0

commit 7f86996afc72481789c01ccc392e542d3318ddc0
Author: Roland McGrath <roland@hack.frob.com>
Date:   Mon Mar 11 16:45:25 2013 -0700

    ARM: Consolidate setjmp details in include/bits/setjmp.h file.

diff --git a/ports/ChangeLog.arm b/ports/ChangeLog.arm
index 34a6cf3..9db0b1b 100644
--- a/ports/ChangeLog.arm
+++ b/ports/ChangeLog.arm
@@ -1,5 +1,13 @@
 2013-03-11  Roland McGrath  <roland@hack.frob.com>
 
+	* sysdeps/arm/bits/setjmp.h: Test [!__ASSEMBLER__] rather than [!_ASM].
+	* sysdeps/arm/jmpbuf-offsets.h: File removed.
+	* sysdeps/arm/jmpbuf-unwind.h: Don't #include it.
+	* sysdeps/arm/include/bits/setjmp.h: New file.
+	* sysdeps/arm/setjmp.S (_SETJMP_H, _ASM): Macros removed.
+	Use JMP_BUF_REGLIST macro.
+	* sysdeps/arm/__longjmp.S: Likewise.
+
 	* sysdeps/arm/memcpy.S: Convert to unified assembly syntax.
 	* sysdeps/arm/memmove.S: Likewise.
 	* sysdeps/arm/memset.S: Likewise.
diff --git a/ports/sysdeps/arm/__longjmp.S b/ports/sysdeps/arm/__longjmp.S
index 1d5d56b..becba93 100644
--- a/ports/sysdeps/arm/__longjmp.S
+++ b/ports/sysdeps/arm/__longjmp.S
@@ -19,8 +19,6 @@
 /* ??? Needs more rearrangement for the LDM to handle thumb mode.  */
 #define NO_THUMB
 #include <sysdep.h>
-#define _SETJMP_H
-#define _ASM
 #include <bits/setjmp.h>
 #include <rtld-global-offsets.h>
 #include <arm-features.h>
@@ -37,7 +35,7 @@ ENTRY (__longjmp)
 	cfi_undefined (r4)
 	CHECK_SP (r4)
 #endif
-	ldmia	ip!, {v1-v6, sl, fp, sp, lr}
+	ldmia	ip!, JMP_BUF_REGLIST
 	cfi_restore (v1)
 	cfi_restore (v2)
 	cfi_restore (v3)
diff --git a/ports/sysdeps/arm/bits/setjmp.h b/ports/sysdeps/arm/bits/setjmp.h
index 1f7ddd3..21bbf7f 100644
--- a/ports/sysdeps/arm/bits/setjmp.h
+++ b/ports/sysdeps/arm/bits/setjmp.h
@@ -24,7 +24,7 @@
 # error "Never include <bits/setjmp.h> directly; use <setjmp.h> instead."
 #endif
 
-#ifndef _ASM
+#ifndef __ASSEMBLER__
 /* The exact set of registers saved may depend on the particular core
    in use, as some coprocessor registers may need to be saved.  The C
    Library ABI requires that the buffer be 8-byte aligned, and
diff --git a/ports/sysdeps/arm/jmpbuf-offsets.h b/ports/sysdeps/arm/include/bits/setjmp.h
similarity index 58%
rename from ports/sysdeps/arm/jmpbuf-offsets.h
rename to ports/sysdeps/arm/include/bits/setjmp.h
index beeccbb..23d8f75 100644
--- a/ports/sysdeps/arm/jmpbuf-offsets.h
+++ b/ports/sysdeps/arm/include/bits/setjmp.h
@@ -1,5 +1,5 @@
-/* Private macros for accessing __jmp_buf contents.  ARM EABI version.
-   Copyright (C) 2007-2013 Free Software Foundation, Inc.
+/* Private jmp_buf-related definitions.  ARM EABI version.
+   Copyright (C) 2013 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -16,4 +16,19 @@
    License along with the GNU C Library.  If not, see
    <http://www.gnu.org/licenses/>.  */
 
+#ifndef _INCLUDE_BITS_SETJMP_H
+#define _INCLUDE_BITS_SETJMP_H 1
+
+#ifndef __ASSEMBLER__
+/* Get the public declarations.  */
+# include <sysdeps/arm/bits/setjmp.h>
+#endif
+
+/* Register list for a ldm/stm instruction to load/store
+   the general registers from a __jmp_buf.  */
+#define JMP_BUF_REGLIST		{v1-v6, sl, fp, sp, lr}
+
+/* Index of __jmp_buf where the sp register resides.  */
 #define __JMP_BUF_SP		8
+
+#endif  /* include/bits/setjmp.h */
diff --git a/ports/sysdeps/arm/jmpbuf-unwind.h b/ports/sysdeps/arm/jmpbuf-unwind.h
index 7f7770a..0863540 100644
--- a/ports/sysdeps/arm/jmpbuf-unwind.h
+++ b/ports/sysdeps/arm/jmpbuf-unwind.h
@@ -16,7 +16,6 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <setjmp.h>
-#include <jmpbuf-offsets.h>
 #include <stdint.h>
 #include <unwind.h>
 
diff --git a/ports/sysdeps/arm/setjmp.S b/ports/sysdeps/arm/setjmp.S
index 6776cab..c41a1ba 100644
--- a/ports/sysdeps/arm/setjmp.S
+++ b/ports/sysdeps/arm/setjmp.S
@@ -19,8 +19,6 @@
 /* ??? Needs more rearrangement for the STM to handle thumb mode.  */
 #define NO_THUMB
 #include <sysdep.h>
-#define _SETJMP_H
-#define _ASM
 #include <bits/setjmp.h>
 #include <rtld-global-offsets.h>
 #include <arm-features.h>
@@ -29,7 +27,7 @@ ENTRY (__sigsetjmp)
 	mov	ip, r0
 
 	/* Save registers */
-	stmia	ip!, {v1-v6, sl, fp, sp, lr}
+	stmia	ip!, JMP_BUF_REGLIST
 
 #if !defined ARM_ASSUME_NO_IWMMXT || defined __SOFTFP__
 # define NEED_HWCAP 1

-----------------------------------------------------------------------

Summary of changes:
 ports/ChangeLog.arm                                |    8 ++++++++
 ports/sysdeps/arm/__longjmp.S                      |    4 +---
 ports/sysdeps/arm/bits/setjmp.h                    |    2 +-
 .../{jmpbuf-offsets.h => include/bits/setjmp.h}    |   19 +++++++++++++++++--
 ports/sysdeps/arm/jmpbuf-unwind.h                  |    1 -
 ports/sysdeps/arm/setjmp.S                         |    4 +---
 6 files changed, 28 insertions(+), 10 deletions(-)
 rename ports/sysdeps/arm/{jmpbuf-offsets.h => include/bits/setjmp.h} (58%)


hooks/post-receive
-- 
GNU C Library master sources


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]