------- Comment #2 from dann at godzilla dot ics dot uci dot edu  2006-03-30 
16:43 -------
(In reply to comment #1)
> Note that this may be also PRE confusing SCEV in presence of loop headers. 

Talking about PRE, here's a maybe interesting observation in the PRE dump:

<L7>:;
  pretmp.30_53 = Int_Loc.0_4 * 200;
  pretmp.32_23 = (int[50] *) pretmp.30_53;
  pretmp.32_11 = pretmp.32_23 + Arr_2_Par_Ref_30;
  goto <bb 4> (<L2>);

<L6>:;
  pretmp.27_59 = Int_Loc.0_4 * 200;
  pretmp.28_45 = (int[50] *) pretmp.27_59;
  pretmp.28_49 = Arr_2_Par_Ref_30 + pretmp.28_45;

  # Int_Index_37 = PHI <Int_Index_58(7), Int_Loc_3(5)>;
<L0>:;
  D.1544_54 = pretmp.27_59;
  D.1545_55 = pretmp.28_45;
  D.1546_56 = pretmp.28_49;
  (*D.1546_56)[Int_Index_37] = Int_Loc_3;
  Int_Index_58 = Int_Index_37 + 1;
  if (D.1548_41 >= Int_Index_58) goto <L8>; else goto <L9>;

<L8>:;
  goto <bb 3> (<L0>);

<L9>:;

  # prephitmp.33_40 = PHI <D.1546_56(8), pretmp.32_11(6)>;
  # prephitmp.33_18 = PHI <D.1545_55(8), pretmp.32_23(6)>;
  # prephitmp.31_25 = PHI <D.1544_54(8), pretmp.30_53(6)>;


Compare pretmp.28_49 with pretmp.32_11, why are the arguments in a different
order? Is there something unstable in the PRE algorithm?

One has to wonder what are the tree-ch effects on more complex loops. 
It might be interesting test SPEC with and without tree-ch...


-- 


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

Reply via email to