https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98497
Richard Biener <rguenth at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Last reconfirmed| |2021-01-05 Version|unknown |11.0 Known to fail| |11.0 Ever confirmed|0 |1 CC| |hubicka at gcc dot gnu.org, | |rguenth at gcc dot gnu.org Status|UNCONFIRMED |NEW --- Comment #1 from Richard Biener <rguenth at gcc dot gnu.org> --- The issue is a completely hosed profile: <bb 2> [local count: 108459]: _17 = x_15(D) + 131056; ivtmp.25_16 = (unsigned long) _17; ivtmp.26_41 = (unsigned long) x_15(D); _53 = ivtmp.26_41 + 4294836212; <bb 3> [local count: 108459]: # _43 = PHI <0.0(2), sum_50(5)> # ivtmp.25_45 = PHI <ivtmp.25_16(2), ivtmp.25_24(5)> # ivtmp.26_46 = PHI <ivtmp.26_41(2), ivtmp.26_27(5)> <bb 4> [local count: 650754]: # vect__44.6_21 = PHI <{ 0.0, 0.0, 0.0, 0.0 }(3), vect_sum_39.10_25(4)> # ivtmp.15_19 = PHI <ivtmp.26_46(3), ivtmp.15_44(4)> _10 = (void *) ivtmp.15_19; vect__34.9_28 = MEM <vector(4) float> [(float *)_10]; vect_sum_39.10_25 = vect__44.6_21 + vect__34.9_28; ivtmp.15_44 = ivtmp.15_19 + 16; if (ivtmp.15_44 != ivtmp.25_45) goto <bb 4>; [100.00%] else goto <bb 5>; [0.00%] <bb 5> [count: 0]: _38 = .REDUC_PLUS (vect_sum_39.10_25); _51 = (void *) ivtmp.25_45; _34 = MEM[(float *)_51]; _5 = MEM[(float *)_51 + 4B]; _1 = _5 + _34; _49 = MEM[(float *)_51 + 8B]; _52 = _43 + _49; _35 = _1 + _52; sum_50 = _35 + _38; ivtmp.25_24 = ivtmp.25_45 + 131068; ivtmp.26_27 = ivtmp.26_46 + 131068; if (ivtmp.25_24 != _53) goto <bb 3>; [100.00%] else goto <bb 6>; [0.00%] <bb 6> [count: 0]: return sum_50; We recompute the local profile after graphite but that doesn't seem to result in anything sensible: Predictions for bb 21 first match heuristics: 99.00% exec 54230 (estimated locally) hit 54230 (estimated locally) (100.0%) combined heuristics: 99.00% exec 54230 (estimated locally) hit 54230 (estimated locally) (100.0%) loop iterations heuristics of edge 21->20: 1.00% exec 54230 (estimated locally) hit 108460 (estimated locally) (200.0%) Predictions for bb 22 1 edges in bb 22 predicted to even probabilities Predictions for bb 20 first match heuristics: 99.00% exec 108459 (estimated locally) hit 108459 (estimated locally) (100.0%) combined heuristics: 99.00% exec 108459 (estimated locally) hit 108459 (estimated locally) (100.0%) loop iterations heuristics of edge 20->15: 1.00% exec 108459 (estimated locally) hit 216918 (estimated locally) (200.0%) GRAPHITE does (graphite.c:graphite_transform_loops) if (changed) { cleanup_tree_cfg (); profile_status_for_fn (cfun) = PROFILE_ABSENT; release_recorded_exits (cfun); tree_estimate_probability (false); } not releasing recorded exits doesn't help.