http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58679
Bug ID: 58679
Summary: [4.9 regression] ICE in create_pre_exit, at
mode-switching.c:421 with -mavx after r202915
Product: gcc
Version: 4.9.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: rtl-optimization
Assignee: unassigned at gcc dot gnu.org
Reporter: izamyatin at gmail dot com
CC: yvan.roux at linaro dot org
Host: x86
Target: x86
Happens with gcc.c-torture/execute/pr30185.c with just "-O2 -mavx" options.
Removing all REG_DEAD and REG_UNUSED notes as said in r202915 affected work of
single_set_2 for
if (GET_CODE (pat) == PARALLEL)
and hence in mode-switching.c single_set now returns NULL for
return_copy_pat = single_set (return_copy);
Not sure who is exactly wrong here - create_pre_exit code doesn't look very
clear :(