about summary refs log tree commit diff
diff options
context:
space:
mode:
authorAndreas Schwab <schwab@linux-m68k.org>2012-05-02 10:24:39 +0200
committerAndreas Schwab <schwab@linux-m68k.org>2012-06-02 21:21:15 +0200
commit173f7220451fc0028836b8c529a1143e4fc14e9c (patch)
treefef1fdac46edbb232f7fb4722fd73855791ccd11
parentf34a1c6f5e40316196c45aec4415d582abb7ea79 (diff)
downloadglibc-173f7220451fc0028836b8c529a1143e4fc14e9c.tar.gz
glibc-173f7220451fc0028836b8c529a1143e4fc14e9c.tar.xz
glibc-173f7220451fc0028836b8c529a1143e4fc14e9c.zip
Move __mcount_internal from GLIBC_PRIVATE to GLIBC_2.16
-rw-r--r--ChangeLog9
-rw-r--r--sysdeps/powerpc/powerpc32/Versions3
-rw-r--r--sysdeps/powerpc/powerpc32/mcount.c17
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/nptl/libc.abilist1
4 files changed, 30 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 4243e52b96..adf6c88d80 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
+2012-06-02  Andreas Schwab  <schwab@linux-m68k.org>
+
+	[BZ #14042]
+	* sysdeps/powerpc/powerpc32/mcount.c: New file.
+	* sysdeps/powerpc/powerpc32/Versions (GLIBC_2.16): Add
+	__mcount_internal.
+	* sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/nptl/libc.abilist
+	(GLIBC_2.16): Likewise.
+
 2012-06-01  H.J. Lu  <hongjiu.lu@intel.com>
 
 	* sysdeps/unix/sysv/linux/x86_64/sys/io.h (outsw): Fix a typo.
diff --git a/sysdeps/powerpc/powerpc32/Versions b/sysdeps/powerpc/powerpc32/Versions
index ad4972e4dd..b0782fecd4 100644
--- a/sysdeps/powerpc/powerpc32/Versions
+++ b/sysdeps/powerpc/powerpc32/Versions
@@ -8,6 +8,9 @@ libc {
     __fixsfdi; __fixunssfdi;
     __floatdidf; __floatdisf;
   }
+  GLIBC_2.16 {
+    __mcount_internal;
+  }
   GLIBC_PRIVATE {
     __mcount_internal;
   }
diff --git a/sysdeps/powerpc/powerpc32/mcount.c b/sysdeps/powerpc/powerpc32/mcount.c
new file mode 100644
index 0000000000..0476bf61db
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/mcount.c
@@ -0,0 +1,17 @@
+#include <shlib-compat.h>
+
+#define __mcount_internal ___mcount_internal
+
+#include <gmon/mcount.c>
+
+#undef __mcount_internal
+
+/* __mcount_internal was added in glibc 2.15 with version GLIBC_PRIVATE,
+   but it should have been put in version GLIBC_2.15.  Mark the
+   GLIBC_PRIVATE version obsolete and add it to GLIBC_2.16 instead.  */
+default_symbol_version (___mcount_internal, __mcount_internal, GLIBC_2.16);
+
+#if SHLIB_COMPAT (libc, GLIBC_2_15, GLIBC_2_16)
+strong_alias (___mcount_internal, ___mcount_internal_private);
+symbol_version (___mcount_internal_private, __mcount_internal, GLIBC_PRIVATE);
+#endif
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/nptl/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/nptl/libc.abilist
index bacdb6aab0..706d2a9eb8 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/nptl/libc.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/nptl/libc.abilist
@@ -1762,6 +1762,7 @@ GLIBC_2.15
 GLIBC_2.16
  GLIBC_2.16 A
  __getauxval F
+ __mcount_internal F
  __poll_chk F
  __ppoll_chk F
  aligned_alloc F