[Bug tree-optimization/81018] [8 regression] gfortran.dg/graphite/pr14741.f90 FAILs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81018 Jakub Jelinek changed: What|Removed |Added Priority|P3 |P4 CC||jakub at gcc dot gnu.org
[Bug tree-optimization/81018] [8 regression] gfortran.dg/graphite/pr14741.f90 FAILs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81018 --- Comment #5 from amker at gcc dot gnu.org --- Guess this reveals a miss-optimization in graphite. Pending this issue for now till it's fully understood.
[Bug tree-optimization/81018] [8 regression] gfortran.dg/graphite/pr14741.f90 FAILs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81018 --- Comment #4 from amker at gcc dot gnu.org --- So there are couple of concerns here. A) I moved iv_canon pass after loop split so that new loop generated can be completely unrolled if niter is known and small. As a result, we don't need to skip such loops in following optimizers like distribution and graphite. This case shows it is cunroll that is wanted, rather than ivcanon. B) iv_canon adds count-to-zero IV in type of unsigned, but graphite requires signed iv as in below code: static bool loop_ivs_can_be_represented (loop_p loop) { unsigned type_long_long = TYPE_PRECISION (long_long_integer_type_node); for (gphi_iterator psi = gsi_start_phis (loop->header); !gsi_end_p (psi); gsi_next ()) { gphi *phi = psi.phi (); tree res = PHI_RESULT (phi); tree type = TREE_TYPE (res); if (TYPE_UNSIGNED (type) && TYPE_PRECISION (type) >= type_long_long) return false; } return true; } This check could be relaxed? Given we know all values of the new unsigned IV can be represented by the corresponding signed type. C) What do we want to test for this test? Is it the loop nest multiplying matrix or the two initialization loops for A/B array? I guess it's the former? For now it's the latter which are tiled.
[Bug tree-optimization/81018] [8 regression] gfortran.dg/graphite/pr14741.f90 FAILs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81018 amker at gcc dot gnu.org changed: What|Removed |Added Assignee|unassigned at gcc dot gnu.org |amker at gcc dot gnu.org --- Comment #3 from amker at gcc dot gnu.org --- Sorry for disturbing, I will do investigation.
[Bug tree-optimization/81018] [8 regression] gfortran.dg/graphite/pr14741.f90 FAILs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81018 Richard Biener changed: What|Removed |Added CC||amker at gcc dot gnu.org --- Comment #2 from Richard Biener --- Caused by r248965 | amker | 2017-06-07 13:31:44 +0200 (Wed, 07 Jun 2017) | 2 lines * passes.def (pass_iv_canon): Move before pass_loop_distribution.
[Bug tree-optimization/81018] [8 regression] gfortran.dg/graphite/pr14741.f90 FAILs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81018 Dominique d'Humieres changed: What|Removed |Added Status|UNCONFIRMED |NEW Last reconfirmed||2017-06-08 CC||rguenth at gcc dot gnu.org Ever confirmed|0 |1 --- Comment #1 from Dominique d'Humieres --- Also seen on darwin with -m64.
[Bug tree-optimization/81018] [8 regression] gfortran.dg/graphite/pr14741.f90 FAILs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81018 Rainer Orth changed: What|Removed |Added Target Milestone|--- |8.0