[llvm-branch-commits] [llvm] [polly] [IR] Add CallBr intrinsics support (PR #133907)
Nikita Popov via llvm-branch-commits
llvm-branch-commits at lists.llvm.org
Wed Aug 6 06:28:27 PDT 2025
================
@@ -3490,19 +3514,25 @@ void SelectionDAGBuilder::visitCallBr(const CallBrInst &I) {
// Update successor info.
addSuccessorWithProb(CallBrMBB, Return, BranchProbability::getOne());
- for (unsigned i = 0, e = I.getNumIndirectDests(); i < e; ++i) {
- BasicBlock *Dest = I.getIndirectDest(i);
- MachineBasicBlock *Target = FuncInfo.getMBB(Dest);
- Target->setIsInlineAsmBrIndirectTarget();
- // If we introduce a type of asm goto statement that is permitted to use an
- // indirect call instruction to jump to its labels, then we should add a
- // call to Target->setMachineBlockAddressTaken() here, to mark the target
- // block as requiring a BTI.
-
- Target->setLabelMustBeEmitted();
- // Don't add duplicate machine successors.
- if (Dests.insert(Dest).second)
- addSuccessorWithProb(CallBrMBB, Target, BranchProbability::getZero());
+ // TODO: For most of the cases where there is an intrinsic callbr, we're
+ // having exactly one indirect target, which will be unreachable. As soon as
----------------
nikic wrote:
It would probably be good to assert this here?
https://github.com/llvm/llvm-project/pull/133907
More information about the llvm-branch-commits
mailing list