summaryrefslogtreecommitdiffstats
path: root/llvm/lib/MC/MCNullStreamer.cpp
diff options
context:
space:
mode:
authorDaniel Sanders <daniel_l_sanders@apple.com>2018-11-01 15:41:11 +0000
committerDaniel Sanders <daniel_l_sanders@apple.com>2018-11-01 15:41:11 +0000
commit29ca764492eaf5c44afde25dd7d17ca3dad8704e (patch)
tree1679fea4f4b9e4982038c861ac77f91e2a15c985 /llvm/lib/MC/MCNullStreamer.cpp
parent84a2f8b364eda5359f108915c2a2967f368e934a (diff)
downloadbcm5719-llvm-29ca764492eaf5c44afde25dd7d17ca3dad8704e.tar.gz
bcm5719-llvm-29ca764492eaf5c44afde25dd7d17ca3dad8704e.zip
[MC] Implement EmitRawText in MCNullStreamer
Summary: This adds dummy implementation of `EmitRawText` in `MCNullStreamer`. This fixes the behavior of `AsmPrinter` with `MCNullStreamer` on targets on which no integrated assembler is used. An attempt to emit inline asm on such a target would previously lead to a crash, since `AsmPrinter` does not check for `hasRawTextSupport` in `EmitInlineAsm` and calls `EmitRawText` anyway if integrated assembler is disabled (the behavior has changed in D2686). Error message printed by MCStreamer: > EmitRawText called on an MCStreamer that doesn't support it, something > must not be fully mc'ized Patch by Eugene Sharygin Reviewers: dsanders, echristo Reviewed By: dsanders Subscribers: eraman, llvm-commits Differential Revision: https://reviews.llvm.org/D53938 llvm-svn: 345841
Diffstat (limited to 'llvm/lib/MC/MCNullStreamer.cpp')
-rw-r--r--llvm/lib/MC/MCNullStreamer.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/llvm/lib/MC/MCNullStreamer.cpp b/llvm/lib/MC/MCNullStreamer.cpp
index a96dec18444..4e97e7550bc 100644
--- a/llvm/lib/MC/MCNullStreamer.cpp
+++ b/llvm/lib/MC/MCNullStreamer.cpp
@@ -7,6 +7,7 @@
//
//===----------------------------------------------------------------------===//
+#include "llvm/ADT/StringRef.h"
#include "llvm/MC/MCInst.h"
#include "llvm/MC/MCStreamer.h"
#include "llvm/MC/MCSymbol.h"
@@ -22,6 +23,9 @@ namespace {
/// @name MCStreamer Interface
/// @{
+ bool hasRawTextSupport() const override { return true; }
+ void EmitRawTextImpl(StringRef String) override {}
+
bool EmitSymbolAttribute(MCSymbol *Symbol,
MCSymbolAttr Attribute) override {
return true;
OpenPOWER on IntegriCloud