[PATCH] Introduce GlobalAlias::mayBeResolved().
Peter Collingbourne
peter at pcc.me.uk
Mon Apr 1 14:47:54 PDT 2013
On Mon, Apr 01, 2013 at 02:19:41PM -0700, Anton Korobeynikov wrote:
>
> I'm not sure that changing mayBeOverriden() to mayBeResolved() everywhere is fine. E.g. change to getUnderlyingObject() might not be correct. Ditto for SCEV / Inliner changes.
In an earlier version of this patch I only made the change in a
handful of places. In the end I decided that the best thing to do
would be to make the change everywhere given that:
a) While making the change everywhere is always safe as far as I can
tell (it would only result in missed optimisation opportunities),
choosing to not make the change somewhere is not necessarily so.
I don't understand every pass well enough to know that in 100%
of cases the pass won't rewrite alias references according to the
result of the function and I can't be sure that people who modify
the code in the future will understand this distinction.
b) The circumstances in which an alias's visibility differs from the
aliasee are uncommon and therefore there wouldn't be many missed
optimisation opportunities.
Thanks,
--
Peter
More information about the llvm-commits
mailing list