This is an archive of the discontinued LLVM Phabricator instance.

Don't separate imp/expl def handling for call site params
ClosedPublic

Authored by dstenb on Jan 22 2020, 2:54 AM.

Details

Summary

Since D70431 the describeLoadedValue() hook takes a parameter register,
meaning that it can now be asked to describe any register. This means
that we can drop the difference between explicit and implicit defines
that we previously had in collectCallSiteParameters().

I have not found any case for any upstream targets where a parameter
register is only implicitly defined, and does not overlap with any
explicit defines. I don't know if such a case would even make sense. So
as far as I have tested, this patch should be a non-functional change.
However, this reduces the complexity of the code a bit, and it will
simplify the implementation of an upcoming patch which solves PR44118.

Diff Detail

Event Timeline

dstenb created this revision.Jan 22 2020, 2:54 AM
Herald added a project: Restricted Project. · View Herald TranscriptJan 22 2020, 2:54 AM
djtodoro accepted this revision.Jan 22 2020, 3:51 AM

Looks good to me (nit included)!

Thanks for the code clean up!

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

Perhaps we should add a comment here describing what the FwdRegDefs is used for, or rename the variable.

This revision is now accepted and ready to land.Jan 22 2020, 3:51 AM

Please wait for someone else from the debug-info project to take a look as well, before committing this.

dstenb updated this revision to Diff 239895.Jan 23 2020, 7:12 AM

Add comment to variable.

dstenb marked an inline comment as done.Jan 23 2020, 7:13 AM
dstenb added inline comments.
llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
636

My naming imagination was a bit lackluster, so I added a comment.

vsk accepted this revision.Jan 23 2020, 9:38 AM

Thanks, lgtm.

djtodoro added inline comments.Jan 23 2020, 11:24 PM
llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
636

nice, thanks!

This revision was automatically updated to reflect the committed changes.