[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

r5800 - in glibc-package/branches/eglibc-2.18/debian: . patches patches/arm64



Author: adconrad
Date: 2013-11-29 07:13:48 +0000 (Fri, 29 Nov 2013)
New Revision: 5800

Added:
   glibc-package/branches/eglibc-2.18/debian/patches/arm64/cvs-arm64-mcount-profiling.diff
Modified:
   glibc-package/branches/eglibc-2.18/debian/changelog
   glibc-package/branches/eglibc-2.18/debian/patches/series
Log:
debian/patches/arm64/cvs-arm64-mcount-profiling.diff: mcount profiling.

Modified: glibc-package/branches/eglibc-2.18/debian/changelog
===================================================================
--- glibc-package/branches/eglibc-2.18/debian/changelog	2013-11-29 07:11:07 UTC (rev 5799)
+++ glibc-package/branches/eglibc-2.18/debian/changelog	2013-11-29 07:13:48 UTC (rev 5800)
@@ -79,6 +79,7 @@
   * debian/rules.d/quilt.mk: Fix unpatch with only one arch patch applied.
   * debian/patches/arm64/cvs-arm64-sigcontext.diff: arm64 sigcontextinfo.h.
   * debian/patches/arm64/cvs-arm64-relocs.diff: Add arm64 reloc definitions.
+  * debian/patches/arm64/cvs-arm64-mcount-profiling.diff: mcount profiling.
 
   [ Samuel Thibault ]
   * patches/hurd-i386/libpthread_hurd_cond_timedwait.diff: Rebased.

Added: glibc-package/branches/eglibc-2.18/debian/patches/arm64/cvs-arm64-mcount-profiling.diff
===================================================================
--- glibc-package/branches/eglibc-2.18/debian/patches/arm64/cvs-arm64-mcount-profiling.diff	                        (rev 0)
+++ glibc-package/branches/eglibc-2.18/debian/patches/arm64/cvs-arm64-mcount-profiling.diff	2013-11-29 07:13:48 UTC (rev 5800)
@@ -0,0 +1,37 @@
+commit 8f5a90c270d2d1860e87764a14d739988c53e7b2
+Author: Marcus Shawcroft <marcus.shawcroft@linaro.org>
+Date:   Tue Sep 24 13:03:02 2013 +0100
+
+    [AArch64] Support __mcount profiling.
+
+diff --git a/ports/sysdeps/aarch64/machine-gmon.h b/ports/sysdeps/aarch64/machine-gmon.h
+index 4425965..5cc2941 100644
+--- a/ports/sysdeps/aarch64/machine-gmon.h
++++ b/ports/sysdeps/aarch64/machine-gmon.h
+@@ -16,10 +16,9 @@
+    License along with the GNU C Library; if not, see
+    <http://www.gnu.org/licenses/>.  */
+ 
+-/* GCC version 2 gives us a perfect magical function to get
+-   just the information we need:
+-     void *__builtin_return_address (unsigned int N)
+-   returns the return address of the frame N frames up.  */
++/* Accept 'frompc' address as argument from the function that calls
++   __mcount for profiling.  Use  __builtin_return_address (0)
++   for the 'selfpc' address.  */
+ 
+ #include <sysdep.h>
+ 
+@@ -28,8 +27,8 @@ static void mcount_internal (u_long frompc, u_long selfpc);
+ #define _MCOUNT_DECL(frompc, selfpc) \
+ static inline void mcount_internal (u_long frompc, u_long selfpc)
+ 
+-#define MCOUNT \
+-void __mcount (void)							      \
+-{									      \
+-  mcount_internal ((u_long) RETURN_ADDRESS (1), (u_long) RETURN_ADDRESS (0)); \
++#define MCOUNT                                                    \
++void __mcount (void *frompc)                                      \
++{                                                                 \
++  mcount_internal ((u_long) frompc, (u_long) RETURN_ADDRESS (0)); \
+ }

Modified: glibc-package/branches/eglibc-2.18/debian/patches/series
===================================================================
--- glibc-package/branches/eglibc-2.18/debian/patches/series	2013-11-29 07:11:07 UTC (rev 5799)
+++ glibc-package/branches/eglibc-2.18/debian/patches/series	2013-11-29 07:13:48 UTC (rev 5800)
@@ -59,6 +59,7 @@
 
 arm64/cvs-arm64-sigcontext.diff
 arm64/cvs-arm64-relocs.diff
+arm64/cvs-arm64-mcount-profiling.diff
 
 hppa/local-inlining.diff
 hppa/submitted-fadvise64_64.diff


Reply to: