------- Comment #12 from matz at gcc dot gnu dot org 2009-05-12 13:37 ------- The problem is that for PHI node expansion something has to be inserted on the backedge of a single BB loop, splitting it into two BBs (where one just contains one instruction). Something in the RTL passes then moves stuff into that first BB somehow limiting the scheduler then.
I'm working on a fix. Earlier compilers contained a hack for this (because swing modulo scheduling can only deal with single BB loops), which I removed as part of SSA expand, see PR34263 and PR19038. I'm working on an alternative solution that places the copy somewhere more intelligently than now. -- matz at gcc dot gnu dot org changed: What |Removed |Added ---------------------------------------------------------------------------- AssignedTo|unassigned at gcc dot gnu |matz at gcc dot gnu dot org |dot org | Status|UNCONFIRMED |ASSIGNED Ever Confirmed|0 |1 Last reconfirmed|0000-00-00 00:00:00 |2009-05-12 13:37:22 date| | http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39976