This is an archive of the discontinued LLVM Phabricator instance.

RegAllocFast: Add extra DBG_VALUE for live out spills
ClosedPublic

Authored by arsenm on Sep 28 2020, 12:37 PM.

Details

Reviewers
qcolombet
aprantl
echristo
Group Reviewers
debug-info
Summary

This allows LiveDebugValues to insert the proper DBG_VALUEs in live
out blocks if a spill is inserted before the use of a
register. Previously, this would see the register use as the last
DBG_VALUE, even though the stack slot should be treated as the live
out value.

This avoids an lldb test regression when D52010 is re-applied.

Diff Detail

Event Timeline

arsenm created this revision.Sep 28 2020, 12:37 PM
Herald added a project: Restricted Project. · View Herald TranscriptSep 28 2020, 12:37 PM
arsenm requested review of this revision.Sep 28 2020, 12:37 PM

This looks really promising!

llvm/test/DebugInfo/X86/subreg.ll
13

what's up here? Did we regress?

arsenm added inline comments.Sep 29 2020, 4:54 PM
llvm/test/DebugInfo/X86/subreg.ll
13

No, this is reverting a previous change to this test to ensure it's still checking the subregister, and not the spill slot as it seems intended to stress

aprantl accepted this revision.Sep 29 2020, 4:57 PM
This revision is now accepted and ready to land.Sep 29 2020, 4:57 PM
arsenm closed this revision.Sep 30 2020, 7:35 AM

7fccb42cc62da93dbf79de9e6464a975bf5b37bc