This is the mail archive of the gcc-patches@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: [PATCH] Fix inconsistent CFG out of DOM1


On Sun, May 18, 2008 at 12:00 PM, Eric Botcazou <ebotcazou@adacore.com> wrote:
>> Hm, this exposes that we always allocate new blocks after the old ones,
>> which in theory should be an implementation detail...  but I guess we do so
>> elsewhere. So if you cannot imagine a more elegant solution here the patch
>> is ok.
>
> I can think of 2 other solutions:
> - a new flag BB_NEEDS_EH_CLEANUP on basic blocks inherited during the creation
> of the forwarder block, or
> - on return from thread_through_all_blocks, scanning the set of BB needing EH
> cleanup and, upon finding a forwarder block, moving the need_eh_cleanup bit
> to its single successor.  There is already a forwarder_block_p predicate for
> RTL, I can adapt it for Tree.

The latter sounds good to me.

Richard.


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