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.15-905-gf16af74


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  f16af742175c8bdf536ebd97bf9fb33db925f02e (commit)
       via  d86813a021b6200cf2ff75041abc101cefcb2da2 (commit)
      from  d9754f5572a0bde769804157cf2e47a47fd65b9c (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=f16af742175c8bdf536ebd97bf9fb33db925f02e

commit f16af742175c8bdf536ebd97bf9fb33db925f02e
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Tue May 15 14:25:31 2012 -0700

    Use R*_LP to load pointer and operate on stack

diff --git a/nptl/ChangeLog b/nptl/ChangeLog
index 133af22..fc91c72 100644
--- a/nptl/ChangeLog
+++ b/nptl/ChangeLog
@@ -1,5 +1,17 @@
 2012-05-15  H.J. Lu  <hongjiu.lu@intel.com>
 
+	* sysdeps/unix/sysv/linux/x86_64/lowlevellock.h (lll_lock): Load
+	futex pointer into RDI_LP.  Use RSP_LP to operate on stack.
+	(lll_robust_lock): Likewise.
+	(lll_cond_lock): Likewise.
+	(lll_robust_cond_lock): Likewise.
+	(lll_timedlock): Likewise.
+	(lll_robust_timedlock): Likewise.
+	(lll_unlock): Likewise.
+	(lll_robust_unlock): Likewise.
+
+2012-05-15  H.J. Lu  <hongjiu.lu@intel.com>
+
 	* sysdeps/unix/sysv/linux/x86_64/pthread_cond_signal.S: Use
 	LP_OP(cmp) and RCX_LP on dep_mutex pointer.
 
diff --git a/nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.h b/nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.h
index 1f5b848..ad14185 100644
--- a/nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.h
+++ b/nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.h
@@ -1,4 +1,5 @@
-/* Copyright (C) 2002-2004, 2006-2008, 2009 Free Software Foundation, Inc.
+/* Copyright (C) 2002-2004, 2006-2008, 2009, 2012
+   Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
 
@@ -298,10 +299,10 @@ LLL_STUB_UNWIND_INFO_END
 			   ".subsection 1\n\t"				      \
 			   ".type _L_lock_%=, @function\n"		      \
 			   "_L_lock_%=:\n"				      \
-			   "1:\tleaq %2, %%rdi\n"			      \
-			   "2:\tsubq $128, %%rsp\n"			      \
+			   "1:\tlea %2, %%" RDI_LP "\n"			      \
+			   "2:\tsub $128, %%" RSP_LP "\n"		      \
 			   "3:\tcallq __lll_lock_wait_private\n"	      \
-			   "4:\taddq $128, %%rsp\n"			      \
+			   "4:\tadd $128, %%" RSP_LP "\n"		      \
 			   "5:\tjmp 24f\n"				      \
 			   "6:\t.size _L_lock_%=, 6b-1b\n\t"		      \
 			   ".previous\n"				      \
@@ -316,10 +317,10 @@ LLL_STUB_UNWIND_INFO_END
 			   ".subsection 1\n\t"				      \
 			   ".type _L_lock_%=, @function\n"		      \
 			   "_L_lock_%=:\n"				      \
-			   "1:\tleaq %2, %%rdi\n"			      \
-			   "2:\tsubq $128, %%rsp\n"			      \
+			   "1:\tlea %2, %%" RDI_LP "\n"			      \
+			   "2:\tsub $128, %%" RSP_LP "\n"		      \
 			   "3:\tcallq __lll_lock_wait\n"		      \
-			   "4:\taddq $128, %%rsp\n"			      \
+			   "4:\tadd $128, %%" RSP_LP "\n"		      \
 			   "5:\tjmp 24f\n"				      \
 			   "6:\t.size _L_lock_%=, 6b-1b\n\t"		      \
 			   ".previous\n"				      \
@@ -338,10 +339,10 @@ LLL_STUB_UNWIND_INFO_END
 		      ".subsection 1\n\t"				      \
 		      ".type _L_robust_lock_%=, @function\n"		      \
 		      "_L_robust_lock_%=:\n"				      \
-		      "1:\tleaq %2, %%rdi\n"				      \
-		      "2:\tsubq $128, %%rsp\n"				      \
+		      "1:\tlea %2, %%" RDI_LP "\n"			      \
+		      "2:\tsub $128, %%" RSP_LP "\n"			      \
 		      "3:\tcallq __lll_robust_lock_wait\n"		      \
-		      "4:\taddq $128, %%rsp\n"				      \
+		      "4:\tadd $128, %%" RSP_LP "\n"			      \
 		      "5:\tjmp 24f\n"					      \
 		      "6:\t.size _L_robust_lock_%=, 6b-1b\n\t"		      \
 		      ".previous\n"					      \
@@ -361,10 +362,10 @@ LLL_STUB_UNWIND_INFO_END
 			 ".subsection 1\n\t"				      \
 			 ".type _L_cond_lock_%=, @function\n"		      \
 			 "_L_cond_lock_%=:\n"				      \
-			 "1:\tleaq %2, %%rdi\n"				      \
-			 "2:\tsubq $128, %%rsp\n"			      \
+			 "1:\tlea %2, %%" RDI_LP "\n"			      \
+			 "2:\tsub $128, %%" RSP_LP "\n"			      \
 			 "3:\tcallq __lll_lock_wait\n"			      \
-			 "4:\taddq $128, %%rsp\n"			      \
+			 "4:\tadd $128, %%" RSP_LP "\n"			      \
 			 "5:\tjmp 24f\n"				      \
 			 "6:\t.size _L_cond_lock_%=, 6b-1b\n\t"		      \
 			 ".previous\n"					      \
@@ -383,10 +384,10 @@ LLL_STUB_UNWIND_INFO_END
 		      ".subsection 1\n\t"				      \
 		      ".type _L_robust_cond_lock_%=, @function\n"	      \
 		      "_L_robust_cond_lock_%=:\n"			      \
-		      "1:\tleaq %2, %%rdi\n"				      \
-		      "2:\tsubq $128, %%rsp\n"				      \
+		      "1:\tlea %2, %%" RDI_LP "\n"			      \
+		      "2:\tsub $128, %%" RSP_LP "\n"			      \
 		      "3:\tcallq __lll_robust_lock_wait\n"		      \
-		      "4:\taddq $128, %%rsp\n"				      \
+		      "4:\tadd $128, %%" RSP_LP "\n"			      \
 		      "5:\tjmp 24f\n"					      \
 		      "6:\t.size _L_robust_cond_lock_%=, 6b-1b\n\t"	      \
 		      ".previous\n"					      \
@@ -406,11 +407,11 @@ LLL_STUB_UNWIND_INFO_END
 		       ".subsection 1\n\t"				      \
 		       ".type _L_timedlock_%=, @function\n"		      \
 		       "_L_timedlock_%=:\n"				      \
-		       "1:\tleaq %4, %%rdi\n"				      \
+		       "1:\tlea %4, %%" RDI_LP "\n"			      \
 		       "0:\tmov %8, %%" RDX_LP "\n"			      \
-		       "2:\tsubq $128, %%rsp\n"				      \
+		       "2:\tsub $128, %%" RSP_LP "\n"			      \
 		       "3:\tcallq __lll_timedlock_wait\n"		      \
-		       "4:\taddq $128, %%rsp\n"				      \
+		       "4:\tadd $128, %%" RSP_LP "\n"			      \
 		       "5:\tjmp 24f\n"					      \
 		       "6:\t.size _L_timedlock_%=, 6b-1b\n\t"		      \
 		       ".previous\n"					      \
@@ -430,11 +431,11 @@ LLL_STUB_UNWIND_INFO_END
 		       ".subsection 1\n\t"				      \
 		       ".type _L_robust_timedlock_%=, @function\n"	      \
 		       "_L_robust_timedlock_%=:\n"			      \
-		       "1:\tleaq %4, %%rdi\n"				      \
+		       "1:\tlea %4, %%" RDI_LP "\n"			      \
 		       "0:\tmov %8, %%" RDX_LP "\n"			      \
-		       "2:\tsubq $128, %%rsp\n"				      \
+		       "2:\tsub $128, %%" RSP_LP "\n"			      \
 		       "3:\tcallq __lll_robust_timedlock_wait\n"	      \
-		       "4:\taddq $128, %%rsp\n"				      \
+		       "4:\tadd $128, %%" RSP_LP "\n"			      \
 		       "5:\tjmp 24f\n"					      \
 		       "6:\t.size _L_robust_timedlock_%=, 6b-1b\n\t"	      \
 		       ".previous\n"					      \
@@ -468,10 +469,10 @@ LLL_STUB_UNWIND_INFO_END
 			   ".subsection 1\n\t"				      \
 			   ".type _L_unlock_%=, @function\n"		      \
 			   "_L_unlock_%=:\n"				      \
-			   "1:\tleaq %0, %%rdi\n"			      \
-			   "2:\tsubq $128, %%rsp\n"			      \
+			   "1:\tlea %0, %%" RDI_LP "\n"			      \
+			   "2:\tsub $128, %%" RSP_LP "\n"		      \
 			   "3:\tcallq __lll_unlock_wake_private\n"	      \
-			   "4:\taddq $128, %%rsp\n"			      \
+			   "4:\tadd $128, %%" RSP_LP "\n"		      \
 			   "5:\tjmp 24f\n"				      \
 			   "6:\t.size _L_unlock_%=, 6b-1b\n\t"		      \
 			   ".previous\n"				      \
@@ -485,10 +486,10 @@ LLL_STUB_UNWIND_INFO_END
 			   ".subsection 1\n\t"				      \
 			   ".type _L_unlock_%=, @function\n"		      \
 			   "_L_unlock_%=:\n"				      \
-			   "1:\tleaq %0, %%rdi\n"			      \
-			   "2:\tsubq $128, %%rsp\n"			      \
+			   "1:\tlea %0, %%" RDI_LP "\n"			      \
+			   "2:\tsub $128, %%" RSP_LP "\n"		      \
 			   "3:\tcallq __lll_unlock_wake\n"		      \
-			   "4:\taddq $128, %%rsp\n"			      \
+			   "4:\tadd $128, %%" RSP_LP "\n"		      \
 			   "5:\tjmp 24f\n"				      \
 			   "6:\t.size _L_unlock_%=, 6b-1b\n\t"		      \
 			   ".previous\n"				      \
@@ -508,10 +509,10 @@ LLL_STUB_UNWIND_INFO_END
 			".subsection 1\n\t"				      \
 			".type _L_robust_unlock_%=, @function\n"	      \
 			"_L_robust_unlock_%=:\n"			      \
-			"1:\tleaq %0, %%rdi\n"				      \
-			"2:\tsubq $128, %%rsp\n"			      \
+			"1:\tlea %0, %%" RDI_LP "\n"			      \
+			"2:\tsub $128, %%" RSP_LP "\n"			      \
 			"3:\tcallq __lll_unlock_wake\n"			      \
-			"4:\taddq $128, %%rsp\n"			      \
+			"4:\tadd $128, %%" RSP_LP "\n"			      \
 			"5:\tjmp 24f\n"					      \
 			"6:\t.size _L_robust_unlock_%=, 6b-1b\n\t"	      \
 			".previous\n"					      \

http://sources.redhat.com/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=d86813a021b6200cf2ff75041abc101cefcb2da2

commit d86813a021b6200cf2ff75041abc101cefcb2da2
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Tue May 15 14:24:00 2012 -0700

    Use R*_LP to call _dl_profile_fixup and frame size

diff --git a/ChangeLog b/ChangeLog
index 214ef35..06d3a4f 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,11 @@
 2012-05-15  H.J. Lu  <hongjiu.lu@intel.com>
 
+	* sysdeps/x86_64/dl-trampoline.h: Use R*_LP to pass arguments
+	and access return value for _dl_profile_fixup.  Use R10_LP to
+	load frame size.
+
+2012-05-15  H.J. Lu  <hongjiu.lu@intel.com>
+
 	* sysdeps/unix/sysv/linux/x86_64/x32/init-first.c: New.
 
 2012-05-15  H.J. Lu  <hongjiu.lu@intel.com>
diff --git a/sysdeps/x86_64/dl-trampoline.h b/sysdeps/x86_64/dl-trampoline.h
index 4c18e69..0f3de3d 100644
--- a/sysdeps/x86_64/dl-trampoline.h
+++ b/sysdeps/x86_64/dl-trampoline.h
@@ -40,14 +40,14 @@
 	vmovdqa %xmm7, (LR_SIZE + XMM_SIZE*7)(%rsp)
 #endif
 
-	movq %rsp, %rcx		# La_x86_64_regs pointer to %rcx.
-	movq 48(%rbx), %rdx	# Load return address if needed.
-	movq 40(%rbx), %rsi	# Copy args pushed by PLT in register.
-	movq 32(%rbx), %rdi	# %rdi: link_map, %rsi: reloc_index
-	leaq 16(%rbx), %r8
+	mov %RSP_LP, %RCX_LP	# La_x86_64_regs pointer to %rcx.
+	mov 48(%rbx), %RDX_LP	# Load return address if needed.
+	mov 40(%rbx), %RSI_LP	# Copy args pushed by PLT in register.
+	mov 32(%rbx), %RDI_LP	# %rdi: link_map, %rsi: reloc_index
+	lea 16(%rbx), %R8_LP	# Address of framesize
 	call _dl_profile_fixup	# Call resolver.
 
-	movq %rax, %r11		# Save return value.
+	mov %RAX_LP, %R11_LP	# Save return value.
 
 	movq 8(%rbx), %rax	# Get back register content.
 	movq LR_RDX_OFFSET(%rsp), %rdx
@@ -140,8 +140,8 @@
 
 1:
 #endif
-	movq 16(%rbx), %r10	# Anything in framesize?
-	testq %r10, %r10
+	mov  16(%rbx), %R10_LP	# Anything in framesize?
+	test %R10_LP, %R10_LP
 	jns 3f
 
 	/* There's nothing in the frame size, so there

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

Summary of changes:
 ChangeLog                                          |    6 ++
 nptl/ChangeLog                                     |   12 ++++
 nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.h |   63 ++++++++++----------
 sysdeps/x86_64/dl-trampoline.h                     |   16 +++---
 4 files changed, 58 insertions(+), 39 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]