public inbox for libc-alpha@sourceware.org
 help / color / mirror / Atom feed
From: Adhemerval Zanella <adhemerval.zanella@linaro.org>
To: Joseph Myers <joseph@codesourcery.com>
Cc: libc-alpha@sourceware.org
Subject: Re: RFC: remove the "tile" architecture from glibc
Date: Thu, 01 Feb 2018 16:50:00 -0000	[thread overview]
Message-ID: <40905d93-8648-e99c-dba6-641831dc25f6@linaro.org> (raw)
In-Reply-To: <alpine.DEB.2.20.1802011346290.7786@digraph.polyomino.org.uk>



On 01/02/2018 11:49, Joseph Myers wrote:
> On Thu, 1 Feb 2018, Adhemerval Zanella wrote:
> 
>> Trying to build/run glibc testsuite against sh4 own toolchain I am facing
>> an build issue for some tests:
>>
>> ---
>> gcc -nostdlib -nostartfiles -o /home/azanella/glibc/glibc-git-build/assert/tst-assert-c++    -Wl,-z,combreloc -Wl,-z,relro -Wl,--hash-style=both /home/azanella/glibc/glibc-git-build/csu/crt1.o /home/azanella/glibc/glibc-git-build/csu/crti.o `gcc  --print-file-name=crtbegin.o` /home/azanella/glibc/glibc-git-build/assert/tst-assert-c++.o /home/azanella/glibc/glibc-git-build/support/libsupport_nonshared.a -lstdc++ -Wl,-dynamic-linker=/lib/ld-linux.so.2 -Wl,-rpath-link=/home/azanella/glibc/glibc-git-build:/home/azanella/glibc/glibc-git-build/math:/home/azanella/glibc/glibc-git-build/elf:/home/azanella/glibc/glibc-git-build/dlfcn:/home/azanella/glibc/glibc-git-build/nss:/home/azanella/glibc/glibc-git-build/nis:/home/azanella/glibc/glibc-git-build/rt:/home/azanella/glibc/glibc-git-build/resolv:/home/azanella/glibc/glibc-git-build/crypt:/home/azanella/glibc/glibc-git-build/mathvec:/home/azanella/glibc/glibc-git-build/support:/home/azanella/glibc/glibc-git-build/nptl /home/azanella/glibc/glibc-git-build/libc.so.6 /home/azanella/glibc/glibc-git-build/libc_nonshared.a -Wl,--as-needed /home/azanella/glibc/glibc-git-build/elf/ld.so -Wl,--no-as-needed -lgcc -Wl,--as-needed -lgcc_s  -Wl,--no-as-needed `gcc  --print-file-name=crtend.o` /home/azanella/glibc/glibc-git-build/csu/crtn.o
>> /usr/lib/gcc/sh4-linux-gnu/7/libgcc_s.so.1: undefined reference to `__fpscr_values@GLIBC_2.2'
>> collect2: error: ld returned 1 exit status
> 
> I think some distributions have a local glibc patch related to 
> __fpscr_values, so a newly built glibc may be ABI-incompatible with 
> binaries built against such a patched glibc.  (The use of __fpscr_values 
> is fundamentally flawed, but that was supposed to be fixed for GCC 5 - see 
> <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=53513> and its duplicate 
> <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=60138>.)
> 

I do think it is the case, checking the debian package addendum from libc6-dev [1]
I noted it indeed adds this patch:

$ cat local-fpcscr_values.diff
--- a/sysdeps/unix/sysv/linux/sh/sysdep.S
+++ b/sysdeps/unix/sysv/linux/sh/sysdep.S
@@ -30,3 +30,14 @@

 #define __syscall_error __syscall_error_1
 #include <sysdeps/unix/sh/sysdep.S>
+
+       .data
+       .align 3
+       .globl ___fpscr_values
+       .type ___fpscr_values, @object
+       .size ___fpscr_values, 8
+___fpscr_values:
+       .long 0
+       .long 0x80000
+weak_alias (___fpscr_values, __fpscr_values)
+
--- a/sysdeps/unix/sysv/linux/sh/Versions
+++ b/sysdeps/unix/sysv/linux/sh/Versions
@@ -2,6 +2,7 @@
   GLIBC_2.2 {
     # functions used in other libraries
     __xstat64; __fxstat64; __lxstat64;
+    __fpscr_values;
 
     # a*
     alphasort64;
--- a/sysdeps/unix/sysv/linux/sh/libc.abilist
+++ b/sysdeps/unix/sysv/linux/sh/libc.abilist
@@ -267,6 +267,7 @@
 GLIBC_2.2 __flbf F
 GLIBC_2.2 __fork F
 GLIBC_2.2 __fpending F
+GLIBC_2.2 __fpscr_values D 0x8
 GLIBC_2.2 __fpu_control D 0x4
 GLIBC_2.2 __fpurge F
 GLIBC_2.2 __freadable F

I will check glibc with patch applied and try to rebuild a canadian cross to check
against a baseline toolchain.

[1] https://packages.debian.org/it/sid/libc6-dev

  reply	other threads:[~2018-02-01 16:50 UTC|newest]

Thread overview: 51+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-12-01 21:34 Chris Metcalf
2017-12-01 21:41 ` Joseph Myers
2017-12-01 21:57 ` John Paul Adrian Glaubitz
2017-12-01 22:11   ` Joseph Myers
2017-12-01 22:30     ` John Paul Adrian Glaubitz
2017-12-01 22:41       ` Joseph Myers
2017-12-02 15:15         ` John Paul Adrian Glaubitz
2017-12-04 11:10           ` Adhemerval Zanella
2017-12-04 11:28             ` John Paul Adrian Glaubitz
2017-12-04 18:03             ` Joseph Myers
2017-12-04 18:32               ` Adhemerval Zanella
2017-12-04 18:55                 ` Joseph Myers
2017-12-04 18:14             ` Chris Metcalf
2017-12-04 18:36               ` Adhemerval Zanella
2017-12-04 17:53           ` Joseph Myers
2017-12-04 18:47             ` John Paul Adrian Glaubitz
2017-12-04 19:02               ` Joseph Myers
     [not found]       ` <alpine.DEB.2.20.1801311732001.23883@digraph.polyomino.org.uk>
     [not found]         ` <38170271-e17f-0a7e-7dd2-06fa6ddfae62@physik.fu-berlin.de>
2018-02-01 13:34           ` Adhemerval Zanella
2018-02-01 13:50             ` Joseph Myers
2018-02-01 16:50               ` Adhemerval Zanella [this message]
     [not found]           ` <9f8b994a-7085-e263-dd1b-bea2def55fb0@linaro.org>
2018-02-01 13:24             ` Adhemerval Zanella
2018-02-01 13:33               ` John Paul Adrian Glaubitz
2018-02-01 13:37                 ` Adhemerval Zanella
2018-02-01 13:45                   ` Joseph Myers
2018-02-01 16:40                     ` Adhemerval Zanella
2018-02-01 13:39               ` Joseph Myers
2018-02-01 17:21                 ` Adhemerval Zanella
2018-02-01 17:52                   ` Joseph Myers
2018-02-01 18:30                   ` Joseph Myers
2018-02-14 18:13             ` Joseph Myers
2017-12-02  1:15   ` Chris Metcalf
2017-12-02 15:16     ` John Paul Adrian Glaubitz
2017-12-04 21:49       ` Chris Metcalf
2017-12-04 23:29         ` Joseph Myers
2018-03-07 15:39       ` Arnd Bergmann
2018-03-07 16:01         ` Joseph Myers
2018-03-07 16:08           ` John Paul Adrian Glaubitz
2018-03-07 16:49             ` Adhemerval Zanella
2018-03-07 17:17               ` Joseph Myers
2018-03-07 18:16         ` Helmut Grohne
2018-03-08 15:55           ` Arnd Bergmann
2018-03-08 16:06             ` John Paul Adrian Glaubitz
2018-03-08 16:23               ` Arnd Bergmann
2018-03-09 16:31               ` Joseph Myers
2018-03-09 16:37                 ` John Paul Adrian Glaubitz
2018-03-09 16:53                   ` Joseph Myers
2018-03-08 17:14             ` Palmer Dabbelt
2018-03-08 23:36               ` Arnd Bergmann
2017-12-02  3:24 ` Carlos O'Donell
2017-12-08 16:20 ` Chris Metcalf
2018-01-05  9:01 ` Henrik Grindal Bakken

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=40905d93-8648-e99c-dba6-641831dc25f6@linaro.org \
    --to=adhemerval.zanella@linaro.org \
    --cc=joseph@codesourcery.com \
    --cc=libc-alpha@sourceware.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).