This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: IA-64 breakage from CFG branch merge 9
- From: Jan Hubicka <jh at suse dot cz>
- To: Jim Wilson <wilson at redhat dot com>
- Cc: gcc-patches at gcc dot gnu dot org
- Date: Fri, 8 Mar 2002 21:25:30 +0100
- Subject: Re: IA-64 breakage from CFG branch merge 9
- References: <200203080336.g283a8p01152@renascence.sfbay.redhat.com>
> This patch breaks IA-64 builds.
>
> Tue Mar 5 18:31:27 CET 2002 Jan Hubicka <jh@suse.cz>
>
> * cfg.c (dump_flow_info): Warn about profile mismatches.
> * cfgrtl.c (verify_flow_info): Few aditional sanity checks.
> (purge_dead_edges): Remove REG_BR_PROB notes on simplejumps.
>
> http://gcc.gnu.org/ml/gcc-patches/2002-02/msg02075.html
>
> This patch adds code to verify_flow_info to verify that bb edge probabilities
> match the REG_BR_PROB notes. Unfortunately, there is no code in
> find_basic_blocks to look at REG_BR_PROB notes or to try to set bb edge
> probabilities. Thus any call to find_basic_blocks when the function RTL
> contains REG_BR_PROB notes will fail when it calls verify_flow_info.
>
> This happens to the IA-64 port because MACHINE_DEPENDENT_REORG is calling
> find_basic_blocks to do IA-64 specific scheduling and bundling.
I guess all you need is to simply avoid that find_basic_blocks call.
The CFG should be consistent at the moment.
Alternatively we may want to disable verify_flow_info in find_basic_blocks,
but I would rather like to see all MDEP_REORGS to use CFG.
Honza