This is the mail archive of the
mailing list for the GCC project.
Re: [PATCH,RFC] CSE path following on basic blocks
On 11/26/06, Steven Bosscher <email@example.com> wrote:
On 11/26/06, Eric Botcazou <firstname.lastname@example.org> wrote:
> > This is the patch as it looks right now to make CSE path following
> > work on a trace of basic blocks isntead of on a list of insns. I
> > need to clean it up a bit more and write a ChangeLog, but I'm looking
> > for early comments now.
> Please post a ChangeLog for every patch. I know this is sometimes boring, but
> this greatly helps reviewers.
I will when I ask for a review. This was just RFC. As you can see in
the subject btw.
BTW, I will try to submit the largest part of the patch for review
today. I'm first re-testing the patch without the cfglayout bits.
That was just for testing that we can do that now, but it doesn't make
sense to run *only* CSE in cfglayout mode. Those bits will be part of
a later patch to make a larger part of the compiler work in cfglayout
Sadly, I'm kind of stuck at the moment on ifcvt. I had hoped that
fixing merge_if_block would be sufficient to make ifcvt work in
cfglayout mode too. But I'm looking at a complete rewrite now, because
there is just not enough information in merge_if_block to update the
CFG incrementally. And in cfglayout mode, we do not allow the merging
of blocks if can_merge_blocks_p is false for the to-be-merged blocks.
In cfgrtl mode we just do that all the time (e.g. in ifcvt but also in
cfgcleanup.c:merge_blocks_move -- and my goal with going to cfglayout
mode is to get rid of those...).