This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

ipa vrp implementation in gcc


Hi All,

I am looking at implementing a ipa vrp pass. Jan Hubicka also talks
about this in 2013 GNU Cauldron as one of the optimization he would like
to see in gcc. So my question is, is any one implementing it. If not we
would like to do that.

I also looked at the ipa-cp implementation to see how this can be done.
Going by this, one of the way to implement this is (skipping all the
details):

- Have an early tree-vrp so that we can have value ranges for parameters
at call sites.

- Create jump functions that captures the value ranges of call sites
propagate the value ranges. In 2013 talk, Jan Hubicka talks about

- Modifying ipa-prop.[h|c] to handles this but wouldn't it be easier to
have its own and much more simpler implementation ?

- Once we have the value ranges for parameter/return values, we could
rely on tree-vrp to use this and do the optimizations


Does this make any sense? Any thoughts/suggestions to work on this is
highly appreciated.

Thanks,
Kugan


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]