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
diff --git a/lib/MC/MCSection.cpp b/lib/MC/MCSection.cpp
index f6ac5cc..8b7fcd2 100644
--- a/lib/MC/MCSection.cpp
+++ b/lib/MC/MCSection.cpp
@@ -27,16 +27,9 @@
 
 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 @@
 
 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 {