sink uniquing of sections out of MCContext into the ELF and PECOFF TLOF implementations.

MCContext no longer maintains a string -> section map.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78874 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Chris Lattner
2009-08-13 00:37:15 +00:00
parent f991ecf723
commit 38cff389af
6 changed files with 49 additions and 42 deletions

View File

@@ -27,16 +27,9 @@ MCSection::~MCSection() {
MCSectionELF *MCSectionELF::
Create(const StringRef &Name, bool IsDirective, SectionKind K, MCContext &Ctx) {
return new (Ctx) MCSectionELF(Name, IsDirective, K, Ctx);
return new (Ctx) MCSectionELF(Name, IsDirective, K);
}
MCSectionELF::MCSectionELF(const StringRef &name, bool isDirective,
SectionKind K, MCContext &Ctx)
: MCSection(K), Name(name), IsDirective(isDirective) {
Ctx.SetSection(Name, this);
}
void MCSectionELF::PrintSwitchToSection(const TargetAsmInfo &TAI,
raw_ostream &OS) const {
if (isDirective()) {
@@ -118,16 +111,9 @@ void MCSectionELF::PrintSwitchToSection(const TargetAsmInfo &TAI,
MCSectionCOFF *MCSectionCOFF::
Create(const StringRef &Name, bool IsDirective, SectionKind K, MCContext &Ctx) {
return new (Ctx) MCSectionCOFF(Name, IsDirective, K, Ctx);
return new (Ctx) MCSectionCOFF(Name, IsDirective, K);
}
MCSectionCOFF::MCSectionCOFF(const StringRef &name, bool isDirective,
SectionKind K, MCContext &Ctx)
: MCSection(K), Name(name), IsDirective(isDirective) {
Ctx.SetSection(Name, this);
}
void MCSectionCOFF::PrintSwitchToSection(const TargetAsmInfo &TAI,
raw_ostream &OS) const {