http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50912
Bug #: 50912 Summary: [4.7 regression] gimple assertion failure at gimple.h:1940 with -msse2 Classification: Unclassified Product: gcc Version: 4.7.0 Status: UNCONFIRMED Keywords: ice-on-valid-code Severity: normal Priority: P3 Component: tree-optimization AssignedTo: unassig...@gcc.gnu.org ReportedBy: ebotca...@gcc.gnu.org Target: i?86-*-* x86_64-*-* Created attachment 25661 --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=25661 Concatenated testcase This is a regression introduced by the recent changes related to vectorization. If you compile the to-be-gnatchoped testcase with -O3 -msse2, you get: eric@atlantis:~/build/gcc> gcc/xgcc -Bgcc -S loop_optimization10.adb -O3 -msse2 +===========================GNAT BUG DETECTED==============================+ | 4.7.0 20111028 (experimental) [trunk revision 180610] (i586-suse-linux-gnu) GCC error:| | gimple check: expected gimple_assign(error_mark), have | | gimple_call(block) in gimple_assign_rhs_code, at gimple.h:1940 | | Error detected around loop_optimization10.adb:7:4 This compiles fine without -msse2. The testcase can directly be added to the testsuite as gnat.dg/loop_optimization10.ad[sb].