mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-01-19 04:32:19 +00:00
Add CFIStartSections to the asm printer. Add an assert that at least
one of the sections is created. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131124 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
0d10970789
commit
713c4bfc36
@ -193,6 +193,7 @@ public:
|
|||||||
unsigned Isa, unsigned Discriminator,
|
unsigned Isa, unsigned Discriminator,
|
||||||
StringRef FileName);
|
StringRef FileName);
|
||||||
|
|
||||||
|
virtual void EmitCFISections(bool EH, bool Debug);
|
||||||
virtual void EmitCFIStartProc();
|
virtual void EmitCFIStartProc();
|
||||||
virtual void EmitCFIEndProc();
|
virtual void EmitCFIEndProc();
|
||||||
virtual void EmitCFIDefCfa(int64_t Register, int64_t Offset);
|
virtual void EmitCFIDefCfa(int64_t Register, int64_t Offset);
|
||||||
@ -764,6 +765,24 @@ void MCAsmStreamer::EmitDwarfLocDirective(unsigned FileNo, unsigned Line,
|
|||||||
EmitEOL();
|
EmitEOL();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void MCAsmStreamer::EmitCFISections(bool EH, bool Debug) {
|
||||||
|
MCStreamer::EmitCFISections(EH, Debug);
|
||||||
|
|
||||||
|
if (!UseCFI)
|
||||||
|
return;
|
||||||
|
|
||||||
|
OS << "\t.cfi_sections ";
|
||||||
|
if (EH) {
|
||||||
|
OS << ".eh_frame";
|
||||||
|
if (Debug)
|
||||||
|
OS << ", .debug_frame";
|
||||||
|
} else if (Debug) {
|
||||||
|
OS << ".debug_frame";
|
||||||
|
}
|
||||||
|
|
||||||
|
EmitEOL();
|
||||||
|
}
|
||||||
|
|
||||||
void MCAsmStreamer::EmitCFIStartProc() {
|
void MCAsmStreamer::EmitCFIStartProc() {
|
||||||
MCStreamer::EmitCFIStartProc();
|
MCStreamer::EmitCFIStartProc();
|
||||||
|
|
||||||
|
@ -178,6 +178,7 @@ void MCStreamer::EmitLabel(MCSymbol *Symbol) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
void MCStreamer::EmitCFISections(bool EH, bool Debug) {
|
void MCStreamer::EmitCFISections(bool EH, bool Debug) {
|
||||||
|
assert(EH || Debug);
|
||||||
EmitEHFrame = EH;
|
EmitEHFrame = EH;
|
||||||
EmitDebugFrame = Debug;
|
EmitDebugFrame = Debug;
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user