[Bug tree-optimization/50693] Loop optimization restricted by GOTOs

irar at il dot ibm.com gcc-bugzilla@gcc.gnu.org
Tue Oct 11 07:15:00 GMT 2011


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50693

Ira Rosen <irar at il dot ibm.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |irar at il dot ibm.com

--- Comment #11 from Ira Rosen <irar at il dot ibm.com> 2011-10-11 07:15:15 UTC ---
The vectorizer doesn't handle control flow in loop, and for the second loop we
have:

<bb 3>:
  goto <bb 7> (copy_block);

loop_back:
  if (n_3(D) > i_10)
    goto <bb 6>;
  else
    goto <bb 5>;

<bb 5>:
  pretmp.20_6 = v_20->chars;
  goto <bb 8> (end);

<bb 6>:
  pretmp.20_2 = v_20->chars;

  # i_29 = PHI <i_10(6), 0(3)>
  # prephitmp.21_1 = PHI <pretmp.20_2(6), D.4528_22(3)>
copy_block:
  D.4443_8 = prephitmp.21_1 + i_29;
  *D.4443_8 = c_9(D);
  i_10 = i_29 + 1;
  goto <bb 4> (loop_back);



More information about the Gcc-bugs mailing list