summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/ARM/AsmPrinter
diff options
context:
space:
mode:
authorBob Wilson <bob.wilson@apple.com>2009-10-30 05:45:42 +0000
committerBob Wilson <bob.wilson@apple.com>2009-10-30 05:45:42 +0000
commit1cf0b03064fb60a8250b9a8030455c600bd7503d (patch)
treee1e83f2fddba664d20ebf552ba05f78e9d112bf7 /llvm/lib/Target/ARM/AsmPrinter
parent252d36e74caaa700886905d5a2a52359e485de3d (diff)
downloadbcm5719-llvm-1cf0b03064fb60a8250b9a8030455c600bd7503d.tar.gz
bcm5719-llvm-1cf0b03064fb60a8250b9a8030455c600bd7503d.zip
Add ARM codegen for indirect branches.
clang/test/CodeGen/indirect-goto.c runs! (unoptimized) llvm-svn: 85577
Diffstat (limited to 'llvm/lib/Target/ARM/AsmPrinter')
-rw-r--r--llvm/lib/Target/ARM/AsmPrinter/ARMMCInstLower.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/llvm/lib/Target/ARM/AsmPrinter/ARMMCInstLower.cpp b/llvm/lib/Target/ARM/AsmPrinter/ARMMCInstLower.cpp
index 757164e682a..8686961db45 100644
--- a/llvm/lib/Target/ARM/AsmPrinter/ARMMCInstLower.cpp
+++ b/llvm/lib/Target/ARM/AsmPrinter/ARMMCInstLower.cpp
@@ -158,6 +158,10 @@ void ARMMCInstLower::Lower(const MachineInstr *MI, MCInst &OutMI) const {
case MachineOperand::MO_ConstantPoolIndex:
MCOp = LowerSymbolOperand(MO, GetConstantPoolIndexSymbol(MO));
break;
+ case MachineOperand::MO_BlockAddress:
+ MCOp = LowerSymbolOperand(MO, Printer.GetBlockAddressSymbol(
+ MO.getBlockAddress()));
+ break;
}
OutMI.addOperand(MCOp);
OpenPOWER on IntegriCloud