------- Comment #2 from rguenth at gcc dot gnu dot org 2009-10-21 15:07 -------
Btw, the 2nd insertion is really weird (the first one in bb9 is just loop
invariant motion).
<bb 14>:
pretmp.7_45 = rootr.dt;
goto <bb 4>;
<bb 13>:
<bb 5>:
# prephitmp.8_48 = PHI <prephitmp.8_47(12), prephitmp.8_50(13)>
D.1375_18 = (real(kind=8)) i_3;
D.1376_19 = prephitmp.8_48;
fact_20 = D.1375_18 * D.1376_19;
if (js_9(D) <= D.1351_12)
goto <bb 15>;
else
goto <bb 16>;
it looks to me that we fail to translate over the first loop and its
header copy - something that partial-PRE ought to have accomplished.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41783