This is an archive of the discontinued LLVM Phabricator instance.

[GlobalsAA] Relax condition in checking globals as args to functions
ClosedPublic

Authored by vaivaswatha on Jan 13 2016, 2:42 AM.

Details

Summary

Since globals may escape as function arguments (even when they have been
found to be non-escaping, because of optimizations such as memcpyoptimizer
that replaces stores with memcpy), all arguments to a function are checked
during query to make sure they are identifiable. At that time, also ensure
we return a conservative result only if the arguments don't alias to our global.

Diff Detail

Event Timeline

vaivaswatha retitled this revision from to [GlobalsAA] Relax condition in checking globals as args to functions.
vaivaswatha updated this object.
vaivaswatha added reviewers: jmolloy, hfinkel.
vaivaswatha added a subscriber: llvm-commits.
jmolloy accepted this revision.Jan 14 2016, 12:39 AM
jmolloy edited edge metadata.

LGTM.

This revision is now accepted and ready to land.Jan 14 2016, 12:39 AM
vaivaswatha closed this revision.Jan 14 2016, 12:50 AM

Thanks James for the review. Also you thank you for suggesting the original patch.