diff options
author | Amaury Sechet <deadalnix@gmail.com> | 2016-02-24 22:25:18 +0000 |
---|---|---|
committer | Amaury Sechet <deadalnix@gmail.com> | 2016-02-24 22:25:18 +0000 |
commit | 619427658fd0cfced1ff289ab2665f1b739281e7 (patch) | |
tree | 19a27fe85758eaf1f12c004b5e215d6e00f64aea /llvm/lib/MC/MCStreamer.cpp | |
parent | f5e9b047ed7bfa30163f38cc5f430ab7a7c60489 (diff) | |
download | bcm5719-llvm-619427658fd0cfced1ff289ab2665f1b739281e7.tar.gz bcm5719-llvm-619427658fd0cfced1ff289ab2665f1b739281e7.zip |
Add capability to push/pop DFI in MCStreamer. NFC
Summary: This is extracted from D17555
Reviewers: davidxl, reames, sanjoy, MatzeB, pete
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D17579
llvm-svn: 261796
Diffstat (limited to 'llvm/lib/MC/MCStreamer.cpp')
-rw-r--r-- | llvm/lib/MC/MCStreamer.cpp | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/llvm/lib/MC/MCStreamer.cpp b/llvm/lib/MC/MCStreamer.cpp index 663ed8326ee..896318d88f0 100644 --- a/llvm/lib/MC/MCStreamer.cpp +++ b/llvm/lib/MC/MCStreamer.cpp @@ -174,6 +174,11 @@ MCDwarfFrameInfo *MCStreamer::getCurrentDwarfFrameInfo() { return &DwarfFrameInfos.back(); } +bool MCStreamer::hasUnfinishedDwarfFrameInfo() { + MCDwarfFrameInfo *CurFrame = getCurrentDwarfFrameInfo(); + return CurFrame && !CurFrame->End; +} + void MCStreamer::EnsureValidDwarfFrame() { MCDwarfFrameInfo *CurFrame = getCurrentDwarfFrameInfo(); if (!CurFrame || CurFrame->End) @@ -238,8 +243,7 @@ void MCStreamer::EmitCFISections(bool EH, bool Debug) { } void MCStreamer::EmitCFIStartProc(bool IsSimple) { - MCDwarfFrameInfo *CurFrame = getCurrentDwarfFrameInfo(); - if (CurFrame && !CurFrame->End) + if (hasUnfinishedDwarfFrameInfo()) report_fatal_error("Starting a frame before finishing the previous one!"); MCDwarfFrameInfo Frame; |