mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-06-21 02:24:22 +00:00
Pass a MCObjectStreamer instead of a MCStreamer when possible.
No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@208567 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@ -30,6 +30,7 @@
|
|||||||
namespace llvm {
|
namespace llvm {
|
||||||
class MCAsmBackend;
|
class MCAsmBackend;
|
||||||
class MCContext;
|
class MCContext;
|
||||||
|
class MCObjectStreamer;
|
||||||
class MCSection;
|
class MCSection;
|
||||||
class MCStreamer;
|
class MCStreamer;
|
||||||
class MCSymbol;
|
class MCSymbol;
|
||||||
@ -147,7 +148,7 @@ public:
|
|||||||
// This is called when an instruction is assembled into the specified
|
// This is called when an instruction is assembled into the specified
|
||||||
// section and if there is information from the last .loc directive that
|
// section and if there is information from the last .loc directive that
|
||||||
// has yet to have a line entry made for it is made.
|
// has yet to have a line entry made for it is made.
|
||||||
static void Make(MCStreamer *MCOS, const MCSection *Section);
|
static void Make(MCObjectStreamer *MCOS, const MCSection *Section);
|
||||||
};
|
};
|
||||||
|
|
||||||
/// MCLineSection - Instances of this class represent the line information
|
/// MCLineSection - Instances of this class represent the line information
|
||||||
@ -210,10 +211,10 @@ class MCDwarfLineTable {
|
|||||||
|
|
||||||
public:
|
public:
|
||||||
// This emits the Dwarf file and the line tables for all Compile Units.
|
// This emits the Dwarf file and the line tables for all Compile Units.
|
||||||
static void Emit(MCStreamer *MCOS);
|
static void Emit(MCObjectStreamer *MCOS);
|
||||||
|
|
||||||
// This emits the Dwarf file and the line tables for a given Compile Unit.
|
// This emits the Dwarf file and the line tables for a given Compile Unit.
|
||||||
void EmitCU(MCStreamer *MCOS) const;
|
void EmitCU(MCObjectStreamer *MCOS) const;
|
||||||
|
|
||||||
unsigned getFile(StringRef &Directory, StringRef &FileName,
|
unsigned getFile(StringRef &Directory, StringRef &FileName,
|
||||||
unsigned FileNumber = 0);
|
unsigned FileNumber = 0);
|
||||||
@ -485,8 +486,8 @@ public:
|
|||||||
//
|
//
|
||||||
// This emits the frame info section.
|
// This emits the frame info section.
|
||||||
//
|
//
|
||||||
static void Emit(MCStreamer &streamer, MCAsmBackend *MAB, bool isEH);
|
static void Emit(MCObjectStreamer &streamer, MCAsmBackend *MAB, bool isEH);
|
||||||
static void EmitAdvanceLoc(MCStreamer &Streamer, uint64_t AddrDelta);
|
static void EmitAdvanceLoc(MCObjectStreamer &Streamer, uint64_t AddrDelta);
|
||||||
static void EncodeAdvanceLoc(MCContext &Context, uint64_t AddrDelta,
|
static void EncodeAdvanceLoc(MCContext &Context, uint64_t AddrDelta,
|
||||||
raw_ostream &OS);
|
raw_ostream &OS);
|
||||||
};
|
};
|
||||||
|
@ -17,8 +17,8 @@
|
|||||||
#include "llvm/MC/MCContext.h"
|
#include "llvm/MC/MCContext.h"
|
||||||
#include "llvm/MC/MCExpr.h"
|
#include "llvm/MC/MCExpr.h"
|
||||||
#include "llvm/MC/MCObjectFileInfo.h"
|
#include "llvm/MC/MCObjectFileInfo.h"
|
||||||
|
#include "llvm/MC/MCObjectStreamer.h"
|
||||||
#include "llvm/MC/MCRegisterInfo.h"
|
#include "llvm/MC/MCRegisterInfo.h"
|
||||||
#include "llvm/MC/MCStreamer.h"
|
|
||||||
#include "llvm/MC/MCSymbol.h"
|
#include "llvm/MC/MCSymbol.h"
|
||||||
#include "llvm/Support/Debug.h"
|
#include "llvm/Support/Debug.h"
|
||||||
#include "llvm/Support/ErrorHandling.h"
|
#include "llvm/Support/ErrorHandling.h"
|
||||||
@ -63,7 +63,7 @@ static inline uint64_t ScaleAddrDelta(MCContext &Context, uint64_t AddrDelta) {
|
|||||||
// and if there is information from the last .loc directive that has yet to have
|
// and if there is information from the last .loc directive that has yet to have
|
||||||
// a line entry made for it is made.
|
// a line entry made for it is made.
|
||||||
//
|
//
|
||||||
void MCLineEntry::Make(MCStreamer *MCOS, const MCSection *Section) {
|
void MCLineEntry::Make(MCObjectStreamer *MCOS, const MCSection *Section) {
|
||||||
if (!MCOS->getContext().getDwarfLocSeen())
|
if (!MCOS->getContext().getDwarfLocSeen())
|
||||||
return;
|
return;
|
||||||
|
|
||||||
@ -205,7 +205,7 @@ EmitDwarfLineTable(MCStreamer *MCOS, const MCSection *Section,
|
|||||||
//
|
//
|
||||||
// This emits the Dwarf file and the line tables.
|
// This emits the Dwarf file and the line tables.
|
||||||
//
|
//
|
||||||
void MCDwarfLineTable::Emit(MCStreamer *MCOS) {
|
void MCDwarfLineTable::Emit(MCObjectStreamer *MCOS) {
|
||||||
MCContext &context = MCOS->getContext();
|
MCContext &context = MCOS->getContext();
|
||||||
|
|
||||||
auto &LineTables = context.getMCDwarfLineTables();
|
auto &LineTables = context.getMCDwarfLineTables();
|
||||||
@ -319,7 +319,7 @@ MCDwarfLineTableHeader::Emit(MCStreamer *MCOS,
|
|||||||
return std::make_pair(LineStartSym, LineEndSym);
|
return std::make_pair(LineStartSym, LineEndSym);
|
||||||
}
|
}
|
||||||
|
|
||||||
void MCDwarfLineTable::EmitCU(MCStreamer *MCOS) const {
|
void MCDwarfLineTable::EmitCU(MCObjectStreamer *MCOS) const {
|
||||||
MCSymbol *LineEndSym = Header.Emit(MCOS).second;
|
MCSymbol *LineEndSym = Header.Emit(MCOS).second;
|
||||||
|
|
||||||
// Put out the line tables.
|
// Put out the line tables.
|
||||||
@ -1476,7 +1476,7 @@ namespace llvm {
|
|||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
void MCDwarfFrameEmitter::Emit(MCStreamer &Streamer, MCAsmBackend *MAB,
|
void MCDwarfFrameEmitter::Emit(MCObjectStreamer &Streamer, MCAsmBackend *MAB,
|
||||||
bool IsEH) {
|
bool IsEH) {
|
||||||
Streamer.generateCompactUnwindEncodings(MAB);
|
Streamer.generateCompactUnwindEncodings(MAB);
|
||||||
|
|
||||||
@ -1553,7 +1553,7 @@ void MCDwarfFrameEmitter::Emit(MCStreamer &Streamer, MCAsmBackend *MAB,
|
|||||||
Streamer.EmitLabel(FDEEnd);
|
Streamer.EmitLabel(FDEEnd);
|
||||||
}
|
}
|
||||||
|
|
||||||
void MCDwarfFrameEmitter::EmitAdvanceLoc(MCStreamer &Streamer,
|
void MCDwarfFrameEmitter::EmitAdvanceLoc(MCObjectStreamer &Streamer,
|
||||||
uint64_t AddrDelta) {
|
uint64_t AddrDelta) {
|
||||||
MCContext &Context = Streamer.getContext();
|
MCContext &Context = Streamer.getContext();
|
||||||
SmallString<256> Tmp;
|
SmallString<256> Tmp;
|
||||||
|
Reference in New Issue
Block a user