This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH] Improvements to -freorder-blocks-and-partition support
- From: Steven Bosscher <stevenb dot gcc at gmail dot com>
- To: Teresa Johnson <tejohnson at google dot com>
- Cc: Jan Hubicka <hubicka at ucw dot cz>, Jeff Law <law at redhat dot com>, "gcc-patches at gcc dot gnu dot org" <gcc-patches at gcc dot gnu dot org>, David Li <davidxl at google dot com>
- Date: Wed, 15 May 2013 08:02:08 +0200
- Subject: Re: [PATCH] Improvements to -freorder-blocks-and-partition support
- References: <20130514214201 dot 5DA3980BE7 at tjsboxrox dot mtv dot corp dot google dot com> <CABu31nMa88Tnr2+GoQZPxFPpS_23Rdk956Skk5RteRsm2Y3Pow at mail dot gmail dot com> <CAAe5K+VQThcZL6AWS=Wb322sBKd9dN2Th=8FbukgW=5nmA5XXQ at mail dot gmail dot com>
On Wed, May 15, 2013 at 12:50 AM, Teresa Johnson wrote:
> On Tue, May 14, 2013 at 2:49 PM, Steven Bosscher wrote:
>> One nit: Can you keep the verify_hot_cold_block_grouping function
>> separate? rtl_verify_flow_info* is already too big and complex
>> (somewhere down on my TODO list is splitting it up and improving
>> cfglayout mode checking, e.g. to make sure there are no barriers/notes
>> between basic blocks...).
>
> Initially that's what I did, but then it seemed less efficient because
> it adds another iteration over the BBs, so I instead merged the check
> with one of the existing BB iterations in that routine. Do you still
> prefer that I outline it?
I'm not concerned about efficiency of the checker routines. They only
run with checking enabled anyway. These checkers are almost the best
"documentation" of the rules of GCC's intermediate representations
that we have, so it's more important to me to make them easy to
understand, and to make sure these verifiers themselves are complete
and correct.
So another BB walk wouldn't be a problem IMHO. Some of the other
checkers do far worse things (some of them include non-linear
algorithms, for example).
Ciao!
Steven