> Sadly no. Most of these (the *agu* ones) are also reached from final.
> For example:
>
> movdi_internal -> ix86_use_lea_for_mov -> ix86_lea_outperforms ->
> distance_non_agu_define -> distance_non_agu_define_in_bb
>
> Likewise for movsi_internal, and zero_extendsidi2. For the
> mov?i_internal d
On 05/19/2013 08:59 AM, Steven Bosscher wrote:
> Some ports have
> CFG-aware machine-reorg passes but verify_flow_info fails after the
> machine-reorg pass because the port emits insns between basic blocks,
> e.g. for const pools. What's missing is a way for verify_flow_info to
> be tolerant of suc
On 05/22/2013 03:17 PM, Steven Bosscher wrote:
Ah, the crazy stuff one can do after machine reorg. It's the Wild West
of GCC :-)
I still look at that hook as the contribution I most wish I'd never
made. The abuses are, umm, amazing.
jeff
On Wed, May 22, 2013 at 10:21 AM, Eric Botcazou wrote:
>> That is only partially true. Currently the transition is already de
>> facto going on: Just look at how many back ends use
>> compute_bb_for_insn to re-initialize the BLOCK_FOR_INSN pointers right
>> after pass_free_cfg (it's usually the fir
> That is only partially true. Currently the transition is already de
> facto going on: Just look at how many back ends use
> compute_bb_for_insn to re-initialize the BLOCK_FOR_INSN pointers right
> after pass_free_cfg (it's usually the first thing they do in the
> machine-reorg pass).
Yes, and we
On Tue, May 21, 2013 at 10:57 AM, Eric Botcazou wrote:
>> This patch allows targets to keep the CFG around until after final, by
>> skipping pass_free_cfg and CFG-destructive passes like dbr_schedule,
>> and by making insn splitting before 'final' use split_all_insns
>> instead of split_all_insns_n
> This patch allows targets to keep the CFG around until after final, by
> skipping pass_free_cfg and CFG-destructive passes like dbr_schedule,
> and by making insn splitting before 'final' use split_all_insns
> instead of split_all_insns_noflow if pass_free_cfg was skipped.
Well, you currently ca
Hello,
This patch allows targets to keep the CFG around until after final, by
skipping pass_free_cfg and CFG-destructive passes like dbr_schedule,
and by making insn splitting before 'final' use split_all_insns
instead of split_all_insns_noflow if pass_free_cfg was skipped.
Most machine reorg pas