aboutsummaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authorKevin Enderby <enderby@apple.com>2009-07-13 23:15:14 +0000
committerKevin Enderby <enderby@apple.com>2009-07-13 23:15:14 +0000
commit58773c745409bd5826f0d2f04e8a72ad150ba78a (patch)
treedc9d7b87dc1fcbc62ab9711514782ee4ff11be0f /lib
parent4710a731c4d68eeb622cb0fa63e50aef1a3311fd (diff)
downloadexternal_llvm-58773c745409bd5826f0d2f04e8a72ad150ba78a.zip
external_llvm-58773c745409bd5826f0d2f04e8a72ad150ba78a.tar.gz
external_llvm-58773c745409bd5826f0d2f04e8a72ad150ba78a.tar.bz2
Added llvm-mc support for parsing the .abort directive.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75545 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib')
-rw-r--r--lib/MC/MCAsmStreamer.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/lib/MC/MCAsmStreamer.cpp b/lib/MC/MCAsmStreamer.cpp
index c0a334a..c796255 100644
--- a/lib/MC/MCAsmStreamer.cpp
+++ b/lib/MC/MCAsmStreamer.cpp
@@ -51,6 +51,8 @@ namespace {
virtual void EmitZerofill(MCSection *Section, MCSymbol *Symbol = NULL,
unsigned Size = 0, unsigned Pow2Alignment = 0);
+ virtual void AbortAssembly(const char *AbortReason = NULL);
+
virtual void EmitBytes(const char *Data, unsigned Length);
virtual void EmitValue(const MCValue &Value, unsigned Size);
@@ -123,6 +125,14 @@ void MCAsmStreamer::SubsectionsViaSymbols(void) {
OS << ".subsections_via_symbols\n";
}
+void MCAsmStreamer::AbortAssembly(const char *AbortReason) {
+ OS << ".abort";
+ if (AbortReason != NULL)
+ OS << ' ' << AbortReason;
+ OS << '\n';
+
+}
+
void MCAsmStreamer::EmitAssignment(MCSymbol *Symbol, const MCValue &Value,
bool MakeAbsolute) {
assert(!Symbol->getSection() && "Cannot assign to a label!");