When I tried to compile library Qt 4.6.3 in 64-bit mode, I got internal compiler error. * Version gcc -v Using built-in specs. COLLECT_GCC=gcc COLLECT_LTO_WRAPPER=/usr/local/gcc-4.5.1/libexec/gcc/i386-pc-solaris2.10/4.5.1/lto-wrapper Target: i386-pc-solaris2.10 Configured with: ../configure --prefix=/usr/local/gcc-4.5.1 --with-gnu-as --with-as=/opt/csw/bin/gas --without-gnu-ld --with-ld=/usr/ccs/bin/ld --enable-nls --with-included-gettext --with-libiconv-prefix=/opt/csw --with-x --with-mpfr=/usr/local --with-gmp=/usr/local --with-mpc=/usr/local --enable-libssp --enable-objc-gc --enable-threads=posix --enable-languages=c,c++,objc,obj-c++ Thread model: posix gcc version 4.5.1 (GCC) * System version: Solaris 10 10/09 s10x_u8wos_08a X86 * commandline: g++ -c -m64 -save-temps -D_XOPEN_SOURCE=500 -D__EXTENSIONS__ -Wreturn-type -fno-strict-aliasing -ffunction-sections -fdata-sections -O2 -I/opt/csw/include -I/opt/csw/include/freetype2 -Wall -W -D_REENTRANT -fPIC -DQT_SHARED -DBUILDING_QT__=1 -DNDEBUG -DQT_NO_CAST_TO_ASCII -DQT_ASCII_CAST_WARNINGS -DQT3_SUPPORT -DQT_MOC_COMPAT -DBUILD_WEBKIT -DENABLE_JAVASCRIPT_DEBUGGER=1 -DENABLE_DATABASE=1 -DENABLE_EVENTSOURCE=1 -DENABLE_OFFLINE_WEB_APPLICATIONS=1 -DENABLE_DOM_STORAGE=1 -DENABLE_ICONDATABASE=1 -DENABLE_CHANNEL_MESSAGING=1 -DENABLE_ORIENTATION_EVENTS=0 -DENABLE_SQLITE=1 -DENABLE_DASHBOARD_SUPPORT=0 -DENABLE_FILTERS=0 -DENABLE_XPATH=1 -DENABLE_WCSS=0 -DENABLE_WML=0 -DENABLE_SHARED_WORKERS=1 -DENABLE_WORKERS=1 -DENABLE_XHTMLMP=0 -DENABLE_DATAGRID=0 -DENABLE_SVG=1 -DENABLE_SVG_FONTS=1 -DENABLE_SVG_FOREIGN_OBJECT=1 -DENABLE_SVG_ANIMATION=1 -DENABLE_SVG_AS_IMAGE=1 -DENABLE_SVG_USE=1 -DENABLE_RUBY=1 -DENABLE_VIDEO=0 -DENABLE_DATALIST=1 -DENABLE_NETSCAPE_PLUGIN_API=1 -DENABLE_WEB_SOCKETS=0 -DENABLE_XSLT=1 -DWTF_USE_JAVASCRIPTCORE_BINDINGS=1 -DWTF_CHANGES=1 -DBUILDING_QT__ -DBUILDING_JavaScriptCore -DBUILDING_WTF -DENABLE_JIT=1 -DENABLE_YARR_JIT=1 -DENABLE_YARR=1 -DXP_UNIX -DSQLITE_CORE -DSQLITE_OMIT_LOAD_EXTENSION -DSQLITE_OMIT_COMPLETE -DQT_NO_DEBUG -DQT_XMLPATTERNS_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -I../../../../mkspecs/solaris-g++-64 -I. -I../../../../include/QtCore -I../../../../include/QtNetwork -I../../../../include/QtGui -I../../../../include/QtXmlPatterns -I../../../../include -Ibridge/qt -Ipage/qt -Iplatform/graphics/qt -Iplatform/network/qt -Iplatform/qt -I../WebKit/qt/WebCoreSupport -I. -Iaccessibility -Ibindings/js -Ibridge -Ibridge/c -Icss -Idom -Idom/default -Iediting -Ihistory -Ihtml -Ihtml/canvas -Iinspector -Iloader -Iloader/appcache -Iloader/archive -Iloader/icon -Inotifications -Ipage -Ipage/animation -Iplatform -Iplatform/animation -Iplatform/graphics -Iplatform/graphics/filters -Iplatform/graphics/transforms -Iplatform/image-decoders -Iplatform/mock -Iplatform/network -Iplatform/sql -Iplatform/text -Iplugins -Irendering -Irendering/style -Istorage -Isvg -Isvg/animation -Isvg/graphics -Isvg/graphics/filters -Iwebsockets -Iwml -Iworkers -Ixml -Igenerated -I../JavaScriptCore -I../../webkit -I../JavaScriptCore/assembler -I../JavaScriptCore/bytecode -I../JavaScriptCore/bytecompiler -I../JavaScriptCore/debugger -I../JavaScriptCore/interpreter -I../JavaScriptCore/jit -I../JavaScriptCore/parser -I../JavaScriptCore/profiler -I../JavaScriptCore/runtime -I../JavaScriptCore/wrec -I../JavaScriptCore/wtf -I../JavaScriptCore/wtf/symbian -I../JavaScriptCore/wtf/unicode -I../JavaScriptCore/yarr -I../JavaScriptCore/API -I../JavaScriptCore/ForwardingHeaders -Igenerated -I../WebKit/qt/Api -I../../../../include/QtWebKit -I.rcc/release-shared -I../JavaScriptCore/pcre -I/Users/petrsup/tmp/qt-everywhere-opensource-src-4.6.3/src/3rdparty/webkit/WebKitBuild/Release/JavaScriptCore/tmp -I../../sqlite -I/usr/openwin/share/include -I.moc/release-shared -I/usr/sfw/include -o obj/release/Path.o platform/graphics/Path.cpp * error message: platform/graphics/Path.cpp: In static member function 'static WebCore::Path WebCore::Path::createEllipse(const WebCore::FloatPoint&, float, float)': platform/graphics/Path.cpp:222:6: internal compiler error: in redirect_eh_edge_1, at tree-eh.c:2135
Created attachment 21552 [details] Preprocessed file Preprocessed file on which compiler failed.
Created attachment 21553 [details] Preprocessed file Preprocessed file on which compiler fails. (with correct mime-type)
Reducing.
Confirmed. Reduced testcase, ICEs at -O1: class FloatPoint; class Path { public: ~Path(); void moveTo(const FloatPoint&); static void createEllipse(const FloatPoint& center, float rx, float ry); }; extern "C" { extern float cosf (float); extern float sinf (float); } const float piFloat = static_cast<float>(3.14159265358979323846); class FloatPoint { public: FloatPoint(float x, float y) : m_x(x), m_y(y) { } float x() const; float y() const; float m_x, m_y; }; void Path::createEllipse(const FloatPoint& center, float rx, float ry) { float cx = center.x(); float cy = center.y(); Path path; float x = cx; float y = cy; unsigned step = 0, num = 100; while (1) { float angle = static_cast<float>(step) / num * 2.0f * piFloat; x = cx + cosf(angle) * rx; y = cy + sinf(angle) * ry; step++; if (step == 1) path.moveTo(FloatPoint(x, y)); } }
For gcc 4.3 and 4.4, I got pr45393.cc:20: error: BB 4 can not throw but has EH edges pr45393.cc:20: error: BB 5 can not throw but has EH edges pr45393.cc:20: internal compiler error: verify_flow_info failed Please submit a full bug report, with preprocessed source if appropriate. See <http://gcc.gnu.org/bugs.html> for instructions. when checking is enabled.
Revision 146776: http://gcc.gnu.org/ml/gcc-cvs/2009-04/msg01418.html turns pr45393.cc:20: error: BB 4 can not throw but has EH edges pr45393.cc:20: error: BB 5 can not throw but has EH edges pr45393.cc:20: internal compiler error: verify_flow_info failed Please submit a full bug report, with preprocessed source if appropriate. See <http://gcc.gnu.org/bugs.html> for instructions. into pr45393.cc:20: internal compiler error: in redirect_eh_edge, at tree-eh.c:2042 Please submit a full bug report, with preprocessed source if appropriate. See <http://gcc.gnu.org/bugs.html> for instructions.
(In reply to comment #5) > For gcc 4.3 and 4.4, I got > > pr45393.cc:20: error: BB 4 can not throw but has EH edges > pr45393.cc:20: error: BB 5 can not throw but has EH edges > pr45393.cc:20: internal compiler error: verify_flow_info failed > Please submit a full bug report, > with preprocessed source if appropriate. > See <http://gcc.gnu.org/bugs.html> for instructions. > > when checking is enabled. > This bug is triggered by revision 121052: http://gcc.gnu.org/ml/gcc-cvs/2007-01/msg00757.html
Mine then.
Subject: Bug 45393 Author: rguenth Date: Wed Aug 25 10:47:50 2010 New Revision: 163541 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=163541 Log: 2010-08-25 Richard Guenther <rguenther@suse.de> PR tree-optimization/45393 * tree-ssa-math-opts.c (execute_cse_sincos_1): Properly transfer and clean EH info. Avoid SSA update. (execute_cse_sincos): Cleanup the CFG if it has changed. * g++.dg/torture/pr45393.C: New testcase. Added: trunk/gcc/testsuite/g++.dg/torture/pr45393.C Modified: trunk/gcc/ChangeLog trunk/gcc/testsuite/ChangeLog trunk/gcc/tree-ssa-math-opts.c
Fixed on trunk sofar.
Subject: Bug 45393 Author: hjl Date: Mon Aug 30 13:32:18 2010 New Revision: 163642 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=163642 Log: Properly transfer and clean EH info when CSE sincos. gcc/ 2010-08-30 H.J. Lu <hongjiu.lu@intel.com> Backport from mainline 2010-08-25 Richard Guenther <rguenther@suse.de> PR tree-optimization/45393 * tree-ssa-math-opts.c (execute_cse_sincos_1): Properly transfer and clean EH info. Avoid SSA update. (execute_cse_sincos): Cleanup the CFG if it has changed. gcc/testsuite/ 2010-08-30 H.J. Lu <hongjiu.lu@intel.com> Backport from mainline 2010-08-25 Richard Guenther <rguenther@suse.de> PR tree-optimization/45393 * g++.dg/torture/pr45393.C: New testcase. Added: branches/gcc-4_5-branch/gcc/testsuite/g++.dg/torture/pr45393.C Modified: branches/gcc-4_5-branch/gcc/ChangeLog branches/gcc-4_5-branch/gcc/testsuite/ChangeLog branches/gcc-4_5-branch/gcc/tree-ssa-math-opts.c
Fixed.
*** Bug 46214 has been marked as a duplicate of this bug. ***