mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-09-27 00:21:03 +00:00
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:
@@ -38,7 +38,7 @@ class MCObjectStreamer : public MCStreamer {
|
|||||||
MCSection::iterator CurInsertionPoint;
|
MCSection::iterator CurInsertionPoint;
|
||||||
bool EmitEHFrame;
|
bool EmitEHFrame;
|
||||||
bool EmitDebugFrame;
|
bool EmitDebugFrame;
|
||||||
SmallVector<MCSymbolData *, 2> PendingLabels;
|
SmallVector<MCSymbol *, 2> PendingLabels;
|
||||||
|
|
||||||
virtual void EmitInstToData(const MCInst &Inst, const MCSubtargetInfo&) = 0;
|
virtual void EmitInstToData(const MCInst &Inst, const MCSubtargetInfo&) = 0;
|
||||||
void EmitCFIStartProcImpl(MCDwarfFrameInfo &Frame) override;
|
void EmitCFIStartProcImpl(MCDwarfFrameInfo &Frame) override;
|
||||||
|
@@ -46,7 +46,8 @@ void MCObjectStreamer::flushPendingLabels(MCFragment *F, uint64_t FOffset) {
|
|||||||
CurSection->getFragmentList().insert(CurInsertionPoint, F);
|
CurSection->getFragmentList().insert(CurInsertionPoint, F);
|
||||||
F->setParent(CurSection);
|
F->setParent(CurSection);
|
||||||
}
|
}
|
||||||
for (MCSymbolData *SD : PendingLabels) {
|
for (MCSymbol *Sym : PendingLabels) {
|
||||||
|
MCSymbolData *SD = &Sym->getData();
|
||||||
SD->setFragment(F);
|
SD->setFragment(F);
|
||||||
SD->setOffset(FOffset);
|
SD->setOffset(FOffset);
|
||||||
}
|
}
|
||||||
@@ -174,7 +175,7 @@ void MCObjectStreamer::EmitLabel(MCSymbol *Symbol) {
|
|||||||
SD.setFragment(F);
|
SD.setFragment(F);
|
||||||
SD.setOffset(F->getContents().size());
|
SD.setOffset(F->getContents().size());
|
||||||
} else {
|
} else {
|
||||||
PendingLabels.push_back(&SD);
|
PendingLabels.push_back(Symbol);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user