[PATCH] D69868: Allow "callbr" to return non-void values
Bill Wendling via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Mon Feb 24 16:36:59 PST 2020
void marked 2 inline comments as done.
void added inline comments.
================
Comment at: llvm/include/llvm/CodeGen/MachineBasicBlock.h:137
+ /// List of indirect targets of the callbr of a basic block.
+ SmallPtrSet<const MachineBasicBlock*, 4> InlineAsmBrIndirectTargets;
+
----------------
nickdesaulniers wrote:
> It's likely the count here is 0, or maybe 1. We don't see too often a large list of labels here.
I'll make it 2 instead. :-)
================
Comment at: llvm/lib/CodeGen/SelectionDAG/ScheduleDAGSDNodes.cpp:1076
+ // to the copy so that everyone is happy.
+ for (auto *Succ : BB->successors())
+ if (Succ != CopyBB && !CopyBB->isSuccessor(Succ))
----------------
nickdesaulniers wrote:
> Isn't `Fallthrough` from above one of the potential successors? Do we have to skip it in the below conditional? What happens if we call `addSuccessor` with the same `MBB` twice?
Yes. It's added to CopyBB above and the `!CopyBB->isSuccessor(Succ)` makes sure it's not re-added.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D69868/new/
https://reviews.llvm.org/D69868
More information about the llvm-commits
mailing list