Bug 53710 - [4.8 Regression] Bootstrap failure
Summary: [4.8 Regression] Bootstrap failure
Status: RESOLVED DUPLICATE of bug 53706
Alias: None
Product: gcc
Classification: Unclassified
Component: bootstrap (show other bugs)
Version: 4.8.0
: P3 normal
Target Milestone: ---
Assignee: Not yet assigned to anyone
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2012-06-17 18:30 UTC by H.J. Lu
Modified: 2012-06-17 21:58 UTC (History)
3 users (show)

See Also:
Host:
Target:
Build:
Known to work:
Known to fail:
Last reconfirmed:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description H.J. Lu 2012-06-17 18:30:59 UTC
On Fedora 17/x86-64, revision 188675:

http://gcc.gnu.org/ml/gcc-cvs/2012-06/msg00585.html

failed to bootstrap when configured with

--with-arch=native --with-cpu=native

which leads to

-march=corei7-avx -mcx16 -msahf -mmovbe -maes -mpclmul -mpopcnt -mabm -mno-lwp -mfma -mno-fma4 -mno-xop -mbmi -mbmi2 -mno-tbm -mavx -mavx2 -msse4.2 -msse4.1 -mlzcnt -mrtm -mhle -mrdrnd -mf16c -mfsgsbase

I got

