public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
From: "ro at gcc dot gnu.org" <gcc-bugzilla@gcc.gnu.org>
To: gcc-bugs@gcc.gnu.org
Subject: [Bug lto/50935] New: All slim LTO tests FAIL on 32-bit Solaris
Date: Mon, 31 Oct 2011 15:54:00 -0000	[thread overview]
Message-ID: <bug-50935-4@http.gcc.gnu.org/bugzilla/> (raw)

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50935

             Bug #: 50935
           Summary: All slim LTO tests FAIL on 32-bit Solaris
    Classification: Unclassified
           Product: gcc
           Version: 4.7.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: lto
        AssignedTo: unassigned@gcc.gnu.org
        ReportedBy: ro@gcc.gnu.org
                CC: jh@suse.cz
              Host: *-*-solaris2*
            Target: *-*-solaris2*
             Build: *-*-solaris2.*


All slim LTO tests fail on 32-bit Solaris with gld 2.21.1 and 2.21.90:

spawn /vol/gcc/obj/regression/trunk/11-gcc-gas-gld/build/gcc/xgcc
-B/vol/gcc/obj/regression/trunk/11-gcc-gas-gld/build/gcc/
/vol/gcc/src/hg/trunk/local/gcc/testsuite/gcc.c-torture/execute/builtins/20010124-1.c
/vol/gcc/src/hg/trunk/local/gcc/testsuite/gcc.c-torture/execute/builtins/20010124-1-lib.c
/vol/gcc/src/hg/trunk/local/gcc/testsuite/gcc.c-torture/execute/builtins/lib/main.c
-w -O2 -flto -fuse-linker-plugin -fno-fat-lto-objects -lm -o
/var/gcc/regression/trunk/11-gcc-gas-gld/build/gcc/testsuite/gcc5/20010124-1.x7

/usr/lib/crt1.o: In function `_start':

fsr.s:(.text+0x7f): undefined reference to `main'

collect2: error: ld returned 1 exit status

compiler exited with status 1
output is:
/usr/lib/crt1.o: In function `_start':

fsr.s:(.text+0x7f): undefined reference to `main'

collect2: error: ld returned 1 exit status


FAIL: gcc.c-torture/execute/builtins/20010124-1.c compilation,  -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects 
UNRESOLVED: gcc.c-torture/execute/builtins/20010124-1.c execution,  -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects 

If turns out that there's a range of issues here:

* Unlike fat LTO, which needs only a gld or gold binary with linker plugin
  support, slim LTO needs corresponding binutils nm, ar, and ranlib.  For a
  64-bit default gcc, one needs 64-bit nm etc. in particular, where otherwise
  there would be no reason at all to have 64-bit commands.

* For 32-bit binutils, BFD_SUPPORTS_PLUGINS is off by default, as described
  in config/largefile.m4:

changequote(,)dnl
  sparc-*-solaris*|i[3-7]86-*-solaris*)
changequote([,])dnl
    # On native 32bit sparc and ia32 solaris, large-file and procfs support
    # are mutually exclusive; and without procfs support, the bfd/ elf module
    # cannot provide certain routines such as elfcore_write_prpsinfo
    # or elfcore_write_prstatus.  So unless the user explicitly requested
    # large-file support through the --enable-largefile switch, disable
    # large-file support in favor of procfs support.

For those reasons, it's much more work to provide a working slim LTO
environment
(and that's not only true on Solaris, but also on Linux where I often test a
recent gas/gld which is newer than what's bundled with the distribution), so
the testsuite *must* test for working slim LTO support before using 
-fno-fat-lto-objects, otherwise one gets hundreds of testsuite failures.

  Rainer


             reply	other threads:[~2011-10-31 15:54 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-10-31 15:54 ro at gcc dot gnu.org [this message]
2011-11-01  9:27 ` [Bug lto/50935] " rguenth at gcc dot gnu.org
2011-11-02  9:18 ` ro at CeBiTec dot Uni-Bielefeld.DE
2011-11-21 17:05 ` ro at gcc dot gnu.org
2011-11-21 17:07 ` ro at CeBiTec dot Uni-Bielefeld.DE
2011-11-21 17:54 ` bonzini at gnu dot org
2011-11-21 18:05 ` ro at CeBiTec dot Uni-Bielefeld.DE
2012-03-22  9:15 ` rguenth at gcc dot gnu.org
2012-07-02 13:07 ` rguenth at gcc dot gnu.org

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=bug-50935-4@http.gcc.gnu.org/bugzilla/ \
    --to=gcc-bugzilla@gcc.gnu.org \
    --cc=gcc-bugs@gcc.gnu.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).