[Bug libstdc++/51181] New: [4.7 regression] libstdc++.so __sync_sub_and_fetch_4 linkage error causing many test suite failures on m68k-linux
mikpe at it dot uu.se
gcc-bugzilla@gcc.gnu.org
Wed Nov 16 23:10:00 GMT 2011
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51181
Bug #: 51181
Summary: [4.7 regression] libstdc++.so __sync_sub_and_fetch_4
linkage error causing many test suite failures on
m68k-linux
Classification: Unclassified
Product: gcc
Version: 4.7.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: libstdc++
AssignedTo: unassigned@gcc.gnu.org
ReportedBy: mikpe@it.uu.se
Some change between 4.7-20111105 and 4.7-20111112 caused massive test suite
regressions for C++ code on m68k-linux:
--- mail-report-4.7-20111105-0 2011-11-16 22:52:30.000000000 +0100
+++ mail-report-4.7-20111112-0 2011-11-16 22:39:07.000000000 +0100
@@ -1,5 +1,5 @@
-LAST_UPDATED: Obtained from SVN: trunk revision 181017
+LAST_UPDATED: Obtained from SVN: trunk revision 181327
Native configuration is m68k-unknown-linux-gnu
...
=== g++ Summary ===
-# of expected passes 26073
-# of unexpected failures 96
-# of expected failures 151
-# of unsupported tests 413
-/mnt/scratch/objdir47/gcc/testsuite/g++/../../g++ version 4.7.0 20111105
(experimental) (GCC)
+# of expected passes 36074
+# of unexpected failures 3881
+# of expected failures 277
+# of unresolved testcases 98
+# of unsupported tests 659
+/mnt/scratch/objdir47/gcc/testsuite/g++/../../g++ version 4.7.0 20111112
(experimental) (GCC)
...
=== libgomp Summary ===
-# of expected passes 1214
-# of unexpected failures 13
+# of expected passes 272
+# of unexpected failures 478
# of unsupported tests 8
...
=== libstdc++ Summary ===
-# of expected passes 8323
-# of unexpected failures 13
-# of expected failures 46
-# of unsupported tests 249
+# of expected passes 2002
+# of unexpected failures 2582
+# of expected failures 5
+# of unsupported tests 655
-Compiler version: 4.7.0 20111105 (experimental) (GCC)
+Compiler version: 4.7.0 20111112 (experimental) (GCC)
Platform: m68k-unknown-linux-gnu
configure flags: --prefix=/mnt/scratch/install47 --enable-bootstrap
--enable-shared --enable-threads=posix --enable-checking=release
--with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions
--enable-languages=c,c++ --enable-java-awt=gtk --disable-dssi
--with-java-home=/usr/lib/jvm/java-1.5.0-gcj-1.5.0.0/jre
--enable-libgcj-multifile --disable-java-maintainer-mode
--with-ecj-jar=/usr/share/java/eclipse-ecj.jar --disable-libjava-multilib
--disable-sjlj-exceptions --disable-libmudflap
--with-gmp=/home/mikpe/pkgs/linux-m68k/gmp-5.0.2
--with-mpfr=/home/mikpe/pkgs/linux-m68k/mpfr-3.0.1
--with-mpc=/home/mikpe/pkgs/linux-m68k/mpc-0.9 --disable-plugin --disable-lto
--disable-multilib --disable-build-poststage1-with-cxx
BOOT_CFLAGS=-g -O2
Looking in gcc/testsuite/g++/g++.log I see many (more than 11000) undefined
references to __sync_sub_and_fetch_4, like this one:
Executing on host: /mnt/scratch/objdir47/gcc/testsuite/g++/../../g++
-B/mnt/scratch/objdir47/gcc/testsuite/g++/../../
/mnt/scratch/gcc-4.7-20111112/gcc/testsuite/g++.dg/bprob/g++-bprob-1.C
-nostdinc++
-I/mnt/scratch/objdir47/m68k-unknown-linux-gnu/libstdc++-v3/include/m68k-unknown-linux-gnu
-I/mnt/scratch/objdir47/m68k-unknown-linux-gnu/libstdc++-v3/include
-I/mnt/scratch/gcc-4.7-20111112/libstdc++-v3/libsupc++
-I/mnt/scratch/gcc-4.7-20111112/libstdc++-v3/include/backward
-I/mnt/scratch/gcc-4.7-20111112/libstdc++-v3/testsuite/util -fmessage-length=0
-g -fprofile-arcs
-L/mnt/scratch/objdir47/m68k-unknown-linux-gnu/./libstdc++-v3/src/.libs
-B/mnt/scratch/objdir47/m68k-unknown-linux-gnu/./libstdc++-v3/src/.libs
-L/mnt/scratch/objdir47/m68k-unknown-linux-gnu/./libstdc++-v3/src/.libs -lm
-o /mnt/scratch/objdir47/gcc/testsuite/g++/g++-bprob-1.x01 (timeout = 300)
/mnt/scratch/objdir47/m68k-unknown-linux-gnu/./libstdc++-v3/src/.libs/libstdc++.so:
undefined reference to `__sync_sub_and_fetch_4'
collect2: error: ld returned 1 exit status
Only C++ appears affected, the C test results were on par with last week's.
More information about the Gcc-bugs
mailing list