https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64110
Bug ID: 64110 Summary: ICE: Max. number of generated reload insns per insn is achieved (90) Product: gcc Version: 5.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: thiago at kde dot org When compiling the attached preprocessed sources, GCC 5 (trunk r218173) prints the following: /home/thiago/src/qt/qt5/qtbase/src/corelib/tools/qstringargbuilder.cpp: In function ‘replaceArgEscapes(QString const&, ArgEscapeData const&, int, QString const&, QString const&, QChar)’: /home/thiago/src/qt/qt5/qtbase/src/corelib/tools/qstringargbuilder.cpp:236:1: internal compiler error: Max. number of generated reload insns per insn is achieved (90) } ^ 0xb58ff0 lra_constraints(bool) /home/thiago/src/gcc/gcc/lra-constraints.c:4225 0xb48f01 lra(_IO_FILE*) /home/thiago/src/gcc/gcc/lra.c:2277 0xb08109 do_reload /home/thiago/src/gcc/gcc/ira.c:5391 0xb08109 execute /home/thiago/src/gcc/gcc/ira.c:5561 Original command-line: g++ -c -pipe -pipe -march=core-avx2 -mno-rtm -mno-hle -std=c++0x -pthread -O3 -g -maccumulate-outgoing-args -O3 -fvisibility=hidden -fvisibility-inlines-hidden -std=c++0x -flto -ffat-lto-objects -Wall -W -Werror -Wno-error=cpp -Wno-error=deprecated-declarations -Wno-error=strict-overflow -D_REENTRANT -fPIC -DQT_NO_USING_NAMESPACE -DQT_BUILD_CORE_LIB -DQT_BUILDING_QT -DQT_NO_CAST_TO_ASCII -DQT_ASCII_CAST_WARNINGS -DQT_MOC_COMPAT -DQT_USE_QSTRINGBUILDER -DQT_DEPRECATED_WARNINGS -DQT_DISABLE_DEPRECATED_BEFORE=0x050000 -DELF_INTERPRETER=\"/lib64/ld-linux-x86-64.so.2\" -DQT_USE_ICU -DQT_CORE_LIB -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -DQT_NO_DEBUG -I/home/thiago/src/qt/qt5/qtbase/mkspecs/linux-g++-optimised -I/home/thiago/src/qt/qt5/qtbase/src/corelib -I../../include -I../../include/QtCore -I../../include/QtCore/5.4.0 -I../../include/QtCore/5.4.0/QtCore -Iglobal -I/home/thiago/src/qt/qt5/qtbase/src/3rdparty/harfbuzz/src -I/home/thiago/src/qt/qt5/qtbase/src/3rdparty/md5 -I/home/thiago/src/qt/qt5/qtbase/src/3rdparty/md4 -I/home/thiago/src/qt/qt5/qtbase/src/3rdparty/sha3 -I/home/thiago/src/qt/qt5/qtbase/src/3rdparty/forkfd -isystem /usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I.moc -I. /home/thiago/src/qt/qt5/qtbase/src/corelib/tools/qstringargbuilder.cpp -o .obj/qstringargbuilder.o Minimal command-line for the .ii source: g++ -c -march=core-avx2 -mno-rtm -mno-hle -std=c++0x -pthread -O3 -D_REENTRANT -fPIC qstringargbuilder.ii -o .obj/qstringargbuilder.o If I remove the -march=core-avx2 option and compile the original .cpp file, there is no error.