Store MCSymbols in PendingLabels.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@238582 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Rafael Espindola 2015-05-29 17:41:59 +00:00
parent 28afbf2421
commit 052a7becbe
2 changed files with 4 additions and 3 deletions

View File

@ -38,7 +38,7 @@ class MCObjectStreamer : public MCStreamer {
MCSection::iterator CurInsertionPoint;
bool EmitEHFrame;
bool EmitDebugFrame;
SmallVector<MCSymbolData *, 2> PendingLabels;
SmallVector<MCSymbol *, 2> PendingLabels;
virtual void EmitInstToData(const MCInst &Inst, const MCSubtargetInfo&) = 0;
void EmitCFIStartProcImpl(MCDwarfFrameInfo &Frame) override;

View File

@ -46,7 +46,8 @@ void MCObjectStreamer::flushPendingLabels(MCFragment *F, uint64_t FOffset) {
CurSection->getFragmentList().insert(CurInsertionPoint, F);
F->setParent(CurSection);
}
for (MCSymbolData *SD : PendingLabels) {
for (MCSymbol *Sym : PendingLabels) {
MCSymbolData *SD = &Sym->getData();
SD->setFragment(F);
SD->setOffset(FOffset);
}
@ -174,7 +175,7 @@ void MCObjectStreamer::EmitLabel(MCSymbol *Symbol) {
SD.setFragment(F);
SD.setOffset(F->getContents().size());
} else {
PendingLabels.push_back(&SD);
PendingLabels.push_back(Symbol);
}
}