This is an archive of the discontinued LLVM Phabricator instance.

[Attributor] Allow explicit dependence tracking
ClosedPublic

Authored by jdoerfert on Jun 13 2019, 9:26 PM.

Details

Summary

By default, the Attributor tracks potential dependences between abstract
attributes based on the issued Attributor::getAAFor queries. This
simplifies the development of new abstract attributes but it can also
lead to spurious dependences that might increase compile time and make
internalization harder (D63312). With this patch, abstract attributes
can opt-out of implicit dependence tracking and instead register
dependences explicitly. It is up to the implementation to make sure all
existing dependences are registered.

Diff Detail

Event Timeline

jdoerfert created this revision.Jun 13 2019, 9:26 PM
Herald added a project: Restricted Project. · View Herald TranscriptJun 13 2019, 9:26 PM
Herald added a subscriber: bollu. · View Herald Transcript
sstefan1 accepted this revision.Aug 20 2019, 4:31 PM

LGTM.

This revision is now accepted and ready to land.Aug 20 2019, 4:31 PM
This revision was automatically updated to reflect the committed changes.