This is the mail archive of the libc-ports@sources.redhat.com mailing list for the libc-ports 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]

Remove SJLJ exceptions conditionals for ARM


When updating pthread_once for libc changes I noticed a conditional on 
__USING_SJLJ_EXCEPTIONS__.  This is irrelevant for ARM EABI and so I've 
applied this patch to remove such stray SJLJ exceptions conditionals.

diff --git a/ChangeLog.arm b/ChangeLog.arm
index 1d684d2..1737284 100644
--- a/ChangeLog.arm
+++ b/ChangeLog.arm
@@ -1,5 +1,10 @@
 2012-05-30  Joseph Myers  <joseph@codesourcery.com>
 
+	* sysdeps/arm/start.S [!__USING_SJLJ_EXCEPTIONS__]: Make code
+	unconditional.
+	* sysdeps/unix/sysv/linux/arm/nptl/pthread_once.c
+	[__USING_SJLJ_EXCEPTIONS__ && !__PIC__]: Remove conditional code.
+
 	* sysdeps/unix/sysv/linux/arm/nptl/pthread_once.c: Replace
 	_internal alias by hidden_def.
 
diff --git a/sysdeps/arm/start.S b/sysdeps/arm/start.S
index 7f3de8c..245d7aa 100644
--- a/sysdeps/arm/start.S
+++ b/sysdeps/arm/start.S
@@ -73,10 +73,8 @@
 	.globl _start
 	.type _start,#function
 _start:
-#if !defined(__USING_SJLJ_EXCEPTIONS__)
        /* Protect against unhandled exceptions.  */
        .fnstart
-#endif
 	/* Clear the frame pointer and link register since this is the outermost frame. */
 	mov fp, #0
 	mov lr, #0
@@ -138,11 +136,8 @@ _start:
 	.word main(GOT)
 #endif
 
-
-#if !defined(__USING_SJLJ_EXCEPTIONS__)
        .cantunwind
        .fnend
-#endif
 
 /* Define a symbol for the first piece of initialized data.  */
 	.data
diff --git a/sysdeps/unix/sysv/linux/arm/nptl/pthread_once.c b/sysdeps/unix/sysv/linux/arm/nptl/pthread_once.c
index eea1287..0c03f1c 100644
--- a/sysdeps/unix/sysv/linux/arm/nptl/pthread_once.c
+++ b/sysdeps/unix/sysv/linux/arm/nptl/pthread_once.c
@@ -87,12 +87,3 @@ __pthread_once (pthread_once_t *once_control, void (*init_routine) (void))
 }
 weak_alias (__pthread_once, pthread_once)
 hidden_def (__pthread_once)
-
-#if defined(__USING_SJLJ_EXCEPTIONS__) && !defined(__PIC__)
-/* When statically linked, if pthread_create is used, this file
-   will be brought in.  The exception handling code in GCC assumes
-   that if pthread_create is available, so are these.  */
-const void *include_pthread_getspecific attribute_hidden = pthread_getspecific;
-const void *include_pthread_setspecific attribute_hidden = pthread_setspecific;
-const void *include_pthread_key_create attribute_hidden = pthread_key_create;
-#endif

-- 
Joseph S. Myers
joseph@codesourcery.com


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