[PATCH] Fix code quality regression on UltraSPARC

Roger Sayle roger@eyesopen.com
Mon Dec 13 14:46:00 GMT 2004


On Mon, 13 Dec 2004, Eric Botcazou wrote:
> > This also finesses your question "??? Can this ever happen?",
> > to which the answer is yes it can.
>
> Do you mean the latch is allowed to have more than one edge to
> the header?

Doh!  My mistake, the call the make_forwarder_block should have
preserved the latch edges to the original loop header, so it
shouldn't appear in the preheader's predecessors.  You're quite
right, the statemet is superfluous.

So not only do we get to remove that loop, the current condition
can be simplified to just "e = EDGE_PRED (dummy, 0);", i.e. pick
an arbitrary preheader predecessor.

Sorry for the confusion.  As I mentioned before I keep thinking
in terms of the CFG/loop-best before this transformation, but
as you correctly point out, this bit of code gets run after we've
started making changes.

Roger
--



More information about the Gcc-patches mailing list