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 ibm/2.19/master updated. glibc-2.19-34-g010c023


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, ibm/2.19/master has been updated
       via  010c023685495f4cd907b7bf7d15375edcbe1ead (commit)
       via  6f0aba1acab171bd853905b66c551336aa0adcf9 (commit)
      from  e40df8c4677611afc48601472675593dfd087e4b (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=010c023685495f4cd907b7bf7d15375edcbe1ead

commit 010c023685495f4cd907b7bf7d15375edcbe1ead
Author: Adhemerval Zanella <azanella@linux.vnet.ibm.com>
Date:   Fri Jun 6 09:37:07 2014 -0500

    PowerPC: Fix optimized strncat strlen call
    
    This patch fixes the optimized ppc64/power7 strncat strlen call for
    static build without ifunc enabled.  The strlen symbol to call in such
    situation is just strlen, instead of __GI_strlen (since the __GI_
    alias is just created for shared objects).
    
    It is a backport of ed36bfa18faf9be457575568e64b8409e46caa22.

diff --git a/ChangeLog b/ChangeLog
index 2b48b1f..d7fd998 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,8 @@
 2014-06-06  Adhemerval Zanella  <azanella@linux.vnet.ibm.com>
 
+	* sysdeps/powerpc/powerpc64/power7/strncat.S [STRLEN]: Define it as
+	strlen for non SHARED builds.
+
 	* sysdeps/powerpc/powerpc32/power6x/fpu/Implies: New file.
 	* sysdeps/powerpc/powerpc64/power6x/fpu/Implies: new file.
 	* sysdeps/powerpc/powerpc64/power6x/multiarch/Implies: New file.
diff --git a/sysdeps/powerpc/powerpc64/power7/strncat.S b/sysdeps/powerpc/powerpc64/power7/strncat.S
index e7e36a4..f5ea52d 100644
--- a/sysdeps/powerpc/powerpc64/power7/strncat.S
+++ b/sysdeps/powerpc/powerpc64/power7/strncat.S
@@ -40,7 +40,11 @@
 #ifndef STRLEN
 /* For builds with no IFUNC support, local calls should be made to internal
    GLIBC symbol (created by libc_hidden_builtin_def).  */
-# define STRLEN   __GI_strlen
+# ifdef SHARED
+#  define STRLEN   __GI_strlen
+# else
+#  define STRLEN   strlen
+# endif
 #endif
 
 #define	FRAMESIZE	(FRAME_MIN_SIZE+32)

http://sourceware.org/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=6f0aba1acab171bd853905b66c551336aa0adcf9

commit 6f0aba1acab171bd853905b66c551336aa0adcf9
Author: Adhemerval Zanella <azanella@linux.vnet.ibm.com>
Date:   Tue Apr 8 17:25:14 2014 -0500

    PowerPC: Fix --disable-multi-arch builds
    
    This patch fixes some powerpc32 and powerpc64 builds with
    --disable-multi-arch option along with different --with-cpu=powerN.
    It cleanups the Implies directories by removing the multiarch
    folder for non multiarch config and also fixing two assembly
    implementations: powerpc64/power7/strncat.S that is calling the
    wrong strlen; and power8/fpu/s_isnan.S that misses the hidden_def and
    weak_alias directives.
    
    It is a backport of de21c33c068c8e39afb5711613a7c083c11ce6a1.

diff --git a/ChangeLog b/ChangeLog
index 0013bcb..2b48b1f 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,20 @@
+2014-06-06  Adhemerval Zanella  <azanella@linux.vnet.ibm.com>
+
+	* sysdeps/powerpc/powerpc32/power6x/fpu/Implies: New file.
+	* sysdeps/powerpc/powerpc64/power6x/fpu/Implies: new file.
+	* sysdeps/powerpc/powerpc64/power6x/multiarch/Implies: New file.
+	* sysdeps/powerpc/powerpc64/power5+/fpu/Implies: Remove multiarch
+	imply folder.
+	* sysdeps/powerpc/powerpc64/power5/fpu/Implies: Likewise.
+	* sysdeps/powerpc/powerpc64/power7/fpu/Implies: Likewise.
+	* sysdeps/powerpc/powerpc64/power8/fpu/Implies: Likewise.
+	* sysdeps/powerpc/powerpc64/power6x/fpu/multiarch/Implies: Adjust
+	correct imply path.
+	* sysdeps/powerpc/powerpc64/power7/strncat.S (STRLEN): Define correct
+	strlen symbol for non multi-arch builds.
+	* sysdeps/powerpc/powerpc64/power8/fpu/s_isnan.S (__isnan): Add
+	missing hidden_def and weak_alias.
+
 2014-05-26  Adhemerval Zanella  <azanella@linux.vnet.ibm.com>
 
 	* sysdeps/powerpc/powerpc32/power4/memset.S (memset): Replace insrdi
diff --git a/sysdeps/powerpc/powerpc32/power6x/fpu/Implies b/sysdeps/powerpc/powerpc32/power6x/fpu/Implies
new file mode 100644
index 0000000..d53ce25
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power6x/fpu/Implies
@@ -0,0 +1 @@
+powerpc/powerpc32/power6/fpu
diff --git a/sysdeps/powerpc/powerpc64/power5+/fpu/Implies b/sysdeps/powerpc/powerpc64/power5+/fpu/Implies
index c0e6784..f00c50f 100644
--- a/sysdeps/powerpc/powerpc64/power5+/fpu/Implies
+++ b/sysdeps/powerpc/powerpc64/power5+/fpu/Implies
@@ -1 +1 @@
-powerpc/powerpc64/power5/fpu/multiarch
+powerpc/powerpc64/power5/fpu
diff --git a/sysdeps/powerpc/powerpc64/power5/fpu/Implies b/sysdeps/powerpc/powerpc64/power5/fpu/Implies
index 3740d05..6b8c23e 100644
--- a/sysdeps/powerpc/powerpc64/power5/fpu/Implies
+++ b/sysdeps/powerpc/powerpc64/power5/fpu/Implies
@@ -1 +1 @@
-powerpc/powerpc64/power4/fpu/multiarch
+powerpc/powerpc64/power4/fpu/
diff --git a/sysdeps/powerpc/powerpc64/power6x/fpu/Implies b/sysdeps/powerpc/powerpc64/power6x/fpu/Implies
new file mode 100644
index 0000000..30fa176
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/power6x/fpu/Implies
@@ -0,0 +1 @@
+powerpc/powerpc64/power6/fpu
diff --git a/sysdeps/powerpc/powerpc64/power6x/fpu/multiarch/Implies b/sysdeps/powerpc/powerpc64/power6x/fpu/multiarch/Implies
index f54ff23..410d289 100644
--- a/sysdeps/powerpc/powerpc64/power6x/fpu/multiarch/Implies
+++ b/sysdeps/powerpc/powerpc64/power6x/fpu/multiarch/Implies
@@ -1 +1 @@
-sysdeps/powerpc/powerpc64/power6/fpu/multiarch
+powerpc/powerpc64/power6/fpu/multiarch
diff --git a/sysdeps/powerpc/powerpc64/power6x/multiarch/Implies b/sysdeps/powerpc/powerpc64/power6x/multiarch/Implies
new file mode 100644
index 0000000..bf5d617
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/power6x/multiarch/Implies
@@ -0,0 +1 @@
+powerpc/powerpc64/power6/multiarch
diff --git a/sysdeps/powerpc/powerpc64/power7/fpu/Implies b/sysdeps/powerpc/powerpc64/power7/fpu/Implies
index 410d289..30fa176 100644
--- a/sysdeps/powerpc/powerpc64/power7/fpu/Implies
+++ b/sysdeps/powerpc/powerpc64/power7/fpu/Implies
@@ -1 +1 @@
-powerpc/powerpc64/power6/fpu/multiarch
+powerpc/powerpc64/power6/fpu
diff --git a/sysdeps/powerpc/powerpc64/power7/strncat.S b/sysdeps/powerpc/powerpc64/power7/strncat.S
index 1a1a95e..e7e36a4 100644
--- a/sysdeps/powerpc/powerpc64/power7/strncat.S
+++ b/sysdeps/powerpc/powerpc64/power7/strncat.S
@@ -38,7 +38,9 @@
 #endif
 
 #ifndef STRLEN
-# define STRLEN   __strlen_ppc
+/* For builds with no IFUNC support, local calls should be made to internal
+   GLIBC symbol (created by libc_hidden_builtin_def).  */
+# define STRLEN   __GI_strlen
 #endif
 
 #define	FRAMESIZE	(FRAME_MIN_SIZE+32)
diff --git a/sysdeps/powerpc/powerpc64/power8/fpu/Implies b/sysdeps/powerpc/powerpc64/power8/fpu/Implies
index 7fd86fd..1187cdf 100644
--- a/sysdeps/powerpc/powerpc64/power8/fpu/Implies
+++ b/sysdeps/powerpc/powerpc64/power8/fpu/Implies
@@ -1 +1 @@
-powerpc/powerpc64/power7/fpu/multiarch
+powerpc/powerpc64/power7/fpu/
diff --git a/sysdeps/powerpc/powerpc64/power8/fpu/s_isnan.S b/sysdeps/powerpc/powerpc64/power8/fpu/s_isnan.S
index b03c896..cf119e5 100644
--- a/sysdeps/powerpc/powerpc64/power8/fpu/s_isnan.S
+++ b/sysdeps/powerpc/powerpc64/power8/fpu/s_isnan.S
@@ -39,6 +39,9 @@ EALIGN (__isnan, 4, 0)
 	blr
 END (__isnan)
 
+hidden_def (__isnan)
+weak_alias (__isnan, isnan)
+
 /* It turns out that the 'double' version will also always work for
    single-precision.  */
 strong_alias (__isnan, __isnanf)

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

Summary of changes:
 ChangeLog                                          |   20 ++++++++++++++++++++
 sysdeps/powerpc/powerpc32/power6x/fpu/Implies      |    1 +
 sysdeps/powerpc/powerpc64/power5+/fpu/Implies      |    2 +-
 sysdeps/powerpc/powerpc64/power5/fpu/Implies       |    2 +-
 sysdeps/powerpc/powerpc64/power6x/fpu/Implies      |    1 +
 .../powerpc64/power6x/fpu/multiarch/Implies        |    2 +-
 .../{power7 => power6x}/multiarch/Implies          |    0
 sysdeps/powerpc/powerpc64/power7/fpu/Implies       |    2 +-
 sysdeps/powerpc/powerpc64/power7/strncat.S         |    8 +++++++-
 sysdeps/powerpc/powerpc64/power8/fpu/Implies       |    2 +-
 sysdeps/powerpc/powerpc64/power8/fpu/s_isnan.S     |    3 +++
 11 files changed, 37 insertions(+), 6 deletions(-)
 create mode 100644 sysdeps/powerpc/powerpc32/power6x/fpu/Implies
 create mode 100644 sysdeps/powerpc/powerpc64/power6x/fpu/Implies
 copy sysdeps/powerpc/powerpc64/{power7 => power6x}/multiarch/Implies (100%)


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]