This is an archive of the discontinued LLVM Phabricator instance.

Add DW_TAG_call_site_parameter for via-stack-param
Needs ReviewPublic

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

Details

Summary

Information about stack offset for arguments passed on the stack are complete after the PrologEpilogInserter pass. We're saving that information, and using them later in the phase of DWARF emitting.
If they're available, interpret information about call-site-value, collected on IR level - through the DebugEntryValuesCallSite pass and location information for arguments.

Diff Detail

Event Timeline

milica-lazarevic requested review of this revision.Dec 30 2021, 5:34 AM
Herald added a project: Restricted Project. · View Herald TranscriptDec 30 2021, 5:34 AM
dstenb added a subscriber: dstenb.Jan 4 2022, 12:44 AM

Interesting patch series! Just adding some stylistic comments whilst reading through the code.

llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
893

Since the value is used unconditionally, this should perhaps be a cast<>?

897–899

Nit: Can be reduced to:

CollectStackFwdParams = CallFwdStackInfo != CalleesStackMap.end()

930–931

Perhaps worth considering merging this with the register loop if we only think that the only difference will be the produced DbgCallSiteParam? Or do we foresee larger differences?

ormris removed a subscriber: ormris.Jan 18 2022, 10:18 AM