diff --git a/llvm/lib/Target/ARM/ARMInstrInfo.td b/llvm/lib/Target/ARM/ARMInstrInfo.td index aa26e304ea21..5392929462cf 100644 --- a/llvm/lib/Target/ARM/ARMInstrInfo.td +++ b/llvm/lib/Target/ARM/ARMInstrInfo.td @@ -210,13 +210,15 @@ let Defs = [R0] in { def UMULL : IntBinOp<"umull r12,", mulhu>; } -def bcond : InstARM<(ops brtarget:$dst, CCOp:$cc), - "b$cc $dst", - [(armbr bb:$dst, imm:$cc)]>; +let isTerminator = 1 in { + def bcond : InstARM<(ops brtarget:$dst, CCOp:$cc), + "b$cc $dst", + [(armbr bb:$dst, imm:$cc)]>; -def b : InstARM<(ops brtarget:$dst), - "b $dst", - [(br bb:$dst)]>; + def b : InstARM<(ops brtarget:$dst), + "b $dst", + [(br bb:$dst)]>; +} def cmp : InstARM<(ops IntRegs:$a, op_addr_mode1:$b), "cmp $a, $b",