This happens on powerpc, not on i386 or x86_86: 1084:tbm@test: ~/delta/bin] /usr/lib/gcc-snapshot/bin/g++ -c -O2 mini.c mini.c: In member function 'BASE* alps::detail::creator<BASE, T>::create() const [with BASE = alps::BufferedRandomNumberGeneratorBase, T = alps::BufferedRandomNumberGenerator<boost::random::lagged_fibonacci_01<double, 48, 607u, 273u> >]': mini.c:333: error: too many outgoing branch edges from bb 4 mini.c:333: internal compiler error: verify_flow_info failed Please submit a full bug report, with preprocessed source if appropriate. See <URL:http://gcc.gnu.org/bugs.html> for instructions. zsh: exit 1 /usr/lib/gcc-snapshot/bin/g++ -c -O2 mini.c 1085:tbm@test: ~/delta/bin] /usr/lib/gcc-snapshot/bin/g++ -c mini.c 1086:tbm@test: ~/delta/bin] g++-4.1 -c -O2 mini.c 1087:tbm@test: ~/delta/bin]
Created attachment 11329 [details] test case (fairly large still)
I forgot if the error is a RTL issue or a tree level issue.
Confirmed, but very interesting. It ICEs in RTL.
"-O2 -fno-branch-count-reg" works.
Patch: http://gcc.gnu.org/ml/gcc-patches/2006-04/msg01058.html
Subject: Bug 27291 Author: rakdver Date: Mon May 1 20:46:22 2006 New Revision: 113430 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=113430 Log: PR rtl-optimization/27291 * loop-doloop.c (add_test, doloop_modify): Handle the case condition is folded to a constant. * g++.dg/tree-ssa/pr27291.C: New test. Added: trunk/gcc/testsuite/g++.dg/tree-ssa/pr27291.C Modified: trunk/gcc/ChangeLog trunk/gcc/loop-doloop.c trunk/gcc/testsuite/ChangeLog
Fixed.
Subject: Bug 27291 Author: sje Date: Thu Aug 3 16:35:31 2006 New Revision: 115904 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=115904 Log: PR rtl-optimization/28221 Backport from mainline. 2005-11-30 Nathan Sidwell <nathan@codesourcery.com> * loop-doloop.c (add_test): Only add jump note if we did emit a jump. 2006-05-01 Zdenek Dvorak <dvorakz@suse.cz> PR rtl-optimization/27291 * loop-doloop.c (add_test, doloop_modify): Handle the case condition is folded to a constant. Modified: branches/gcc-4_1-branch/gcc/ChangeLog branches/gcc-4_1-branch/gcc/loop-doloop.c