public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug bootstrap/55571] New: [4.6.4 regression] PR48076 fix broke bootstrap on armv5tel-linux-gnueabi
@ 2012-12-03  8:42 mikpe at it dot uu.se
  2012-12-03  9:23 ` [Bug bootstrap/55571] [4.6/4.7/4.8 " ebotcazou at gcc dot gnu.org
                   ` (15 more replies)
  0 siblings, 16 replies; 17+ messages in thread
From: mikpe at it dot uu.se @ 2012-12-03  8:42 UTC (permalink / raw)
  To: gcc-bugs


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

             Bug #: 55571
           Summary: [4.6.4 regression] PR48076 fix broke bootstrap on
                    armv5tel-linux-gnueabi
    Classification: Unclassified
           Product: gcc
           Version: 4.6.4
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: bootstrap
        AssignedTo: unassigned@gcc.gnu.org
        ReportedBy: mikpe@it.uu.se


Attempting to bootstrap gcc-4.6-20121130 on armv5tel-linux-gnueabi fails with:

/mnt/scratch/objdir46/./prev-gcc/xgcc -B/mnt/scratch/objdir46/./prev-gcc/
-B/mnt/scratch/install46/armv5tel-unknown-linux-gnueabi/bin/
-B/mnt/scratch/install46/armv5tel-unknown-linux-gnueabi/bin/
-B/mnt/scratch/install46/armv5tel-unknown-linux-gnueabi/lib/ -isystem
/mnt/scratch/install46/armv5tel-unknown-linux-gnueabi/include -isystem
/mnt/scratch/install46/armv5tel-unknown-linux-gnueabi/sys-include      -g -O2
-gtoggle -DIN_GCC   -W -Wall -Wwrite-strings -Wcast-qual -Wstrict-prototypes
-Wmissing-prototypes -Wmissing-format-attribute -pedantic -Wno-long-long
-Wno-variadic-macros -Wno-overlength-strings -Wold-style-definition
-Wc++-compat   -DHAVE_CONFIG_H -static-libstdc++ -static-libgcc  -o cc1
c-lang.o c-family/stub-objc.o attribs.o c-errors.o c-decl.o c-typeck.o
c-convert.o c-aux-info.o c-objc-common.o c-parser.o tree-mudflap.o
c-family/c-common.o c-family/c-cppbuiltin.o c-family/c-dump.o
c-family/c-format.o c-family/c-gimplify.o c-family/c-lex.o c-family/c-omp.o
c-family/c-opts.o c-family/c-pch.o c-family/c-ppoutput.o c-family/c-pragma.o
c-family/c-pretty-print.o c-family/c-semantics.o c-family/c-ada-spec.o arm-c.o
\
  cc1-checksum.o main.o  libbackend.a ../libcpp/libcpp.a
../libdecnumber/libdecnumber.a ../libcpp/libcpp.a   ../libiberty/libiberty.a
../libdecnumber/libdecnumber.a    -lmpc -lmpfr -lgmp   -lz
/mnt/scratch/objdir46/./prev-gcc/libgcc_s.so.1: undefined reference to
`__sync_synchronize'
collect2: ld returned 1 exit status
make[3]: *** [cc1] Error 1
make[3]: Leaving directory `/mnt/scratch/objdir46/gcc'
make[2]: *** [all-stage2-gcc] Error 2
make[2]: Leaving directory `/mnt/scratch/objdir46'
make[1]: *** [stage2-bubble] Error 2
make[1]: Leaving directory `/mnt/scratch/objdir46'
make: *** [bootstrap] Error 2

This is a recent regression, caused by the PR48076 fix backport in r193959. 
Reverting that revision allows the bootstrap to complete.

Note that the __sync_ primitives on arm-linux-gnueabi reside in the static
libgcc.a, not the shared libgcc_s.so.1.


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

* [Bug bootstrap/55571] [4.6/4.7/4.8 regression] PR48076 fix broke bootstrap on armv5tel-linux-gnueabi
  2012-12-03  8:42 [Bug bootstrap/55571] New: [4.6.4 regression] PR48076 fix broke bootstrap on armv5tel-linux-gnueabi mikpe at it dot uu.se
