bug-binutils
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Bug ld/22721] New: [2.30, 2.31 regression] Solaris/x86 TLS transition f


From: ro at gcc dot gnu.org
Subject: [Bug ld/22721] New: [2.30, 2.31 regression] Solaris/x86 TLS transition failures with linker plugin
Date: Wed, 17 Jan 2018 10:49:57 +0000

https://sourceware.org/bugzilla/show_bug.cgi?id=22721

            Bug ID: 22721
           Summary: [2.30, 2.31 regression] Solaris/x86 TLS transition
                    failures with linker plugin
           Product: binutils
           Version: 2.31 (HEAD)
            Status: NEW
          Severity: normal
          Priority: P2
         Component: ld
          Assignee: unassigned at sourceware dot org
          Reporter: ro at gcc dot gnu.org
                CC: hjl.tools at gmail dot com
  Target Milestone: ---
              Host: i386-pc-solaris2.11
            Target: i386-pc-solaris2.11
             Build: i386-pc-solaris2.11

When I recently tried a gcc mainline bootstrap on Solaris 11/x86 with gas and
gld from the binutils 2.30 branch, I found a couple of gcc testsuite
regressions:

UNRESOLVED: gcc.dg/lto/20090210 c_lto_20090210_0.o-c_lto_20090210_1.o execute
-O0 -flto -flto-partition=none -fuse-linker-plugin
UNRESOLVED: gcc.dg/lto/20090210 c_lto_20090210_0.o-c_lto_20090210_1.o execute
-O0 -flto -fuse-linker-plugin -fno-fat-lto-objects 
UNRESOLVED: gcc.dg/lto/20090210 c_lto_20090210_0.o-c_lto_20090210_1.o execute
-O2 -flto -flto-partition=none -fuse-linker-plugin -fno-fat-lto-objects 
UNRESOLVED: gcc.dg/lto/20090210 c_lto_20090210_0.o-c_lto_20090210_1.o execute
-O2 -flto -fuse-linker-plugin
FAIL: gcc.dg/lto/20090210 c_lto_20090210_0.o-c_lto_20090210_1.o link, -O0 -flto
-flto-partition=none -fuse-linker-plugin
FAIL: gcc.dg/lto/20090210 c_lto_20090210_0.o-c_lto_20090210_1.o link, -O0 -flto
-fuse-linker-plugin -fno-fat-lto-objects 
FAIL: gcc.dg/lto/20090210 c_lto_20090210_0.o-c_lto_20090210_1.o link, -O2 -flto
-flto-partition=none -fuse-linker-plugin -fno-fat-lto-objects 
FAIL: gcc.dg/lto/20090210 c_lto_20090210_0.o-c_lto_20090210_1.o link, -O2 -flto
-fuse-linker-plugin
FAIL: gcc.dg/torture/tls/run-gd.c   -O2 -flto -fuse-linker-plugin
-fno-fat-lto-objects  (test for excess errors)
WARNING: gcc.dg/torture/tls/run-gd.c   -O2 -flto -fuse-linker-plugin
-fno-fat-lto-objects  compilation failed to produce executable
FAIL: gcc.dg/torture/tls/run-ld.c   -O2 -flto -fuse-linker-plugin
-fno-fat-lto-objects  (test for excess errors)
WARNING: gcc.dg/torture/tls/run-ld.c   -O2 -flto -fuse-linker-plugin
-fno-fat-lto-objects  compilation failed to produce executable

both for 32 and 64-bit.  The regression is present on binutils mainline, too.

E.g. for the run-gd.c test, the link fails with

/vol/gcc/bin/gld-2.29.90: /var/tmp//ccDiJVLa.ltrans0.ltrans.o: TLS transition
from R_386_TLS_GD to R_386_TLS_IE_32 against `tls_gd' at 0x15 in section
`.text.startup' failed
/vol/gcc/bin/gld-2.29.90: final link failed: Nonrepresentable section on output

Since this only happens with -fuse-linker-plugin, I'm a bit at a loss how to
produce
a standalone testcase.

A reghunt identified this patch as the culprit:

The first bad revision is:
changeset:   91181:891260873d9a
user:        H.J. Lu <address@hidden>
date:        Sun Aug 06 08:40:56 2017 -0700
summary:     x86: Lookup __tls_get_addr or ___tls_get_addr once

  Rainer

-- 
You are receiving this mail because:
You are on the CC list for the bug.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]