This is an archive of the discontinued LLVM Phabricator instance.

[CallSiteInfo][NFC] CallSiteInfo -> CallSiteInfo.ArgRegPairs

Authored by Prabhuk on Jul 29 2021, 2:41 PM.



CallSiteInfo is originally used only for argument - register pairs. Make
it struct, in which we can store additional data for call sites.

Also, the variables/methods used for CallSiteInfo are named for its
original use case, e.g., CallFwdRegsInfo. Refactor these for the upcoming
use, e.g. addCallArgsForwardingRegs() -> addCallSiteInfo().

An upcoming patch will add type ids for indirect calls to propogate them from
middle-end to the back-end. The type ids will be then used to emit the call
graph section.

Original RFC:
Updated RFC:

Diff Detail

Event Timeline

necipfazil created this revision.Jul 29 2021, 2:41 PM
necipfazil requested review of this revision.Jul 29 2021, 2:41 PM
Herald added a project: Restricted Project. · View Herald TranscriptJul 29 2021, 2:41 PM
This revision is now accepted and ready to land.Jul 29 2021, 3:55 PM
djtodoro added inline comments.Aug 3 2021, 12:28 AM
420 ↗(On Diff #362888)

I guess we can increase the N at least to 3 or 4, so we avoid mallocs for most of the cases?

Herald added a project: Restricted Project. · View Herald TranscriptWed, Nov 22, 1:53 PM
Prabhuk updated this revision to Diff 558154.Wed, Nov 22, 2:12 PM

Rebased the patchset and addressed the compilation failures

phosek added a subscriber: phosek.Mon, Nov 27, 9:53 AM