summaryrefslogtreecommitdiffstats
path: root/llvm/lib/MC/MCAsmStreamer.cpp
diff options
context:
space:
mode:
authorPeter Collingbourne <peter@pcc.me.uk>2018-07-17 22:17:18 +0000
committerPeter Collingbourne <peter@pcc.me.uk>2018-07-17 22:17:18 +0000
commit3e22733698cdd8a0a26487df7430d243a81a3bfa (patch)
tree18eef021e81ed569e071de60c5c90db6c790e075 /llvm/lib/MC/MCAsmStreamer.cpp
parent0054f48b4402dc50017a5254c454a1879445f3f7 (diff)
downloadbcm5719-llvm-3e22733698cdd8a0a26487df7430d243a81a3bfa.tar.gz
bcm5719-llvm-3e22733698cdd8a0a26487df7430d243a81a3bfa.zip
MC: Implement support for new .addrsig and .addrsig_sym directives.
Part of the address-significance tables proposal: http://lists.llvm.org/pipermail/llvm-dev/2018-May/123514.html Differential Revision: https://reviews.llvm.org/D47744 llvm-svn: 337328
Diffstat (limited to 'llvm/lib/MC/MCAsmStreamer.cpp')
-rw-r--r--llvm/lib/MC/MCAsmStreamer.cpp14
1 files changed, 14 insertions, 0 deletions
diff --git a/llvm/lib/MC/MCAsmStreamer.cpp b/llvm/lib/MC/MCAsmStreamer.cpp
index 5398cfea786..1429f647b61 100644
--- a/llvm/lib/MC/MCAsmStreamer.cpp
+++ b/llvm/lib/MC/MCAsmStreamer.cpp
@@ -319,6 +319,9 @@ public:
const MCExpr *Expr, SMLoc Loc,
const MCSubtargetInfo &STI) override;
+ void EmitAddrsig() override;
+ void EmitAddrsigSym(const MCSymbol *Sym) override;
+
/// If this file is backed by an assembly streamer, this dumps the specified
/// string in the output .s file. This capability is indicated by the
/// hasRawTextSupport() predicate.
@@ -1846,6 +1849,17 @@ bool MCAsmStreamer::EmitRelocDirective(const MCExpr &Offset, StringRef Name,
return false;
}
+void MCAsmStreamer::EmitAddrsig() {
+ OS << "\t.addrsig";
+ EmitEOL();
+}
+
+void MCAsmStreamer::EmitAddrsigSym(const MCSymbol *Sym) {
+ OS << "\t.addrsig_sym ";
+ Sym->print(OS, MAI);
+ EmitEOL();
+}
+
/// EmitRawText - If this file is backed by an assembly streamer, this dumps
/// the specified string in the output .s file. This capability is
/// indicated by the hasRawTextSupport() predicate.
OpenPOWER on IntegriCloud