http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52471
Bug #: 52471 Summary: ICE bootstrapping GCC 4.7.0-20120302 on x86_64 OpenBSD Classification: Unclassified Product: gcc Version: 4.7.0 Status: UNCONFIRMED Severity: major Priority: P3 Component: bootstrap AssignedTo: unassig...@gcc.gnu.org ReportedBy: k...@arbyte.us Created attachment 26819 --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=26819 libgcc2.i While bootstrapping GCC 4.7.0-20120302 on x86_64 OpenBSD (an unsupported platform; see #39572) I get an internal compiler error. Configured with: ../gcc/configure --program-suffix=-4.7.0-rc1 --enable-threads In directory /storage/gcc470rc1/obj/x86_64-unknown-openbsd4.8/libgcc /storage/gcc470rc1/obj/./gcc/xgcc -B/storage/gcc470rc1/obj/./gcc/ -B/usr/local/x86_64-unknown-openbsd4.8/bin/ -B/usr/local/x86_64-unknown-openbsd4.8/lib/ -isystem /usr/local/x86_64-unknown-openbsd4.8/include -isystem /usr/local/x86_64-unknown-openbsd4.8/sys-include -g -O2 -O2 -g -O2 -DIN_GCC -W -Wall -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition -isystem ./include -fpic -pthread -g -DIN_LIBGCC2 -fbuilding-libgcc -fno-stack-protector -fpic -pthread -I. -I. -I../.././gcc -I../../../gcc/libgcc -I../../../gcc/libgcc/. -I../../../gcc/libgcc/../gcc -I../../../gcc/libgcc/../include -DHAVE_CC_TLS -o _fixunsxfdi.o -MT _fixunsxfdi.o -MD -MP -MF _fixunsxfdi.dep -DL_fixunsxfdi -c ../../../gcc/libgcc/libgcc2.c ../../../gcc/libgcc/libgcc2.c: In function '__fixunsxfti': ../../../gcc/libgcc/libgcc2.c:1281:1: internal compiler error: vector VEC(dw_cfi_ref,gc) grow domain error, in update_row_reg_save at dwarf2cfi.c:454 This ICE occurs whether I'm using the bootstrapping compiler (gcc 4.7.0), the previous gcc I built (gcc 4.6.2), or the system compiler (gcc 4.2.1). Attached find the libgcc2.i produced from /storage/gcc470rc1/obj/./gcc/xgcc -v -save-temps I did NOT encounter this problem while bootstrapping gcc 4.6.2. APPENDIX -------- Here are my source edits to enable bootstrapping on x86_64 OpenBSD. I haven't been able to obtain a release from my employer to submit these myself, but hopefully they are trivial enough that it is appropriate for someone else to do the copy and paste: libgcc/config.host - add x86_64, same as i[34567]86. i[34567]86-*-openbsd*) ;; +x86_64-*-openbsd*) + ;; gcc/config.gcc - add x86_64, same as i[34567]86. i[34567]86-*-openbsd*) tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h" tm_file="${tm_file} openbsd.h openbsd-stdint.h openbsd-libpthread.h i386/openbsdelf.h" extra_options="${extra_options} openbsd.opt" gas=yes gnu_ld=yes ;; +x86_64-*-openbsd*) + tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h" + tm_file="${tm_file} openbsd.h openbsd-stdint.h openbsd-libpthread.h i386/openbsdelf.h" + extra_options="${extra_options} openbsd.opt" + gas=yes + gnu_ld=yes + ;;