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: Inconsistent next_bb info when EXIT is a successor


On 3/2/07, Andrey Belevantsev <abel@ispras.ru> wrote:
I have tried to reorganize the check so that the "e->src->next_bb ==
e->dest" condition is checked for all edges (see the patch below).  Of
course, GCC does not bootstrap with this patch, triggering an assert of
incorrect fallthru block in cfg_layout_finalize, after RTL loop
optimizations.  In my case, combine has broken that condition.

No. The condition you're checking is simply not true in cfglayout mode. The whole point of cfglayout mode is to get rid of the requirement that basic blocks are serial. That means a fallthru edge in cfglayout mode doesn't have to go to next_bb. It can go to *any* bb.

Gr.
Steven


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