This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [tree-ssa] Dce & infinite loops


Hello,

> >OK, I may easily extend the loop optimizer to remove empty loops if
> >there is a demand for it (once dce is fixed so that it is not done
> >even in cases it is incorrect, as happens now).
> >
> 
> How is the loop in your example different from a call to
> a non-terminating function returning void? I don't see
> why the optimizers would handle that correctly and not
> the infinite loop. Could you explain?

I had in one of previous mails, but anyway:  for the function we see it
has side effects (nontermination), so we mark it as neccesary.  For the
loop we do not.

The solution is obvious -- mark the backedges of the loops for that we are
not able to prove that they have to terminate as well.

Zdenek


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]