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] Do not set BB_SUPERBLOCK in loop-unroll.c:split_edge_and_insert


On 2/25/07, Steven Bosscher <stevenb.gcc@gmail.com> wrote:
Hi,

This patch is a follow-up to a call-for-help I sent out last week:
http://gcc.gnu.org/ml/gcc/2007-02/msg00379.html

Further testing still doesn't show any breakage.  Also, it turns out that
loop-unswitch.c also uses compare_and_jump_seq(), without considering the
possibility that compare_and_jump_seq may produce insn chains with more
than one jump.  Apparently the BB_SUPERBLOCK trick in loop-unroll.c is
there to handle that possibility, but if loop-unswitch doesn't have to do
this, then I'm guessing that loop-unroll also doesn't need it.

So I'd like to just remove it, and replace it with a sanity check.

The worst thing that could happen with the attached patch is more test
suite failures iff something is broken by this change.  I will revert the
patch and figure out a fix in case something does break.

Bootstrapped&tested on {i686,x86_64,ia64}-unknown-linux-gnu, plus the
testing mentioned in the replies to my cfg (including bootstrap on alpha
with loop unrolling enabled).
OK for the trunk?

This is ok.


Thanks for the (useless) detective work.

Richard.


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