[PATCH] D36160: Liveness issues in tail merging, and the ARM::LR saved-but-not-restored
Eli Friedman via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue Aug 1 12:07:39 PDT 2017
efriedma added a comment.
Oh, I see what you mean... we don't actually decide whether to "pop {pc}" until ARMFrameLowering::emitPopInst. Actually, there's another potential problem there: if shrink-wrapping ever allows emitting multiple epilogues (https://reviews.llvm.org/D36109 etc.), we might not make the same decision for each epilogue.
Long-term, it might be more straightforward to add implicit uses to return instructions, similar to the way we add implicit defs to calls, so we don't have to make return blocks a special case in LivePhysRegs. Not sure how hard that would be.
Repository:
rL LLVM
https://reviews.llvm.org/D36160
More information about the llvm-commits
mailing list