This is an archive of the discontinued LLVM Phabricator instance.

[Attributor] Enable backwards propagation from callback callees.
AbandonedPublic

Authored by jdoerfert on Apr 1 2019, 9:49 AM.

Details

Summary
NOTE: Test cases are missing here as well. Will be added soon.

Abstract call sites were introduced to enable IPO across callbacks (see
D54498 and D55483). With this patch, we can easily make use of them to
propagate information from callback callees to call sites. The
AbstractCallSiteArgument interface will hide away the lookup and derived
classes, e.g., for no-capture deduction introduced in D60072, will not
require additional code