diff options
-rw-r--r-- | lib/Target/ARM/ARMAsmPrinter.cpp | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/lib/Target/ARM/ARMAsmPrinter.cpp b/lib/Target/ARM/ARMAsmPrinter.cpp index a78e54d0e9..91d7d70d6f 100644 --- a/lib/Target/ARM/ARMAsmPrinter.cpp +++ b/lib/Target/ARM/ARMAsmPrinter.cpp @@ -207,8 +207,16 @@ bool ARMAsmPrinter::doFinalization(Module &M) { unsigned Size = TD->getTypeSize(C->getType()); unsigned Align = TD->getTypeAlignment(C->getType()); - assert (I->getLinkage() == GlobalValue::ExternalLinkage); - O << "\t.globl " << name << "\n"; + switch (I->getLinkage()) { + default: + assert(0 && "Unknown linkage type!"); + break; + case GlobalValue::ExternalLinkage: + O << "\t.globl " << name << "\n"; + break; + case GlobalValue::InternalLinkage: + break; + } assert (!C->isNullValue()); SwitchToDataSection(".data", I); |