[PATCH] D43427: [RegAllocFast] Salvage debug values when killing operands

Vedant Kumar via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Feb 26 16:44:04 PST 2018

vsk planned changes to this revision.
vsk added a comment.

Now that we've reverted r325438, we'll need some replacement before this patch is relevant.

> - I'd rather keep MachineRegisterInfo to things directly related to information about virtual registers (register class etc.); I don't think it's role should be to provide transformations for involving virtual registers. So I'd rather move the functionality somewhere else.

I'll look into this.

> - I'm skeptical this works as intended in the presence of control flow (= multiple uses and defs of a vreg anywhere in the control flow graph).

It sounds like this at least needs better testing. I'm not sure whether we do the right thing if there are dbg_value uses of the dying vreg before the copy.

> - I'm not sure I completely understand what is going on here, is it looking for COPYs killing a value so it can replace the debug values with the copied value? The commit message should mention that then.

Yes, I'll fix the commit message.


More information about the llvm-commits mailing list