summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/Mangler.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'llvm/lib/Target/Mangler.cpp')
-rw-r--r--llvm/lib/Target/Mangler.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/llvm/lib/Target/Mangler.cpp b/llvm/lib/Target/Mangler.cpp
index 4ef017ab929..fc2f78d5b62 100644
--- a/llvm/lib/Target/Mangler.cpp
+++ b/llvm/lib/Target/Mangler.cpp
@@ -118,6 +118,9 @@ void Mangler::getNameWithPrefix(SmallVectorImpl<char> &OutName,
} else if (PrefixTy == Mangler::LinkerPrivate) {
const char *Prefix = MAI.getLinkerPrivateGlobalPrefix();
OutName.append(Prefix, Prefix+strlen(Prefix));
+ } else if (PrefixTy == Mangler::LinkerWeak) {
+ const char *Prefix = MAI.getLinkerWeakGlobalPrefix();
+ OutName.append(Prefix, Prefix+strlen(Prefix));
}
const char *Prefix = MAI.getGlobalPrefix();
@@ -182,6 +185,8 @@ void Mangler::getNameWithPrefix(SmallVectorImpl<char> &OutName,
PrefixTy = Mangler::Private;
else if (GV->hasLinkerPrivateLinkage())
PrefixTy = Mangler::LinkerPrivate;
+ else if (GV->hasLinkerWeakLinkage())
+ PrefixTy = Mangler::LinkerWeak;
// If this global has a name, handle it simply.
if (GV->hasName()) {
OpenPOWER on IntegriCloud