diff options
-rw-r--r-- | lib/Target/ARM/ARMInstrInfo.td | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/lib/Target/ARM/ARMInstrInfo.td b/lib/Target/ARM/ARMInstrInfo.td index aa26e304ea..5392929462 100644 --- a/lib/Target/ARM/ARMInstrInfo.td +++ b/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)]>; - -def b : InstARM<(ops brtarget:$dst), - "b $dst", - [(br bb:$dst)]>; +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 cmp : InstARM<(ops IntRegs:$a, op_addr_mode1:$b), "cmp $a, $b", |