From 3e22733698cdd8a0a26487df7430d243a81a3bfa Mon Sep 17 00:00:00 2001 From: Peter Collingbourne Date: Tue, 17 Jul 2018 22:17:18 +0000 Subject: 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 --- llvm/lib/MC/MCAsmStreamer.cpp | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'llvm/lib/MC/MCAsmStreamer.cpp') 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. -- cgit v1.2.3