public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug lto/50935] New: All slim LTO tests FAIL on 32-bit Solaris
@ 2011-10-31 15:54 ro at gcc dot gnu.org
  2011-11-01  9:27 ` [Bug lto/50935] " rguenth at gcc dot gnu.org
                   ` (7 more replies)
  0 siblings, 8 replies; 9+ messages in thread
From: ro at gcc dot gnu.org @ 2011-10-31 15:54 UTC (permalink / raw)
  To: gcc-bugs

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


^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2012-07-02 13:07 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-10-31 15:54 [Bug lto/50935] New: All slim LTO tests FAIL on 32-bit Solaris ro at gcc dot gnu.org
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

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).