ELF: Remove OutSection class and use a map instead.

It is easier to handle section filler data separately rather than
merging with section names.

llvm-svn: 262175
diff --git a/lld/ELF/LinkerScript.h b/lld/ELF/LinkerScript.h
index 7517838..e4a7a90 100644
--- a/lld/ELF/LinkerScript.h
+++ b/lld/ELF/LinkerScript.h
@@ -40,11 +40,6 @@
   StringRef SectionPattern;
 };
 
-struct OutSection {
-  StringRef Name;
-  std::vector<uint8_t> Filler;
-};
-
 // This is a runner of the linker script.
 class LinkerScript {
   friend class ScriptParser;
@@ -66,9 +61,11 @@
   // SECTIONS commands.
   std::vector<SectionRule> Sections;
 
-  // Output sections information.
-  // They are sorted by the order of the container.
-  std::vector<OutSection> OutSections;
+  // Output sections are sorted by this order.
+  std::vector<StringRef> SectionOrder;
+
+  // Section fill attribute for each section.
+  llvm::StringMap<std::vector<uint8_t>> Filler;
 
   llvm::BumpPtrAllocator Alloc;
 };