@ 2012-12-03  9:23 ` ebotcazou at gcc dot gnu.org
  2012-12-03 11:37 ` rguenth at gcc dot gnu.org
                   ` (14 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: ebotcazou at gcc dot gnu.org @ 2012-12-03  9:23 UTC (permalink / raw)
  To: gcc-bugs


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

Eric Botcazou <ebotcazou at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
   Last reconfirmed|                            |2012-12-03
                 CC|                            |ebotcazou at gcc dot
                   |                            |gnu.org
   Target Milestone|---                         |4.6.4
            Summary|[4.6.4 regression] PR48076  |[4.6/4.7/4.8 regression]
                   |fix broke bootstrap on      |PR48076 fix broke bootstrap
                   |armv5tel-linux-gnueabi      |on armv5tel-linux-gnueabi
     Ever Confirmed|0                           |1
           Severity|normal                      |critical

--- Comment #1 from Eric Botcazou <ebotcazou at gcc dot gnu.org> 2012-12-03 09:23:04 UTC ---
You cannot link a simple program without -static-libgcc.


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

* [Bug bootstrap/55571] [4.6/4.7/4.8 regression] PR48076 fix broke bootstrap on armv5tel-linux-gnueabi
  2012-12-03  8:42 [Bug bootstrap/55571] New: [4.6.4 regression] PR48076 fix broke bootstrap on armv5tel-linux-gnueabi mikpe at it dot uu.se
  2012-12-03  9:23 ` [Bug bootstrap/55571] [4.6/4.7/4.8 " ebotcazou at gcc dot gnu.org
@ 2012-12-03 11:37 ` rguenth at gcc dot gnu.org
  2012-12-03 13:55 ` jakub at gcc dot gnu.org
                   ` (13 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: rguenth at gcc dot gnu.org @ 2012-12-03 11:37 UTC (permalink / raw)
  To: gcc-bugs


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

Richard Biener <rguenth at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Priority|P3                          |P1
      Known to work|                            |4.6.3
      Known to fail|                            |4.6.4


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

* [Bug bootstrap/55571] [4.6/4.7/4.8 regression] PR48076 fix broke bootstrap on armv5tel-linux-gnueabi
  2012-12-03  8:42 [Bug bootstrap/55571] New: [4.6.4 regression] PR48076 fix broke bootstrap on armv5tel-linux-gnueabi mikpe at it dot uu.se
  2012-12-03  9:23 ` [Bug bootstrap/55571] [4.6/4.7/4.8 " ebotcazou at gcc dot gnu.org
  2012-12-03 11:37 ` rguenth at gcc dot gnu.org
@ 2012-12-03 13:55 ` jakub at gcc dot gnu.org
  2012-12-03 14:39 ` mikpe at it dot uu.se
                   ` (12 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: jakub at gcc dot gnu.org @ 2012-12-03 13:55 UTC (permalink / raw)
  To: gcc-bugs


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

Jakub Jelinek <jakub at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |jakub at gcc dot gnu.org

--- Comment #2 from Jakub Jelinek <jakub at gcc dot gnu.org> 2012-12-03 13:54:57 UTC ---
Perhaps just guard the PR48076 changes with
#if defined(__GCC_HAVE_SYNC_COMPARE_AND_SWAP_4) \
  || defined(__GCC_HAVE_SYNC_COMPARE_AND_SWAP_8)
and otherwise just use asm volatile ("" : : : "memory"); barrier?
Or for those targets avoid the optimization:
#if defined(__GCC_HAVE_SYNC_COMPARE_AND_SWAP_4) \
  || defined(__GCC_HAVE_SYNC_COMPARE_AND_SWAP_8)
# define USE_ATOMICS
#endif

#ifdef USE_ATOMICS
  pointer offset = __atomic_load_n (&obj->loc.offset, __ATOMIC_ACQUIRE);
#else
  pointer offset = 0;
#endif

  if (__builtin_expect (offset == 0, 0))
...
#ifdef USE_ATOMICS
          __atomic_store_n (&obj->loc.offset, offset, __ATOMIC_RELEASE);
#else
          obj->loc.offset = offset;
#endif
Then for the targets without sync compare and swap it will always grab the lock
and do everything with the lock held.


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

* [Bug bootstrap/55571] [4.6/4.7/4.8 regression] PR48076 fix broke bootstrap on armv5tel-linux-gnueabi
  2012-12-03  8:42 [Bug bootstrap/55571] New: [4.6.4 regression] PR48076 fix broke bootstrap on armv5tel-linux-gnueabi mikpe at it dot uu.se
                   ` (2 preceding siblings ...)
  2012-12-03 13:55 ` jakub at gcc dot gnu.org
@ 2012-12-03 14:39 ` mikpe at it dot uu.se
  2012-12-03 14:43 ` ebotcazou at gcc dot gnu.org
                   ` (11 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: mikpe at it dot uu.se @ 2012-12-03 14:39 UTC (permalink / raw)
  To: gcc-bugs


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

--- Comment #3 from Mikael Pettersson <mikpe at it dot uu.se> 2012-12-03 14:39:19 UTC ---
Eric has already "upgraded" this bug report to a 4.6/4.7/4.8 regression, but
I'd like to add that I now got a very similar error with 4.8-20121202:

/mnt/scratch/objdir48/./prev-gcc/xg++ -B/mnt/scratch/objdir48/./prev-gcc/
-B/mnt/scratch/install48/armv5tel-unknown-linux-gnueabi/bin/ -nostdinc++
-B/mnt/scratch/objdir48/prev-armv5tel-unknown-linux-gnueabi/libstdc++-v3/src/.libs
-B/mnt/scratch/objdir48/prev-armv5tel-unknown-linux-gnueabi/libstdc++-v3/libsupc++/.libs
-I/mnt/scratch/objdir48/prev-armv5tel-unknown-linux-gnueabi/libstdc++-v3/include/armv5tel-unknown-linux-gnueabi
-I/mnt/scratch/objdir48/prev-armv5tel-unknown-linux-gnueabi/libstdc++-v3/include
-I/mnt/scratch/gcc-4.8-20121202/libstdc++-v3/libsupc++
-L/mnt/scratch/objdir48/prev-armv5tel-unknown-linux-gnueabi/libstdc++-v3/src/.libs
-L/mnt/scratch/objdir48/prev-armv5tel-unknown-linux-gnueabi/libstdc++-v3/libsupc++/.libs
  -g -O2 -gtoggle -DIN_GCC   -fno-exceptions -fno-rtti
-fasynchronous-unwind-tables -W -Wall -Wno-narrowing -Wwrite-strings
-Wcast-qual -Wmissing-format-attribute -pedantic -Wno-long-long
-Wno-variadic-macros -Wno-overlength-strings -Werror   -DHAVE_CONFIG_H
-static-libstdc++ -static-libgcc  -o cc1 c/c-lang.o c-family/stub-objc.o
attribs.o c/c-errors.o c/c-decl.o c/c-typeck.o c/c-convert.o c/c-aux-info.o
c/c-objc-common.o c/c-parser.o c-family/c-common.o c-family/c-cppbuiltin.o
c-family/c-dump.o c-family/c-format.o c-family/c-gimplify.o c-family/c-lex.o
c-family/c-omp.o c-family/c-opts.o c-family/c-pch.o c-family/c-ppoutput.o
c-family/c-pragma.o c-family/c-pretty-print.o c-family/c-semantics.o
c-family/c-ada-spec.o tree-mudflap.o arm-c.o glibc-c.o \
  cc1-checksum.o libbackend.a main.o  libcommon-target.a libcommon.a
../libcpp/libcpp.a ../libdecnumber/libdecnumber.a libcommon.a
../libcpp/libcpp.a   ../libbacktrace/.libs/libbacktrace.a
../libiberty/libiberty.a ../libdecnumber/libdecnumber.a   -lmpc -lmpfr -lgmp  
-lz
/usr/bin/ld: cc1: hidden symbol `__sync_synchronize' in
/mnt/scratch/objdir48/./prev-gcc/libgcc.a(linux-atomic.o) is referenced by DSO
/usr/bin/ld: final link failed: Bad value
collect2: error: ld returned 1 exit status
make[3]: *** [cc1] Error 1
make[3]: Leaving directory `/mnt/scratch/objdir48/gcc'
make[2]: *** [all-stage2-gcc] Error 2
make[2]: Leaving directory `/mnt/scratch/objdir48'
make[1]: *** [stage2-bubble] Error 2
make[1]: Leaving directory `/mnt/scratch/objdir48'
make: *** [bootstrap] Error 2


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

* [Bug bootstrap/55571] [4.6/4.7/4.8 regression] PR48076 fix broke bootstrap on armv5tel-linux-gnueabi
  2012-12-03  8:42 [Bug bootstrap/55571] New: [4.6.4 regression] PR48076 fix broke bootstrap on armv5tel-linux-gnueabi mikpe at it dot uu.se
                   ` (3 preceding siblings ...)
  2012-12-03 14:39 ` mikpe at it dot uu.se
@ 2012-12-03 14:43 ` ebotcazou at gcc dot gnu.org
  2012-12-03 15:34 ` rth at gcc dot gnu.org
                   ` (10 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: ebotcazou at gcc dot gnu.org @ 2012-12-03 14:43 UTC (permalink / raw)
  To: gcc-bugs


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

Eric Botcazou <ebotcazou at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
      Known to fail|                            |4.7.3, 4.8.0

--- Comment #4 from Eric Botcazou <ebotcazou at gcc dot gnu.org> 2012-12-03 14:43:13 UTC ---
> Eric has already "upgraded" this bug report to a 4.6/4.7/4.8 regression, but
> I'd like to add that I now got a very similar error with 4.8-20121202:

Sure, our 4.7.x arm-linux-gnueabi cross-compiler is also affected.


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

* [Bug bootstrap/55571] [4.6/4.7/4.8 regression] PR48076 fix broke bootstrap on armv5tel-linux-gnueabi
  2012-12-03  8:42 [Bug bootstrap/55571] New: [4.6.4 regression] PR48076 fix broke bootstrap on armv5tel-linux-gnueabi mikpe at it dot uu.se
                   ` (4 preceding siblings ...)
  2012-12-03 14:43 ` ebotcazou at gcc dot gnu.org
@ 2012-12-03 15:34 ` rth at gcc dot gnu.org
  2012-12-03 16:49 ` rth at gcc dot gnu.org
                   ` (9 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: rth at gcc dot gnu.org @ 2012-12-03 15:34 UTC (permalink / raw)
  To: gcc-bugs


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

Richard Henderson <rth at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         AssignedTo|unassigned at gcc dot       |rth at gcc dot gnu.org
                   |gnu.org                     |

--- Comment #5 from Richard Henderson <rth at gcc dot gnu.org> 2012-12-03 15:34:18 UTC ---
I think Jakub's idea is a bit overkill.  We're just in need of a
barrier, and we ought to be able to get one.  Perhaps we should
be linking libgcc_s.so itself against the static libgcc?

Although I can't recall why we're placing the __sync functions
in the static library in the first place.  It's not like they're
required to be unique.  I guess I'll have to dig that out of the
mail archives...


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

* [Bug bootstrap/55571] [4.6/4.7/4.8 regression] PR48076 fix broke bootstrap on armv5tel-linux-gnueabi
  2012-12-03  8:42 [Bug bootstrap/55571] New: [4.6.4 regression] PR48076 fix broke bootstrap on armv5tel-linux-gnueabi mikpe at it dot uu.se
                   ` (5 preceding siblings ...)
  2012-12-03 15:34 ` rth at gcc dot gnu.org
@ 2012-12-03 16:49 ` rth at gcc dot gnu.org
  2012-12-03 16:49 ` rth at gcc dot gnu.org
                   ` (8 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: rth at gcc dot gnu.org @ 2012-12-03 16:49 UTC (permalink / raw)
  To: gcc-bugs


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

Richard Henderson <rth at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |ASSIGNED


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

* [Bug bootstrap/55571] [4.6/4.7/4.8 regression] PR48076 fix broke bootstrap on armv5tel-linux-gnueabi
  2012-12-03  8:42 [Bug bootstrap/55571] New: [4.6.4 regression] PR48076 fix broke bootstrap on armv5tel-linux-gnueabi mikpe at it dot uu.se
                   ` (6 preceding siblings ...)
  2012-12-03 16:49 ` rth at gcc dot gnu.org
@ 2012-12-03 16:49 ` rth at gcc dot gnu.org
  2012-12-03 19:04 ` rth at gcc dot gnu.org
                   ` (7 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: rth at gcc dot gnu.org @ 2012-12-03 16:49 UTC (permalink / raw)
  To: gcc-bugs


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

--- Comment #6 from Richard Henderson <rth at gcc dot gnu.org> 2012-12-03 16:48:59 UTC ---
Created attachment 28861
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=28861
proposed patch 4.6 only

IMO there are multiple problems being exposed here.  Some of them
probably require more build surgery than others.  In the case of
gcc 4.6 (and probably 4.7) I'd like to fix nothing other than the
minimal.

This patch links libgcc_s.so.1 with libgcc.a.  That brings in the
hidden __sync_synchronize symbol (as well as all of the others)
into the shared library so that it doesn't require external resolution.

I've only "tested" this via cross-compile so far, wherein I see what
I expected from the dynamic symbol table.


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

* [Bug bootstrap/55571] [4.6/4.7/4.8 regression] PR48076 fix broke bootstrap on armv5tel-linux-gnueabi
  2012-12-03  8:42 [Bug bootstrap/55571] New: [4.6.4 regression] PR48076 fix broke bootstrap on armv5tel-linux-gnueabi mikpe at it dot uu.se
                   ` (7 preceding siblings ...)
  2012-12-03 16:49 ` rth at gcc dot gnu.org
@ 2012-12-03 19:04 ` rth at gcc dot gnu.org
  2012-12-04  4:52 ` brobecker at gnat dot com
                   ` (6 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: rth at gcc dot gnu.org @ 2012-12-03 19:04 UTC (permalink / raw)
  To: gcc-bugs


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

--- Comment #7 from Richard Henderson <rth at gcc dot gnu.org> 2012-12-03 19:04:28 UTC ---
Created attachment 28863
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=28863
proposed patch for 4.7

Same as 4.6 modulo fuzz + conflicts.


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

* [Bug bootstrap/55571] [4.6/4.7/4.8 regression] PR48076 fix broke bootstrap on armv5tel-linux-gnueabi
  2012-12-03  8:42 [Bug bootstrap/55571] New: [4.6.4 regression] PR48076 fix broke bootstrap on armv5tel-linux-gnueabi mikpe at it dot uu.se
                   ` (8 preceding siblings ...)
  2012-12-03 19:04 ` rth at gcc dot gnu.org
@ 2012-12-04  4:52 ` brobecker at gnat dot com
  2012-12-04 17:09 ` rth at gcc dot gnu.org
                   ` (5 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: brobecker at gnat dot com @ 2012-12-04  4:52 UTC (permalink / raw)
  To: gcc-bugs


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

--- Comment #8 from Joel Brobecker <brobecker at gnat dot com> 2012-12-04 04:51:45 UTC ---
Created attachment 28869
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=28869
Small reproducer with arm-eabi

In case it's useful to anyone else, a small program that reproduces the
problem.

    % arm-linux-gnueabi-gcc -o utils utils.c
    [same problem with __sync_synchronize]


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

* [Bug bootstrap/55571] [4.6/4.7/4.8 regression] PR48076 fix broke bootstrap on armv5tel-linux-gnueabi
  2012-12-03  8:42 [Bug bootstrap/55571] New: [4.6.4 regression] PR48076 fix broke bootstrap on armv5tel-linux-gnueabi mikpe at it dot uu.se
                   ` (9 preceding siblings ...)
  2012-12-04  4:52 ` brobecker at gnat dot com
@ 2012-12-04 17:09 ` rth at gcc dot gnu.org
  2012-12-04 19:06 ` rth at gcc dot gnu.org
                   ` (4 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: rth at gcc dot gnu.org @ 2012-12-04 17:09 UTC (permalink / raw)
  To: gcc-bugs


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

--- Comment #9 from Richard Henderson <rth at gcc dot gnu.org> 2012-12-04 17:09:07 UTC ---
(In reply to comment #8)
> In case it's useful to anyone else, a small program that reproduces the
> problem.
> 
>     % arm-linux-gnueabi-gcc -o utils utils.c
>     [same problem with __sync_synchronize]

Does this require the compiler to be installed?  Because I'm having trouble
triggering the problem reliably.  I've tried your test with the compiler
still in-tree and it succeeds.  I can reproduce the fail with a full build,
but invoking the same link from the command line does NOT fail.

There's something weird going on here with the linker...


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

* [Bug bootstrap/55571] [4.6/4.7/4.8 regression] PR48076 fix broke bootstrap on armv5tel-linux-gnueabi
  2012-12-03  8:42 [Bug bootstrap/55571] New: [4.6.4 regression] PR48076 fix broke bootstrap on armv5tel-linux-gnueabi mikpe at it dot uu.se
                   ` (10 preceding siblings ...)
  2012-12-04 17:09 ` rth at gcc dot gnu.org
@ 2012-12-04 19:06 ` rth at gcc dot gnu.org
  2012-12-04 19:08 ` rth at gcc dot gnu.org
                   ` (3 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: rth at gcc dot gnu.org @ 2012-12-04 19:06 UTC (permalink / raw)
  To: gcc-bugs


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

--- Comment #10 from Richard Henderson <rth at gcc dot gnu.org> 2012-12-04 19:05:44 UTC ---
I can reproduce Joel's problem with the g++ driver or,
as expected, by adding -shared-libgcc to the link line.

Leaving aside the odd and transient bootstrap problem
(which really should not have occurred using -static-libgcc),
it becomes easy to see that when the shared libgcc has an
undefined symbol that is resolvable by the static libgcc,
then the linker is correct in generating the "hidden symbol
referenced by DSO" error.

The attachment I posted for gcc 4.7 applies with fuzz 1 to
mainline.


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

* [Bug bootstrap/55571] [4.6/4.7/4.8 regression] PR48076 fix broke bootstrap on armv5tel-linux-gnueabi
  2012-12-03  8:42 [Bug bootstrap/55571] New: [4.6.4 regression] PR48076 fix broke bootstrap on armv5tel-linux-gnueabi mikpe at it dot uu.se
                   ` (11 preceding siblings ...)
  2012-12-04 19:06 ` rth at gcc dot gnu.org
@ 2012-12-04 19:08 ` rth at gcc dot gnu.org
  2012-12-04 19:10 ` rth at gcc dot gnu.org
                   ` (2 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: rth at gcc dot gnu.org @ 2012-12-04 19:08 UTC (permalink / raw)
  To: gcc-bugs


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

--- Comment #11 from Richard Henderson <rth at gcc dot gnu.org> 2012-12-04 19:08:23 UTC ---
Author: rth
Date: Tue Dec  4 19:08:18 2012
New Revision: 194159

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=194159
Log:
PR bootstrap/55571

        * Makefile.in (libgcc_s.so): Depend on and link with libgcc.a.

Modified:
    trunk/libgcc/ChangeLog
    trunk/libgcc/Makefile.in


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

* [Bug bootstrap/55571] [4.6/4.7/4.8 regression] PR48076 fix broke bootstrap on armv5tel-linux-gnueabi
  2012-12-03  8:42 [Bug bootstrap/55571] New: [4.6.4 regression] PR48076 fix broke bootstrap on armv5tel-linux-gnueabi mikpe at it dot uu.se
                   ` (12 preceding siblings ...)
  2012-12-04 19:08 ` rth at gcc dot gnu.org
@ 2012-12-04 19:10 ` rth at gcc dot gnu.org
  2012-12-04 19:11 ` rth at gcc dot gnu.org
  2012-12-04 19:13 ` rth at gcc dot gnu.org
  15 siblings, 0 replies; 17+ messages in thread
From: rth at gcc dot gnu.org @ 2012-12-04 19:10 UTC (permalink / raw)
  To: gcc-bugs


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

--- Comment #12 from Richard Henderson <rth at gcc dot gnu.org> 2012-12-04 19:10:05 UTC ---
Author: rth
Date: Tue Dec  4 19:09:59 2012
New Revision: 194160

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=194160
Log:
PR bootstrap/55571

        * Makefile.in (libgcc_s.so): Depend on and link with libgcc.a.

Modified:
    branches/gcc-4_7-branch/libgcc/ChangeLog
    branches/gcc-4_7-branch/libgcc/Makefile.in


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

* [Bug bootstrap/55571] [4.6/4.7/4.8 regression] PR48076 fix broke bootstrap on armv5tel-linux-gnueabi
  2012-12-03  8:42 [Bug bootstrap/55571] New: [4.6.4 regression] PR48076 fix broke bootstrap on armv5tel-linux-gnueabi mikpe at it dot uu.se
                   ` (13 preceding siblings ...)
  2012-12-04 19:10 ` rth at gcc dot gnu.org
@ 2012-12-04 19:11 ` rth at gcc dot gnu.org
  2012-12-04 19:13 ` rth at gcc dot gnu.org
  15 siblings, 0 replies; 17+ messages in thread
From: rth at gcc dot gnu.org @ 2012-12-04 19:11 UTC (permalink / raw)
  To: gcc-bugs


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

--- Comment #13 from Richard Henderson <rth at gcc dot gnu.org> 2012-12-04 19:11:39 UTC ---
Author: rth
Date: Tue Dec  4 19:11:33 2012
New Revision: 194161

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=194161
Log:
PR bootstrap/55571

        * Makefile.in (libgcc_s.so): Depend on and link with libgcc.a.

Modified:
    branches/gcc-4_6-branch/libgcc/ChangeLog
    branches/gcc-4_6-branch/libgcc/Makefile.in


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

* [Bug bootstrap/55571] [4.6/4.7/4.8 regression] PR48076 fix broke bootstrap on armv5tel-linux-gnueabi
  2012-12-03  8:42 [Bug bootstrap/55571] New: [4.6.4 regression] PR48076 fix broke bootstrap on armv5tel-linux-gnueabi mikpe at it dot uu.se
                   ` (14 preceding siblings ...)
  2012-12-04 19:11 ` rth at gcc dot gnu.org
@ 2012-12-04 19:13 ` rth at gcc dot gnu.org
  15 siblings, 0 replies; 17+ messages in thread
From: rth at gcc dot gnu.org @ 2012-12-04 19:13 UTC (permalink / raw)
  To: gcc-bugs


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

Richard Henderson <rth at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|ASSIGNED                    |RESOLVED
         Resolution|                            |FIXED

--- Comment #14 from Richard Henderson <rth at gcc dot gnu.org> 2012-12-04 19:13:40 UTC ---
The bootstrap problem is fixed.

The issue of why the stage2 g++ driver sometimes pulls in the
shared libgcc with -static-libgcc belongs in another PR.


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

end of thread, other threads:[~2012-12-04 19:13 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-12-03  8:42 [Bug bootstrap/55571] New: [4.6.4 regression] PR48076 fix broke bootstrap on armv5tel-linux-gnueabi mikpe at it dot uu.se
2012-12-03  9:23 ` [Bug bootstrap/55571] [4.6/4.7/4.8 " ebotcazou at gcc dot gnu.org
2012-12-03 11:37 ` rguenth at gcc dot gnu.org
2012-12-03 13:55 ` jakub at gcc dot gnu.org
2012-12-03 14:39 ` mikpe at it dot uu.se
2012-12-03 14:43 ` ebotcazou at gcc dot gnu.org
2012-12-03 15:34 ` rth at gcc dot gnu.org
2012-12-03 16:49 ` rth at gcc dot gnu.org
2012-12-03 16:49 ` rth at gcc dot gnu.org
2012-12-03 19:04 ` rth at gcc dot gnu.org
2012-12-04  4:52 ` brobecker at gnat dot com
2012-12-04 17:09 ` rth at gcc dot gnu.org
2012-12-04 19:06 ` rth at gcc dot gnu.org
2012-12-04 19:08 ` rth at gcc dot gnu.org
2012-12-04 19:10 ` rth at gcc dot gnu.org
2012-12-04 19:11 ` rth at gcc dot gnu.org
2012-12-04 19:13 ` rth 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).