This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [RFC] New SRA and early interprocedural SRA
>
> The problem is that in order to implement ipa_modify_actual_arguments
> sanely and not to pull whole build_access_expr() from ipa-sra to
> ipa-prop, I need to switch to using maybe_fold_offset_to_reference
> first (and thus rewrite it at least a little bit). I am mildly afraid
> of this since I learned that both you and Richi gave up on it and it
> will certainly take me at least a week if not more.
What about making parm notes purely info of style "remove this parameter
and put that to nonlocalized vars", "add here this new declaration" and
keeping the separate array of substitutions (tree_map) saying how to
modify the body?
I.e. bit lower form than what you have right now. In that way logic on
how to produce the subtitutions will still live in ipa-sra and I think
it will be easy to lower what you have in parm notes now into such low
parm notes. It might however need two different notes that I didn't
think of before :((
I enabled IPA-SRA at -O2 on the branch now and it seems to show no
regression in performance/code size/compilation time to justify -O3 only
pass. So I would like to keep it this way, all -O3 only code has
tendency to rot.
There is however problem with profile feedback that is now mismatching
so function bodies in profile geneerate run looks different from
function bodies at profile use run already during profile generation.
It means that you seem to do different decision when profiling or not
somehow. This might be because your decision are dependent on something
instable such as value of memory pointer in hash?
Honza
>
> So that's what I'll start working on tomorrow.
>
> Martin