diff options
author | Daniel Sanders <daniel_l_sanders@apple.com> | 2018-11-01 15:41:11 +0000 |
---|---|---|
committer | Daniel Sanders <daniel_l_sanders@apple.com> | 2018-11-01 15:41:11 +0000 |
commit | 29ca764492eaf5c44afde25dd7d17ca3dad8704e (patch) | |
tree | 1679fea4f4b9e4982038c861ac77f91e2a15c985 /llvm/lib/MC/MCNullStreamer.cpp | |
parent | 84a2f8b364eda5359f108915c2a2967f368e934a (diff) | |
download | bcm5719-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.cpp | 4 |
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; |