Page MenuHomePhabricator

[MemProf] Context disambiguation cloning pass [patch 3/3]
Needs ReviewPublic

Authored by tejohnson on Jan 5 2023, 10:44 AM.

Details

Reviewers
snehasish
davidxl
Summary

Applies cloning decisions to the IR, cloning functions and updating
calls. For Regular LTO, the IR is updated directly during function
assignment, whereas for ThinLTO it is recorded in the summary index and
applied to the IR via the index during the ThinLTO backend. The function
assignment and cloning proceeds greedily, and we create new clones as
needed when we find an incompatible assignment of function clones to
callsite clones (i.e. when different callers need to invoke different
combinations of callsite clones).

Depends on D140949.

Diff Detail

Event Timeline

tejohnson created this revision.Jan 5 2023, 10:44 AM
Herald added a project: Restricted Project. · View Herald TranscriptJan 5 2023, 10:44 AM
tejohnson requested review of this revision.Jan 5 2023, 10:44 AM
Herald added a project: Restricted Project. · View Herald TranscriptJan 5 2023, 10:44 AM
Enna1 added a subscriber: Enna1.Jan 8 2023, 6:59 PM
tejohnson updated this revision to Diff 487961.Jan 10 2023, 1:03 PM

Rebase on top of patch 1 and 2 changes.

tejohnson updated this revision to Diff 487980.Jan 10 2023, 1:55 PM

Misc minor fixes from building with a large application