/export/build/gnu/gcc-x32-native/build-x86_64-linux/./prev-gcc/g++ -B/export/build/gnu/gcc-x32-native/build-x86_64-linux/./prev-gcc/ -B/usr/gcc-4.8.0-x32-native/x86_64-unknown-linux-gnu/bin/ -nostdinc++ -B/export/build/gnu/gcc-x32-native/build-x86_64-linux/prev-x86_64-unknown-linux-gnu/libstdc++-v3/src/.libs -B/export/build/gnu/gcc-x32-native/build-x86_64-linux/prev-x86_64-unknown-linux-gnu/libstdc++-v3/libsupc++/.libs -I/export/build/gnu/gcc-x32-native/build-x86_64-linux/prev-x86_64-unknown-linux-gnu/libstdc++-v3/include/x86_64-unknown-linux-gnu -I/export/build/gnu/gcc-x32-native/build-x86_64-linux/prev-x86_64-unknown-linux-gnu/libstdc++-v3/include -I/export/gnu/import/git/gcc/libstdc++-v3/libsupc++ -L/export/build/gnu/gcc-x32-native/build-x86_64-linux/prev-x86_64-unknown-linux-gnu/libstdc++-v3/src/.libs -L/export/build/gnu/gcc-x32-native/build-x86_64-linux/prev-x86_64-unknown-linux-gnu/libstdc++-v3/libsupc++/.libs -c   -g -O2 -DIN_GCC   -fno-exceptions -fno-rtti -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wmissing-format-attribute -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -Werror -fno-common  -DHAVE_CONFIG_H -I. -I. -I/export/gnu/import/git/gcc/gcc -I/export/gnu/import/git/gcc/gcc/. -I/export/gnu/import/git/gcc/gcc/../include -I/export/gnu/import/git/gcc/gcc/../libcpp/include  -I/export/gnu/import/git/gcc/gcc/../libdecnumber -I/export/gnu/import/git/gcc/gcc/../libdecnumber/bid -I../libdecnumber    /export/gnu/import/git/gcc/gcc/tree-vect-loop.c -o tree-vect-loop.o
*** glibc detected *** /export/build/gnu/gcc-x32-native/build-x86_64-linux/./prev-gcc/cc1plus: corrupted double-linked list: 0x0000000002408e20 ***
======= Backtrace: =========
/lib64/libc.so.6[0x339167befd]
/lib64/libc.so.6[0x339167c6a8]
/export/build/gnu/gcc-x32-native/build-x86_64-linux/./prev-gcc/cc1plus(htab_delete+0x65)[0xf35fe5]
/export/build/gnu/gcc-x32-native/build-x86_64-linux/./prev-gcc/cc1plus[0xc4867b]
/export/build/gnu/gcc-x32-native/build-x86_64-linux/./prev-gcc/cc1plus(_Z22variable_tracking_mainv+0xbd)[0xc4a0bd]
/export/build/gnu/gcc-x32-native/build-x86_64-linux/./prev-gcc/cc1plus(_Z16execute_one_passP8opt_pass+0x115)[0x9a41e5]
/export/build/gnu/gcc-x32-native/build-x86_64-linux/./prev-gcc/cc1plus(_Z17execute_pass_listP8opt_pass+0x15)[0x9a45a5]
/export/build/gnu/gcc-x32-native/build-x86_64-linux/./prev-gcc/cc1plus(_Z17execute_pass_listP8opt_pass+0x27)[0x9a45b7]
/export/build/gnu/gcc-x32-native/build-x86_64-linux/./prev-gcc/cc1plus(_Z17execute_pass_listP8opt_pass+0x27)[0x9a45b7]
/export/build/gnu/gcc-x32-native/build-x86_64-linux/./prev-gcc/cc1plus[0x79a108]
/export/build/gnu/gcc-x32-native/build-x86_64-linux/./prev-gcc/cc1plus(_Z7compilev+0x854)[0x79be24]
/export/build/gnu/gcc-x32-native/build-x86_64-linux/./prev-gcc/cc1plus(_Z25finalize_compilation_unitv+0x65)[0x79c3c5]
/export/build/gnu/gcc-x32-native/build-x86_64-linux/./prev-gcc/cc1plus(_Z28cp_write_global_declarationsv+0xc5b)[0x5d891b]
/export/build/gnu/gcc-x32-native/build-x86_64-linux/./prev-gcc/cc1plus(_Z11toplev_mainiPPc+0xa34)[0xa47a44]
/lib64/libc.so.6(__libc_start_main+0xf5)[0x3391621735]
/export/build/gnu/gcc-x32-native/build-x86_64-linux/./prev-gcc/cc1plus[0x4ff1b1]
======= Memory map: ========
00400000-01321000 r-xp 00000000 08:11 6427104                            /export/build/gnu/gcc-x32-native/build-x86_64-linux/prev-gcc/cc1plus
01520000-0152b000 rw-p 00f20000 08:11 6427104                            /export/build/gnu/gcc-x32-native/build-x86_64-linux/prev-gcc/cc1plus
0152b000-02458000 rw-p 00000000 00:00 0                                  [heap]
3391200000-3391221000 r-xp 00000000 08:07 933270                         /usr/lib64/ld-2.15.so
3391420000-3391421000 r--p 00020000 08:07 933270                         /usr/lib64/ld-2.15.so
3391421000-3391422000 rw-p 00021000 08:07 933270                         /usr/lib64/ld-2.15.so
3391422000-3391423000 rw-p 00000000 00:00 0 
3391600000-33917ac000 r-xp 00000000 08:07 926387                         /usr/lib64/libc-2.15.so
33917ac000-33919ac000 ---p 001ac000 08:07 926387                         /usr/lib64/libc-2.15.so
33919ac000-33919b0000 r--p 001ac000 08:07 926387                         /usr/lib64/libc-2.15.so
33919b0000-33919b2000 rw-p 001b0000 08:07 926387                         /usr/lib64/libc-2.15.so
33919b2000-33919b7000 rw-p 00000000 00:00 0 
3391a00000-3391a03000 r-xp 00000000 08:07 933176                         /usr/lib64/libgmpxx.so.4.2.2
3391a03000-3391c03000 ---p 00003000 08:07 933176                         /usr/lib64/libgmpxx.so.4.2.2
3391c03000-3391c04000 rw-p 00003000 08:07 933176                         /usr/lib64/libgmpxx.so.4.2.2
3391e00000-3391ef5000 r-xp 00000000 08:07 932868                         /usr/lib64/libppl.so.9.0.0
3391ef5000-33920f5000 ---p 000f5000 08:07 932868                         /usr/lib64/libppl.so.9.0.0
33920f5000-33920f6000 r--p 000f5000 08:07 932868                         /usr/lib64/libppl.so.9.0.0
33920f6000-33920f9000 rw-p 000f6000 08:07 932868                         /usr/lib64/libppl.so.9.0.0
3392200000-3392204000 r-xp 00000000 08:07 927611                         /usr/lib64/libpwl.so.5.0.0
3392204000-3392403000 ---p 00004000 08:07 927611                         /usr/lib64/libpwl.so.5.0.0
3392403000-3392404000 r--p 00003000 08:07 927611                         /usr/lib64/libpwl.so.5.0.0
3392404000-3392405000 rw-p 00004000 08:07 927611                         /usr/lib64/libpwl.so.5.0.0
3392600000-33926f9000 r-xp 00000000 08:07 932988                         /usr/lib64/libm-2.15.so
33926f9000-33928f8000 ---p 000f9000 08:07 932988                         /usr/lib64/libm-2.15.so
33928f8000-33928f9000 r--p 000f8000 08:07 932988                         /usr/lib64/libm-2.15.so
33928f9000-33928fa000 rw-p 000f9000 08:07 932988                         /usr/lib64/libm-2.15.so
3392a00000-3392a1f000 r-xp 00000000 08:07 926018                         /usr/lib64/libcloog.so.0.0.0
3392a1f000-3392c1e000 ---p 0001f000 08:07 926018                         /usr/lib64/libcloog.so.0.0.0
3392c1e000-3392c1f000 r--p 0001e000 08:07 926018                         /usr/lib64/libcloog.so.0.0.0
3392c1f000-3392c20000 rw-p 0001f000 08:07 926018                         /usr/lib64/libcloog.so.0.0.0
3392c20000-3392c22000 rw-p 00000000 00:00 0 
3392e00000-3392e65000 r-xp 00000000 08:07 924907                         /usr/lib64/libgmp.so.10.0.2
3392e65000-3393064000 ---p 00065000 08:07 924907                         /usr/lib64/libgmp.so.10.0.2
3393064000-339306d000 rw-p 00064000 08:07 924907                         /usr/lib64/libgmp.so.10.0.2
3393200000-3393616000 r-xp 00000000 08:07 933311                         /usr/lib64/libppl_c.so.4.0.0
3393616000-3393815000 ---p 00416000 08:07 933311                         /usr/lib64/libppl_c.so.4.0.0
3393815000-3393816000 r--p 00415000 08:07 933311                         /usr/lib64/libppl_c.so.4.0.0
3393816000-339381c000 rw-p 00416000 08:07 933311                         /usr/lib64/libppl_c.so.4.0.0
3393a00000-3393a57000 r-xp 00000000 08:07 932891                         /usr/lib64/libmpfr.so.4.1.0
3393a57000-3393c56000 ---p 00057000 08:07 932891                         /usr/lib64/libmpfr.so.4.1.0
3393c56000-3393c58000 r--p 00056000 08:07 932891                         /usr/lib64/libmpfr.so.4.1.0
3393c58000-3393c59000 rw-p 00058000 08:07 932891                         /usr/lib64/libmpfr.so.4.1.0
339be00000-339bee5000 r-xp 00000000 08:07 932960                         /usr/lib64/libstdc++.so.6.0.17
339bee5000-339c0e4000 ---p 000e5000 08:07 932960                         /usr/lib64/libstdc++.so.6.0.17
339c0e4000-339c0ec000 r--p 000e4000 08:07 932960                         /usr/lib64/libstdc++.so.6.0.17
339c0ec000-339c0ee000 rw-p 000ec000 08:07 932960                         /usr/lib64/libstdc++.so.6.0.17
339c0ee000-339c103000 rw-p 00000000 00:00 0 
7fffec0c6000-7fffec0c9000 rw-p 00000000 00:00 0 
7fffec279000-7fffed814000 rw-p 00000000 00:00 0 
7fffed9c8000-7fffee47a000 rw-p 00000000 00:00 0 
7fffee610000-7fffeff1a000 rw-p 00000000 00:00 0 
7ffff0118000-7ffff079b000 rw-p 00000000 00:00 0 
7ffff087d000-7ffff0c9d000 rw-p 00000000 00:00 0 
7ffff0cdc000-7ffff1103000 rw-p 00000000 00:00 0 
7ffff1122000-7ffff1340000 rw-p 00000000 00:00 0 
7ffff1361000-7ffff778e000 r--p 00000000 08:07 1575229                    /usr/lib/locale/locale-archive
7ffff778e000-7ffff7793000 rw-p 00000000 00:00 0 
7ffff7793000-7ffff77a8000 r-xp 00000000 08:11 6429424                    /export/build/gnu/gcc-x32-native/build-x86_64-linux/prev-gcc/libgcc_s.so.1
7ffff77a8000-7ffff79a7000 ---p 00015000 08:11 6429424                    /export/build/gnu/gcc-x32-native/build-x86_64-linux/prev-gcc/libgcc_s.so.1
7ffff79a7000-7ffff79a8000 rw-p 00014000 08:11 6429424                    /export/build/gnu/gcc-x32-native/build-x86_64-linux/prev-gcc/libgcc_s.so.1
7ffff79a8000-7ffff79aa000 rw-p 00000000 00:00 0 
7ffff79aa000-7ffff79c1000 r-xp 00000000 08:07 925387                     /usr/lib64/libz.so.1.2.5
7ffff79c1000-7ffff7bc0000 ---p 00017000 08:07 925387                     /usr/lib64/libz.so.1.2.5
7ffff7bc0000-7ffff7bc1000 rw-p 00016000 08:07 925387                     /usr/lib64/libz.so.1.2.5
7ffff7bc1000-7ffff7bc4000 r-xp 00000000 08:07 928236                     /usr/lib64/libdl-2.15.so
7ffff7bc4000-7ffff7dc3000 ---p 00003000 08:07 928236                     /usr/lib64/libdl-2.15.so
7ffff7dc3000-7ffff7dc4000 r--p 00002000 08:07 928236                     /usr/lib64/libdl-2.15.so
7ffff7dc4000-7ffff7dc5000 rw-p 00003000 08:07 928236                     /usr/lib64/libdl-2.15.so
7ffff7dc5000-7ffff7dc6000 rw-p 00000000 00:00 0 
7ffff7dc6000-7ffff7dda000 r-xp 00000000 08:07 927636                     /usr/lib64/libmpc.so.2.0.0
7ffff7dda000-7ffff7fd9000 ---p 00014000 08:07 927636                     /usr/lib64/libmpc.so.2.0.0
7ffff7fd9000-7ffff7fda000 r--p 00013000 08:07 927636                     /usr/lib64/libmpc.so.2.0.0
7ffff7fda000-7ffff7fdb000 rw-p 00014000 08:07 927636                     /usr/lib64/libmpc.so.2.0.0
7ffff7fdb000-7ffff7fdd000 rw-p 00000000 00:00 0 
7ffff7ffc000-7ffff7ffe000 rw-p 00000000 00:00 0 
7ffff7ffe000-7ffff7fff000 r-xp 00000000 00:00 0                          [vdso]
7ffffffdb000-7ffffffff000 rw-p 00000000 00:00 0                          [stack]
ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0                  [vsyscall]
/export/gnu/import/git/gcc/gcc/tree-vect-loop.c: In function \u2018void vect_create_epilog_for_reduction(VEC_tree_heap*, gimple, int, tree_code, VEC_gimple_heap*, int, bool, slp_tree)\u2019:
/export/gnu/import/git/gcc/gcc/tree-vect-loop.c:4320:1: internal compiler error: Aborted
 } 
 ^
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://gcc.gnu.org/bugs.html> for instructions.
make[5]: *** [tree-vect-loop.o] Error 1
make[5]: *** Waiting for unfinished jobs....
rm gcj-dbtool.pod jcf-dump.pod cpp.pod jv-convert.pod gcj.pod gc-analyze.pod gfdl.pod gij.pod gccgo.pod fsf-funding.pod grmic.pod gfortran.pod gcc.pod gcov.pod
make[5]: Leaving directory `/export/build/gnu/gcc-x32-native/build-x86_64-linux/gcc'
make[4]: *** [all-stage3-gcc] Error 2
make[4]: Leaving directory `/export/build/gnu/gcc-x32-native/build-x86_64-linux'
make[3]: *** [stage3-bubble] Error 2
make[3]: Leaving directory `/export/build/gnu/gcc-x32-native/build-x86_64-linux'
make[2]: *** [bootstrap] Error 2
Comment 1 H.J. Lu 2012-06-17 18:35:28 UTC
There is no problem on processors where -march=native gives

-march=corei7-avx -mcx16 -msahf -mno-movbe -maes -mpclmul -mpopcnt -mno-abm -mno-lwp -mno-fma -mno-fma4 -mno-xop -mno-bmi -mno-bmi2 -mno-tbm -mavx -mno-avx2 -msse4.2 -msse4.1 -mno-lzcnt -mno-rtm -mno-hle -mrdrnd -mf16c -mfsgsbase
Comment 2 Uroš Bizjak 2012-06-17 19:35:48 UTC
(In reply to comment #0)
> *** glibc detected ***
> /export/build/gnu/gcc-x32-native/build-x86_64-linux/./prev-gcc/cc1plus:
> corrupted double-linked list: 0x0000000002408e20 ***
> ======= Backtrace: =========
> /lib64/libc.so.6[0x339167befd]
> /lib64/libc.so.6[0x339167c6a8]
> /export/build/gnu/gcc-x32-native/build-x86_64-linux/./prev-gcc/cc1plus(htab_delete+0x65)[0xf35fe5]
> /export/build/gnu/gcc-x32-native/build-x86_64-linux/./prev-gcc/cc1plus[0xc4867b]
> /export/build/gnu/gcc-x32-native/build-x86_64-linux/./prev-gcc/cc1plus(_Z22variable_tracking_mainv+0xbd)[0xc4a0bd]
> /export/build/gnu/gcc-x32-native/build-x86_64-linux/./prev-gcc/cc1plus(_Z16execute_one_passP8opt_pass+0x115)[0x9a41e5]
> /export/build/gnu/gcc-x32-native/build-x86_64-linux/./prev-gcc/cc1plus(_Z17execute_pass_listP8opt_pass+0x15)[0x9a45a5]
> /export/build/gnu/gcc-x32-native/build-x86_64-linux/./prev-gcc/cc1plus(_Z17execute_pass_listP8opt_pass+0x27)[0x9a45b7]
> /export/build/gnu/gcc-x32-native/build-x86_64-linux/./prev-gcc/cc1plus(_Z17execute_pass_listP8opt_pass+0x27)[0x9a45b7]
> /export/build/gnu/gcc-x32-native/build-x86_64-linux/./prev-gcc/cc1plus[0x79a108]

Are you sure about the revision?

Probably dup of PR53706.
Comment 3 H.J. Lu 2012-06-17 20:01:29 UTC
(In reply to comment #2)
> Are you sure about the revision?
> 
> Probably dup of PR53706.

They could be related since bootstrap passes when I
turn off FMA on i386:

diff --git a/gcc/config/i386/driver-i386.c b/gcc/config/i386/driver-i386.c
index 94f3819..a1fa2b7 100644
--- a/gcc/config/i386/driver-i386.c
+++ b/gcc/config/i386/driver-i386.c
@@ -445,7 +445,9 @@ const char *host_detect_local_cpu (int argc, const char **argv)
   has_popcnt = ecx & bit_POPCNT;
   has_aes = ecx & bit_AES;
   has_pclmul = ecx & bit_PCLMUL;
+#if 0
   has_fma = ecx & bit_FMA;
+#endif
   has_f16c = ecx & bit_F16C;
   has_rdrnd = ecx & bit_RDRND;

and IA64 has FMA.
Comment 4 H.J. Lu 2012-06-17 21:18:59 UTC
Adding -g0 or -mno-fma compiles tree-vect-loop.o fine.
Comment 5 H.J. Lu 2012-06-17 21:58:44 UTC
Dup

*** This bug has been marked as a duplicate of bug 53706 ***