diff options
Diffstat (limited to 'llvm/lib/MC/MCSection.cpp')
-rw-r--r-- | llvm/lib/MC/MCSection.cpp | 27 |
1 files changed, 0 insertions, 27 deletions
diff --git a/llvm/lib/MC/MCSection.cpp b/llvm/lib/MC/MCSection.cpp index 0bf641c..495826e 100644 --- a/llvm/lib/MC/MCSection.cpp +++ b/llvm/lib/MC/MCSection.cpp @@ -80,33 +80,6 @@ void MCSection::switchSubsection(unsigned Subsection) { StringRef MCSection::getVirtualSectionKind() const { return "virtual"; } void MCSection::addPendingLabel(MCSymbol *label, unsigned Subsection) { - PendingLabels.push_back(PendingLabel(label, Subsection)); -} - -void MCSection::flushPendingLabels(MCFragment *F, unsigned Subsection) { - // Set the fragment and fragment offset for all pending symbols in the - // specified Subsection, and remove those symbols from the pending list. - for (auto It = PendingLabels.begin(); It != PendingLabels.end(); ++It) { - PendingLabel& Label = *It; - if (Label.Subsection == Subsection) { - Label.Sym->setFragment(F); - assert(Label.Sym->getOffset() == 0); - PendingLabels.erase(It--); - } - } -} - -void MCSection::flushPendingLabels() { - // Make sure all remaining pending labels point to data fragments, by - // creating new empty data fragments for each Subsection with labels pending. - while (!PendingLabels.empty()) { - PendingLabel& Label = PendingLabels[0]; - switchSubsection(Label.Subsection); - MCFragment *F = new MCDataFragment(); - addFragment(*F); - F->setParent(this); - flushPendingLabels(F, Label.Subsection); - } } #if !defined(NDEBUG) || defined(LLVM_ENABLE_DUMP) |