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.18-814-g47590bc


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  47590bce28616abbcee93457da91d65a7a07589b (commit)
      from  5d41dadf31bc8a2f9c34c40d52a442d3794e405c (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://sourceware.org/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=47590bce28616abbcee93457da91d65a7a07589b

commit 47590bce28616abbcee93457da91d65a7a07589b
Author: Will Newton <will.newton@linaro.org>
Date:   Thu Jan 23 11:11:24 2014 +0000

    ARM: Fix clone build for ARMv4
    
    ARMv4 does not have the blx instruction, so use the BLX macro which
    handles abstracting this for us.
    
    Build tested for armv7, armv4t and armv4.
    
    ports/ChangeLog.arm:
    
    2014-01-24  Will Newton  <will.newton@linaro.org>
    
    	[BZ #16499]
    	* sysdeps/unix/sysv/linux/arm/clone.S: Use BLX macro instead
    	of blx instruction directly.

diff --git a/ports/ChangeLog.arm b/ports/ChangeLog.arm
index 4371b3c..51bb76b 100644
--- a/ports/ChangeLog.arm
+++ b/ports/ChangeLog.arm
@@ -1,3 +1,9 @@
+2014-01-24  Will Newton  <will.newton@linaro.org>
+
+	[BZ #16499]
+	* sysdeps/unix/sysv/linux/arm/clone.S: Use BLX macro instead
+	of blx instruction directly.
+
 2014-01-14  Will Newton  <will.newton@linaro.org>
 
 	* sysdeps/arm/__longjmp.S: Don't apply pointer encryption
diff --git a/ports/sysdeps/unix/sysv/linux/arm/clone.S b/ports/sysdeps/unix/sysv/linux/arm/clone.S
index 44286a5..03fe9ab 100644
--- a/ports/sysdeps/unix/sysv/linux/arm/clone.S
+++ b/ports/sysdeps/unix/sysv/linux/arm/clone.S
@@ -88,14 +88,8 @@ PSEUDO_END (__clone)
 #endif
 	@ pick the function arg and call address off the stack and execute
 	ldr	r0, [sp, #4]
-#if defined(__ARM_ARCH_4T__) && defined(__THUMB_INTERWORK__)
 	ldr 	ip, [sp], #8
-	mov	lr, pc
-	bx      ip
-#else
-	ldr 	lr, [sp], #8
-	blx	lr
-#endif
+	BLX (ip)
 
 	@ and we are done, passing the return value through r0
 	b	PLTJMP(HIDDEN_JUMPTARGET(_exit))

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

Summary of changes:
 ports/ChangeLog.arm                       |    6 ++++++
 ports/sysdeps/unix/sysv/linux/arm/clone.S |    8 +-------
 2 files changed, 7 insertions(+), 7 deletions(-)


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]