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 :(

Reply via email to