[llvm] r232540 - Address review comments
David Majnemer
david.majnemer at gmail.com
Tue Mar 17 13:39:40 PDT 2015
Author: majnemer
Date: Tue Mar 17 15:39:40 2015
New Revision: 232540
URL: http://llvm.org/viewvc/llvm-project?rev=232540&view=rev
Log:
Address review comments
Modified:
llvm/trunk/include/llvm/IR/Mangler.h
llvm/trunk/lib/CodeGen/TargetLoweringObjectFileImpl.cpp
llvm/trunk/lib/IR/Mangler.cpp
Modified: llvm/trunk/include/llvm/IR/Mangler.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/IR/Mangler.h?rev=232540&r1=232539&r2=232540&view=diff
==============================================================================
--- llvm/trunk/include/llvm/IR/Mangler.h (original)
+++ llvm/trunk/include/llvm/IR/Mangler.h Tue Mar 17 15:39:40 2015
@@ -52,9 +52,11 @@ public:
/// If the global variable doesn't have a name, this fills in a unique name
/// for the global.
void getNameWithPrefix(raw_ostream &OS, const GlobalValue *GV,
- bool CannotUsePrivateLabel) const;
+ bool CannotUsePrivateLabel,
+ bool ForceNonPrivate = false) const;
void getNameWithPrefix(SmallVectorImpl<char> &OutName, const GlobalValue *GV,
- bool CannotUsePrivateLabel) const;
+ bool CannotUsePrivateLabel,
+ bool ForceNonPrivate = false) const;
/// Print the appropriate prefix and the specified name as the global variable
/// name. GVName must not be empty.
Modified: llvm/trunk/lib/CodeGen/TargetLoweringObjectFileImpl.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/CodeGen/TargetLoweringObjectFileImpl.cpp?rev=232540&r1=232539&r2=232540&view=diff
==============================================================================
--- llvm/trunk/lib/CodeGen/TargetLoweringObjectFileImpl.cpp (original)
+++ llvm/trunk/lib/CodeGen/TargetLoweringObjectFileImpl.cpp Tue Mar 17 15:39:40 2015
@@ -960,13 +960,8 @@ void TargetLoweringObjectFileCOFF::getNa
((isa<Function>(GV) && TM.getFunctionSections()) ||
(isa<GlobalVariable>(GV) && TM.getDataSections()))) {
SmallString<256> Tmp;
- Mang.getNameWithPrefix(Tmp, GV, /*CannotUsePrivateLabel=*/false);
- if (Tmp.startswith(".L"))
- OutName.append(Tmp.begin() + 2, Tmp.end());
- else if (Tmp.startswith("L"))
- OutName.append(Tmp.begin() + 1, Tmp.end());
- else
- OutName.append(Tmp.begin(), Tmp.end());
+ Mang.getNameWithPrefix(Tmp, GV, CannotUsePrivateLabel, /*ForceNonPrivate=*/true);
+ OutName.append(Tmp.begin(), Tmp.end());
return;
}
Mang.getNameWithPrefix(OutName, GV, CannotUsePrivateLabel);
Modified: llvm/trunk/lib/IR/Mangler.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/IR/Mangler.cpp?rev=232540&r1=232539&r2=232540&view=diff
==============================================================================
--- llvm/trunk/lib/IR/Mangler.cpp (original)
+++ llvm/trunk/lib/IR/Mangler.cpp Tue Mar 17 15:39:40 2015
@@ -91,9 +91,10 @@ static void addByteCountSuffix(raw_ostre
}
void Mangler::getNameWithPrefix(raw_ostream &OS, const GlobalValue *GV,
- bool CannotUsePrivateLabel) const {
+ bool CannotUsePrivateLabel,
+ bool ForceNonPrivate) const {
ManglerPrefixTy PrefixTy = Mangler::Default;
- if (GV->hasPrivateLinkage()) {
+ if (GV->hasPrivateLinkage() && !ForceNonPrivate) {
if (CannotUsePrivateLabel)
PrefixTy = Mangler::LinkerPrivate;
else
@@ -152,7 +153,8 @@ void Mangler::getNameWithPrefix(raw_ostr
void Mangler::getNameWithPrefix(SmallVectorImpl<char> &OutName,
const GlobalValue *GV,
- bool CannotUsePrivateLabel) const {
+ bool CannotUsePrivateLabel,
+ bool ForceNonPrivate) const {
raw_svector_ostream OS(OutName);
- getNameWithPrefix(OS, GV, CannotUsePrivateLabel);
+ getNameWithPrefix(OS, GV, CannotUsePrivateLabel, ForceNonPrivate);
}
More information about the llvm-commits
mailing list