This is the mail archive of the
mailing list for the GCC project.
Re: [PATCH] Fix code quality regression on UltraSPARC
- From: Roger Sayle <roger at eyesopen dot com>
- To: Eric Botcazou <ebotcazou at libertysurf dot fr>
- Cc: gcc-patches at gcc dot gnu dot org
- Date: Sat, 11 Dec 2004 16:19:18 -0700 (MST)
- Subject: Re: [PATCH] Fix code quality regression on UltraSPARC
On Mon, 29 Nov 2004, Eric Botcazou wrote:
> 2004-11-29 Eric Botcazou <firstname.lastname@example.org>
> PR tree-optimization/18707
> * cfgloopmanip.c (create_preheader): Make sure the preheader
> is not inserted in the middle of consecutive predecessors.
Thanks to the wonders of IRC peer pressure, I decided to read-up
on cfgloopmanip.c and review your patch. The good news is that I
think your patch is OK for mainline, the bad news is that your
patch no long applies cleanly following Kazu's recent clean-ups to
Could you revise you patch against current mainline sources and
resubmit it after benchmarking and regression testing? Hopefully,
I should be able to approve it almost straight away.
I also think it should be relatively simple to improve upon your
preheader placement heuristics. The ideal block to place the
newly created preheader after is a predecessor that falls through
to the loop header. You should be able to detect this by checking
e->flags & EDGE_FALLTHRU, at which point you can break out of
your search for best_pred. What do you think?