This is an archive of the discontinued LLVM Phabricator instance.

[IR] Add DebugEntryValuesCallSite pass
AbandonedPublic

Authored by milica-lazarevic on Dec 30 2021, 5:10 AM.

Details

Summary

The purpose of this IR pass is to describe argument values on caller site. Pass has been added to the default<O2> pass pipeline, right before DeadArgumentEliminationPass. It attaches params field to DILocation of call instructions, which represents an array of DICallSiteParam elements. Information about call-site-value is carried through the pipeline, so in the phase of DWARF emitting, we can try to interpret those values as DWARF tag DW_TAG_call_site_parameter. For DWARF emission, it is necessary to have CallSiteInfo support by the target. For now, constant arguments passing is supported.

Diff Detail

Event Timeline

milica-lazarevic requested review of this revision.Dec 30 2021, 5:10 AM
Herald added a project: Restricted Project. · View Herald TranscriptDec 30 2021, 5:10 AM
ormris removed a subscriber: ormris.Jan 18 2022, 10:24 AM

@milica-lazarevic I think this should be closed in favor of the patches that are currently in the process of upstreaming (e.g. D151330 ant the others from @fdeazeve).

Herald added a project: Restricted Project. · View Herald TranscriptMay 25 2023, 12:45 AM
Herald added a subscriber: hoy. · View Herald Transcript
djtodoro requested changes to this revision.May 25 2023, 1:10 AM

Or at least this should be revisited and reimplemented.

This revision now requires changes to proceed.May 25 2023, 1:10 AM
milica-lazarevic abandoned this revision.May 25 2023, 1:15 AM

Because of the patches currently upstreaming (e.g. D151330 and the others from @fdeazeve), this patch should be closed.