The attached code generates an ICE on valid code with the following command line parameters:
p...@dogbert> gcc -O1 -ftree-vectorize -c hcmap.cpp hcmap.cpp: In function void map_do(): hcmap.cpp:5:6: internal compiler error: tree check: expected class expression, have exceptional (ssa_name) in vect_is_simple_reduction, at tree-vect-loop.c:1708 Please submit a full bug report, .... etc. p...@dogbert> gcc -v Using built-in specs. Target: x86_64-unknown-linux-gnu Configured with: /temp3/root/temp/gcc450/configure --prefix=/usr/local/gcc450 --enable-languages=c,c++,fortran Thread model: posix gcc version 4.5.0 20090804 (experimental) (GCC) (this is r150468 of the mainline). This bug only occurs on the mainline, not on any of the release branches 4.4 and older. In case this helps, adding -m32 makes the bug go away. -- Summary: ICE in vect_is_simple_reduction, at tree-vect- loop.c:1708 Product: gcc Version: 4.5.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: tree-optimization AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: p dot vanhoof at oma dot be http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41008