commit:     8ec720b67f38952a4b9c6054c6d8ef0fc79d0343
Author:     Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Sat May 16 08:57:53 2020 +0000
Commit:     Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Sat May 16 08:58:04 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8ec720b6

sys-libs/glibc: use -mno-sdata, not -fcommon, bug #723268

-fcommon generated PLT references and added double memory
dereference.

-mno-sdata is slightly more efficient as it still sees
globals to be module local varilables and uses GPREL64
(instead of PLT indirection) and uses single memory
dereference.

Bug: https://bugs.gentoo.org/723268
Package-Manager: Portage-2.3.99, Repoman-2.3.22
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>

 sys-libs/glibc/glibc-2.30-r8.ebuild | 3 ++-
 sys-libs/glibc/glibc-2.31-r3.ebuild | 3 ++-
 sys-libs/glibc/glibc-9999.ebuild    | 3 ++-
 3 files changed, 6 insertions(+), 3 deletions(-)

diff --git a/sys-libs/glibc/glibc-2.30-r8.ebuild 
b/sys-libs/glibc/glibc-2.30-r8.ebuild
index 0421d5e61db..b6a794f3004 100644
--- a/sys-libs/glibc/glibc-2.30-r8.ebuild
+++ b/sys-libs/glibc/glibc-2.30-r8.ebuild
@@ -309,7 +309,8 @@ setup_target_flags() {
                        # Workaround GPREL22 overflow by slightly pessimizing 
global
                        # references to go via 64-bit relocations instead of 
22-bit ones.
                        # This allows building glibc on ia64 without an 
overflow: #723268
-                       append-flags -fcommon
+                       append-flags -mno-sdata
+                       :
                ;;
                mips)
                        # The mips abi cannot support the GNU style hashes. 
#233233

diff --git a/sys-libs/glibc/glibc-2.31-r3.ebuild 
b/sys-libs/glibc/glibc-2.31-r3.ebuild
index 5580625ba6d..d297db2b26d 100644
--- a/sys-libs/glibc/glibc-2.31-r3.ebuild
+++ b/sys-libs/glibc/glibc-2.31-r3.ebuild
@@ -303,7 +303,8 @@ setup_target_flags() {
                        # Workaround GPREL22 overflow by slightly pessimizing 
global
                        # references to go via 64-bit relocations instead of 
22-bit ones.
                        # This allows building glibc on ia64 without an 
overflow: #723268
-                       append-flags -fcommon
+                       append-flags -mno-sdata
+                       :
                ;;
                mips)
                        # The mips abi cannot support the GNU style hashes. 
#233233

diff --git a/sys-libs/glibc/glibc-9999.ebuild b/sys-libs/glibc/glibc-9999.ebuild
index 2355e5bce34..ccedec70c67 100644
--- a/sys-libs/glibc/glibc-9999.ebuild
+++ b/sys-libs/glibc/glibc-9999.ebuild
@@ -302,7 +302,8 @@ setup_target_flags() {
                        # Workaround GPREL22 overflow by slightly pessimizing 
global
                        # references to go via 64-bit relocations instead of 
22-bit ones.
                        # This allows building glibc on ia64 without an 
overflow: #723268
-                       append-flags -fcommon
+                       append-flags -mno-sdata
+                       :
                ;;
                mips)
                        # The mips abi cannot support the GNU style hashes. 
#233233

Reply via email to