class Mangler {
public:
enum ManglerPrefixTy {
- DefaultPrefixTy, ///< Emit default string before each symbol.
- PrivatePrefixTy, ///< Emit "private" prefix before each symbol.
- LinkerPrivatePrefixTy ///< Emit "linker private" prefix before each symbol.
+ Default, ///< Emit default string before each symbol.
+ Private, ///< Emit "private" prefix before each symbol.
+ LinkerPrivate ///< Emit "linker private" prefix before each symbol.
};
private:
/// from getValueName.
///
std::string makeNameProper(const std::string &x,
- ManglerPrefixTy PrefixTy = DefaultPrefixTy);
+ ManglerPrefixTy PrefixTy = Mangler::Default);
};
} // End llvm namespace
void Init(const std::string &GV, Mangler *Mang) {
// Already initialized.
if (!Stub.empty()) return;
- Stub = Mang->makeNameProper(GV + "$stub",
- Mangler::PrivatePrefixTy);
- LazyPtr = Mang->makeNameProper(GV + "$lazy_ptr",
- Mangler::PrivatePrefixTy);
- SLP = Mang->makeNameProper(GV + "$slp",
- Mangler::PrivatePrefixTy);
- SCV = Mang->makeNameProper(GV + "$scv",
- Mangler::PrivatePrefixTy);
+ Stub = Mang->makeNameProper(GV + "$stub", Mangler::Private);
+ LazyPtr = Mang->makeNameProper(GV + "$lazy_ptr", Mangler::Private);
+ SLP = Mang->makeNameProper(GV + "$slp", Mangler::Private);
+ SCV = Mang->makeNameProper(GV + "$scv", Mangler::Private);
}
};
// Already initialized.
if (!Stub.empty()) return;
Stub = Mang->makeNameProper(GV + "$stub",
- Mangler::PrivatePrefixTy);
+ Mangler::Private);
LazyPtr = Mang->makeNameProper(GV + "$lazy_ptr",
- Mangler::PrivatePrefixTy);
+ Mangler::Private);
AnonSymbol = Mang->makeNameProper(GV + "$stub$tmp",
- Mangler::PrivatePrefixTy);
+ Mangler::Private);
}
};
if (NeedPrefix) {
Result = Prefix + Result;
- if (PrefixTy == PrivatePrefixTy)
+ if (PrefixTy == Mangler::Private)
Result = PrivatePrefix + Result;
- else if (PrefixTy == LinkerPrivatePrefixTy)
+ else if (PrefixTy == Mangler::LinkerPrivate)
Result = LinkerPrivatePrefix + Result;
}
Result = Prefix + X;
- if (PrefixTy == PrivatePrefixTy)
+ if (PrefixTy == Mangler::Private)
Result = PrivatePrefix + Result;
- else if (PrefixTy == LinkerPrivatePrefixTy)
+ else if (PrefixTy == Mangler::LinkerPrivate)
Result = LinkerPrivatePrefix + Result;
return Result;
if (NeedPrefix) {
Result = Prefix + Result;
- if (PrefixTy == PrivatePrefixTy)
+ if (PrefixTy == Mangler::Private)
Result = PrivatePrefix + Result;
- else if (PrefixTy == LinkerPrivatePrefixTy)
+ else if (PrefixTy == Mangler::LinkerPrivate)
Result = LinkerPrivatePrefix + Result;
}
"Intrinsic functions cannot be mangled by Mangler");
ManglerPrefixTy PrefixTy =
- (GV->hasPrivateLinkage() || ForcePrivate) ? PrivatePrefixTy :
- GV->hasLinkerPrivateLinkage() ? LinkerPrivatePrefixTy : DefaultPrefixTy;
+ (GV->hasPrivateLinkage() || ForcePrivate) ? Mangler::Private :
+ GV->hasLinkerPrivateLinkage() ? Mangler::LinkerPrivate : Mangler::Default;
if (GV->hasName())
return makeNameProper(GV->getName() + Suffix, PrefixTy);