This is an archive of the discontinued LLVM Phabricator instance.

Store the LocationKind of an entry value buffer independently from the main LocationKind (NFC)
ClosedPublic

Authored by aprantl on Feb 11 2021, 3:38 PM.

Details

Summary

This patch hides the logic for setting the location kind of an entry value inside the begin/finalize/cancel functions. This way we get rid the strange workaround that is currently in setLocation().

In the future, this will allow us to set the location kind of the entry value independently from the location kind of the main expression.

Diff Detail

Event Timeline

aprantl created this revision.Feb 11 2021, 3:38 PM
aprantl requested review of this revision.Feb 11 2021, 3:38 PM
Herald added a project: Restricted Project. · View Herald TranscriptFeb 11 2021, 3:38 PM
vsk added a reviewer: dstenb.Feb 11 2021, 4:16 PM

I believe we have test coverage for this path via test/DebugInfo/MIR/AArch64/dbgcall-site-indirect-param-with-offset.mir. Do you think we need anything more?

llvm/lib/CodeGen/AsmPrinter/DwarfExpression.cpp
403

No need to set IsEmittingEntryValue here?

aprantl added inline comments.Feb 12 2021, 9:22 AM
llvm/lib/CodeGen/AsmPrinter/DwarfExpression.cpp
403

That's a funny copy&paste error!

aprantl updated this revision to Diff 323494.Feb 12 2021, 3:55 PM

Address review feedback.

vsk accepted this revision.Feb 12 2021, 4:33 PM
This revision is now accepted and ready to land.Feb 12 2021, 4:33 PM