------- Comment #10 from rguenth at gcc dot gnu dot org  2008-08-17 11:18 
-------
And I have a patch to fix regular insertion.  Which means PRE now produces

foo (int i, int j, int k, int b)
{
  int prephitmp.12;
  int pretmp.11;
  struct Loc IND;
  int D.1922;
  int D.1921;
  int D.1920;
  int D.1919;
  int D.1918;
  int D.1916;

<bb 2>:
  if (b_1(D) != 0)
    goto <bb 3>;
  else
    goto <bb 4>;

<bb 3>:
  IND.x[0] = i_2(D);
  IND.x[1] = j_3(D);
  D.1916_5 = k_4(D) + -1;
  IND.x[2] = D.1916_5;
  goto <bb 5>;

<bb 4>:
  IND.x[0] = i_2(D);
  IND.x[1] = j_3(D);
  IND.x[2] = k_4(D);

<bb 5>:
  # prephitmp.12_20 = PHI <D.1916_5(3), k_4(D)(4)>
  D.1919_6 = i_2(D);
  D.1920_7 = j_3(D);
  D.1922_9 = prephitmp.12_20;
  D.1921_8 = D.1920_7 + D.1919_6;
  D.1918_10 = D.1921_8 + D.1922_9;
  return D.1918_10;

}

for the original testcase.


-- 


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

Reply via email to