Skip to content

Commit bd5c8fa

Browse files
committed
reflect #142613 in IRTranslator and SelectionDAGBuilder
1 parent 2610e62 commit bd5c8fa

File tree

2 files changed

+10
-1
lines changed

2 files changed

+10
-1
lines changed

llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3035,8 +3035,13 @@ bool IRTranslator::translateCallBr(const User &U,
30353035
MachineBasicBlock *CallBrMBB = &MIRBuilder.getMBB();
30363036

30373037
// FIXME: inline asm not yet supported
3038-
if (I.isInlineAsm())
3038+
if (I.isInlineAsm()) {
3039+
if (I.hasOperandBundlesOtherThan(
3040+
{LLVMContext::OB_deopt, LLVMContext::OB_funclet}))
3041+
reportFatalUsageError(
3042+
"cannot lower callbrs with arbitrary operand bundles!");
30393043
return false;
3044+
}
30403045
if (I.getIntrinsicID() == Intrinsic::not_intrinsic)
30413046
return false;
30423047
if (!translateTargetIntrinsic(I, I.getIntrinsicID(), MIRBuilder))

llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3400,6 +3400,10 @@ void SelectionDAGBuilder::visitCallBr(const CallBrInst &I) {
34003400
MachineBasicBlock *CallBrMBB = FuncInfo.MBB;
34013401

34023402
if (I.isInlineAsm()) {
3403+
if (I.hasOperandBundlesOtherThan(
3404+
{LLVMContext::OB_deopt, LLVMContext::OB_funclet}))
3405+
reportFatalUsageError(
3406+
"cannot lower callbrs with arbitrary operand bundles!");
34033407
visitInlineAsm(I);
34043408
} else if (I.getIntrinsicID() != Intrinsic::not_intrinsic) {
34053409
visitCallBrIntrinsic(I);

0 commit comments

Comments
 (0)