Hi,

On Tue, Aug 11 2020, Gary Oblock via Gcc wrote:
> For these two dump files:
>
> exe.ltrans0.ltrans.074i.cp
>
> and
>
> exe.ltrans0.ltrans.087i.structure-reorg
>
> doesn't the ".074i." mean that this dump was created
> before the ".087i." dump?
>
> If so then why does the ".074i." show GIMPLE that was
> created in the structure-reorg pass?

Honza will correct me if I am wrong but this is basically an unfortunate
effect of allowing "simple" "late" IPA passes while simultaneously
trying to achieve memory locality - i.e. after IPA we'd like to process
one function at a time and only access that function in memory, as much
as possible.  Therefore, transformation phases of proper IPA passes are
run just before the late normal intra-procedural on the same function.

But late_ipa_passes are run before that, so that they have a chance to
do their thing.  Because they cannot do WPA, they are really considered
second class citizens (that is at least my impression) and because they
wreck havoc to memory locality, we'd like to have as few of them as
possible - at least turned on by default.

Consider this another incentive to eventually upgrade your passes to
full IPA ones.

Martin

Reply via email to