http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54088
Bug #: 54088 Summary: ICE at dwarf2out.c:20632 with -O1 and sparc Classification: Unclassified Product: gcc Version: 4.7.1 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c AssignedTo: unassig...@gcc.gnu.org ReportedBy: jeng...@medozas.de Host: sparc64-suse-linux/sparcv9-suse-linux I have narrowed down a case whereby gcc-4.7.1-20120723 fails to compile itself on sparcv9 and sparc64. Host compiler: Using built-in specs. COLLECT_GCC=gcc COLLECT_LTO_WRAPPER=/usr/lib/gcc/sparc64-suse-linux/4.7/lto-wrapper Target: sparc64-suse-linux Configured with: ../configure --prefix=/usr --infodir=/usr/share/info --mandir=/usr/share/man --libdir=/usr/lib --libexecdir=/usr/lib --enable-languages=c,c++,objc,fortran,obj-c++,java --enable-checking=release --with-gxx-include-dir=/usr/include/c++/4.7 --enable-ssp --disable-libssp --disable-libitm --disable-plugin --with-bugurl=http://bugs.opensuse.org/ --with-pkgversion='SUSE Linux' --disable-libgcj --disable-libmudflap --with-slibdir=/lib --with-system-zlib --enable-__cxa_atexit --enable-libstdcxx-allocator=new --disable-libstdcxx-pch --enable-version-specific-runtime-libs --enable-linker-build-id --program-suffix=-4.7 --enable-linux-futex --without-system-libunwind --with-cpu=v8 --with-long-double-128 --build=sparc64-suse-linux Thread model: posix gcc version 4.7.1 20120723 [gcc-4_7-branch revision 189773] (SUSE Linux) The new compiler is configured a bit simplified: jengelh@ares:/tmp/gcc-4.7.1-20120723/obj> ../configure --with-cpu=v8 --enable-languages=c && make STAGE1_CFLAGS='-O1 -g' [...] Checking for build/host/target... sparc64-suse-linux [...] gcc -c -DIN_GCC_FRONTEND -O1 -g -DIN_GCC -W -Wall -Wno-narrowing -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 -fno-common -DHAVE_CONFIG_H -I. -I. -I../../gcc -I../../gcc/. -I../../gcc/../include -I../../gcc/../libcpp/include -I../../gcc/../libdecnumber -I../../gcc/../libdecnumber/dpd -I../libdecnumber ../../gcc/c-parser.c -o c-parser.o ../../gcc/c-parser.c: In function ‘c_parser_omp_for_loop’: ../../gcc/c-parser.c:10140:1: internal compiler error: in dwarf2out_var_location, at dwarf2out.c:20366 Please submit a full bug report, with preprocessed source if appropriate. This can happen in a bunch of different places; I have seen it occur with the gcc/graphite-poly.c source file also; in both cases, it triggered this assert in line 20332-20336: gcc_assert (prev && (CALL_P (prev) || (NONJUMP_INSN_P (prev) && GET_CODE (PATTERN (prev)) == SEQUENCE && CALL_P (XVECEXP (PATTERN (prev), 0, 0))))); A user account can be provided, if desired.