summaryrefslogtreecommitdiff
path: root/lib/Target/Alpha/AlphaAsmPrinter.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'lib/Target/Alpha/AlphaAsmPrinter.cpp')
-rw-r--r--lib/Target/Alpha/AlphaAsmPrinter.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/lib/Target/Alpha/AlphaAsmPrinter.cpp b/lib/Target/Alpha/AlphaAsmPrinter.cpp
index 0f82b03cb1c7..f4540dbe8f79 100644
--- a/lib/Target/Alpha/AlphaAsmPrinter.cpp
+++ b/lib/Target/Alpha/AlphaAsmPrinter.cpp
@@ -285,6 +285,13 @@ bool AlphaAsmPrinter::doFinalization(Module &M) {
}
}
+ for (Module::const_iterator I = M.begin(), E = M.end(); I != E; ++I)
+ if (I->hasExternalWeakLinkage()) {
+ O << "\n\n";
+ std::string name = Mang->getValueName(I);
+ O << "\t.weak " << name << "\n";
+ }
+
AsmPrinter::doFinalization(M);
return false;
}