aboutsummaryrefslogtreecommitdiff
path: root/lib/Target/TargetLoweringObjectFile.cpp
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2009-08-04 16:19:50 +0000
committerChris Lattner <sabre@nondot.org>2009-08-04 16:19:50 +0000
commit7e88a50428377813606c66ac47111d9c3ea44feb (patch)
treea7b7b353a52967fb9e978c9e450aab1f6804da4d /lib/Target/TargetLoweringObjectFile.cpp
parent1850e5add1516e945bbabf7e456c305f4bd5cc6f (diff)
fix a fixme: don't create an explicit "CStringSection" for ELF,
it is just being used as a prefix, so forward substitute it directly. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78067 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/TargetLoweringObjectFile.cpp')
-rw-r--r--lib/Target/TargetLoweringObjectFile.cpp13
1 files changed, 4 insertions, 9 deletions
diff --git a/lib/Target/TargetLoweringObjectFile.cpp b/lib/Target/TargetLoweringObjectFile.cpp
index 7d8f529bb9..730d32f542 100644
--- a/lib/Target/TargetLoweringObjectFile.cpp
+++ b/lib/Target/TargetLoweringObjectFile.cpp
@@ -320,10 +320,6 @@ void TargetLoweringObjectFileELF::Initialize(MCContext &Ctx,
TLSDataSection =
getOrCreateSection("\t.tdata", false, SectionKind::getThreadData());
- // FIXME: No reason to make this.
- CStringSection = getOrCreateSection("\t.rodata.str", true,
- SectionKind::getMergeable1ByteCString());
-
TLSBSSSection = getOrCreateSection("\t.tbss", false,
SectionKind::getThreadBSS());
@@ -511,7 +507,6 @@ SelectSectionForGlobal(const GlobalValue *GV, SectionKind Kind,
if (Kind.isMergeable1ByteCString() ||
Kind.isMergeable2ByteCString() ||
Kind.isMergeable4ByteCString()) {
- assert(CStringSection && "Should have string section prefix");
// We also need alignment here.
// FIXME: this is getting the alignment of the character, not the
@@ -519,16 +514,16 @@ SelectSectionForGlobal(const GlobalValue *GV, SectionKind Kind,
unsigned Align =
TM.getTargetData()->getPreferredAlignment(cast<GlobalVariable>(GV));
- const char *SizeSpec = "1.";
+ const char *SizeSpec = ".rodata.str1.";
if (Kind.isMergeable2ByteCString())
- SizeSpec = "2.";
+ SizeSpec = ".rodata.str2.";
else if (Kind.isMergeable4ByteCString())
- SizeSpec = "4.";
+ SizeSpec = ".rodata.str4.";
else
assert(Kind.isMergeable1ByteCString() && "unknown string width");
- std::string Name = CStringSection->getName() + SizeSpec + utostr(Align);
+ std::string Name = SizeSpec + utostr(Align);
return getOrCreateSection(Name.c_str(), false, Kind);
}