diff options
author | Peter Collingbourne <peter@pcc.me.uk> | 2018-07-17 22:17:18 +0000 |
---|---|---|
committer | Peter Collingbourne <peter@pcc.me.uk> | 2018-07-17 22:17:18 +0000 |
commit | 3e22733698cdd8a0a26487df7430d243a81a3bfa (patch) | |
tree | 18eef021e81ed569e071de60c5c90db6c790e075 /llvm/lib/MC/MCAsmStreamer.cpp | |
parent | 0054f48b4402dc50017a5254c454a1879445f3f7 (diff) | |
download | bcm5719-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.cpp | 14 |
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. |