http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48170
Summary: ICE: in hoist_code, at gcse.c:4524 with -fgcse --param max-hoist-depth={0,1} Product: gcc Version: 4.7.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: tree-optimization AssignedTo: unassig...@gcc.gnu.org ReportedBy: zso...@seznam.cz CC: mkuvyr...@gcc.gnu.org Host: x86_64-pc-linux-gnu Target: x86_64-pc-linux-gnu Created attachment 23701 --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=23701 reduced testcase Compiler output: $ gcc -O -fgcse --param max-hoist-depth=1 testcase.c testcase.c: In function 'bar': testcase.c:10:1: internal compiler error: in hoist_code, at gcse.c:4524 Please submit a full bug report, with preprocessed source if appropriate. See <http://gcc.gnu.org/bugs.html> for instructions. The same happens for max-hoist-depth=1, though if I understand the documentation correctly, 1 means "depth 1", 0 means "unlimited" (so maybe "gcc_assert (MAX_HOIST_DEPTH > 1)" checks the value is not one of these extrems?). Tested revisions: r171088 - crash 4.6 r170955 - crash 4.5 - doesn't know max-hoist-depth