[PATCH] D110939: [PHIElimination] Update LiveVariables after handling an unspillable terminator
Jay Foad via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue Oct 5 06:12:35 PDT 2021
foad added inline comments.
================
Comment at: llvm/lib/CodeGen/PHIElimination.cpp:465-471
+ // Update LiveVariables.
+ if (LV) {
+ LiveVariables::VarInfo &SrcVI = LV->getVarInfo(SrcReg);
+ LiveVariables::VarInfo &IncomingVI = LV->getVarInfo(IncomingReg);
+ IncomingVI.AliveBlocks = std::move(SrcVI.AliveBlocks);
+ SrcVI.AliveBlocks.clear();
+ }
----------------
MatzeB wrote:
> As far as I can tell, the other code here that creates COPYs etc. does not bother creating a information for `IncomingReg`. So maybe we should do the same here and just concern ourself with dropping the old info?
> As far as I can tell, the other code here that creates COPYs etc. does not bother creating a information for `IncomingReg`.
There is certainly some existing code that updates LV info for IncomingReg, though I haven't looked at it in detail.
> So maybe we should do the same here and just concern ourself with dropping the old info?
That only fixes the "Block should not be in AliveBlocks" errors, not the "Block missing from AliveBlocks" errors.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D110939/new/
https://reviews.llvm.org/D110939
More information about the llvm-commits
mailing list