[PATCH] D79605: MachineBasicBlock::updateTerminator now requires an explicit layout successor.
Heejin Ahn via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Wed May 13 21:15:36 PDT 2020
aheejin added inline comments.
================
Comment at: llvm/lib/CodeGen/MachineBasicBlock.cpp:626
- if ((*SI)->isEHPad() || *SI == TBB)
- continue;
- assert(!FallthroughBB && "Found more than one fallthrough successor.");
----------------
efriedma wrote:
> aheejin wrote:
> > Does this new patch handle when a given layout successor is an EH pad? I might be mistaken, but I think that case should be excluded. But while this code is deleted, I can't find a similar counterpart in the new CL.
> There are three possibilities here:
>
> 1. The end of the block is unreachable. This is case we discussed in the other comment.
> 2. We have fallthrough. The original layout successor can't be an EHPad because it's illegal to fall through into an EHPad.
> 3. We don't have fallthrough. In this case, the original layout successor is irrelevant.
I'm not sure about case 2; the reason is here: https://reviews.llvm.org/D79605#2035699
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D79605/new/
https://reviews.llvm.org/D79605
More information about the llvm-commits
mailing list