This is an archive of the discontinued LLVM Phabricator instance.

Refactor the ProfileSummaryInfo to use doInitialization and doFinalization to handle Module update.
ClosedPublic

Authored by danielcdh on Sep 28 2016, 1:36 PM.

Diff Detail

Event Timeline

danielcdh updated this revision to Diff 72888.Sep 28 2016, 1:36 PM
danielcdh retitled this revision from to Refactor the ProfileSummaryInfo to use doInitialization and doFinalization to handle Module update..
danielcdh updated this object.
danielcdh added reviewers: davidxl, eraman, mehdi_amini.
danielcdh added a subscriber: llvm-commits.
mehdi_amini accepted this revision.Sep 28 2016, 1:48 PM
mehdi_amini edited edge metadata.

LGTM!
Thanks.

This revision is now accepted and ready to land.Sep 28 2016, 1:48 PM
mehdi_amini added inline comments.Sep 28 2016, 1:50 PM
lib/Analysis/ProfileSummaryInfo.cpp
137

Can you also have ProfileSummaryInfo take and store a reference again please?

davide added a subscriber: davide.Sep 28 2016, 1:51 PM

Something to keep in mind, there's no doInitialization/doFinalization equivalent in the new PM so this needs to use a different mechanism when the inliner will be ported.

danielcdh updated this revision to Diff 72895.Sep 28 2016, 2:04 PM
danielcdh edited edge metadata.

update

Look great. Thanks.

So what's the call? Shall we keep the original implementation to accommodate new pass manager or keep the refactored version?

Thanks,
Dehao

Current version of this patch is OK for now.

So what's the call? Shall we keep the original implementation to accommodate new pass manager or keep the refactored version?

Thanks,
Dehao

Probably this is fine for now but please double check with Chandler.

danielcdh closed this revision.Sep 28 2016, 2:09 PM