diff options
author | Peter Collingbourne <peter@pcc.me.uk> | 2018-05-21 19:44:54 +0000 |
---|---|---|
committer | Peter Collingbourne <peter@pcc.me.uk> | 2018-05-21 19:44:54 +0000 |
commit | 63062d9d0f734736e707ede5f828f3690d5ef0e7 (patch) | |
tree | f7a8c4d8f80bd8fc8009c9bdf6f7772e1f29a4ff /llvm/lib/MC/MCAsmBackend.cpp | |
parent | 16fcc5b6db544b2d552dacdab62c9e1ec243a415 (diff) | |
download | bcm5719-llvm-63062d9d0f734736e707ede5f828f3690d5ef0e7.tar.gz bcm5719-llvm-63062d9d0f734736e707ede5f828f3690d5ef0e7.zip |
MC: Introduce an ELF dwo object writer and teach llvm-mc about it.
Part of PR37466.
Differential Revision: https://reviews.llvm.org/D47051
llvm-svn: 332875
Diffstat (limited to 'llvm/lib/MC/MCAsmBackend.cpp')
-rw-r--r-- | llvm/lib/MC/MCAsmBackend.cpp | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/llvm/lib/MC/MCAsmBackend.cpp b/llvm/lib/MC/MCAsmBackend.cpp index 213ea525803..3119bb997d0 100644 --- a/llvm/lib/MC/MCAsmBackend.cpp +++ b/llvm/lib/MC/MCAsmBackend.cpp @@ -49,6 +49,16 @@ MCAsmBackend::createObjectWriter(raw_pwrite_stream &OS) const { } } +std::unique_ptr<MCObjectWriter> +MCAsmBackend::createDwoObjectWriter(raw_pwrite_stream &OS, + raw_pwrite_stream &DwoOS) const { + auto TW = createObjectTargetWriter(); + if (TW->getFormat() != Triple::ELF) + report_fatal_error("dwo only supported with ELF"); + return createELFDwoObjectWriter(cast<MCELFObjectTargetWriter>(std::move(TW)), + OS, DwoOS, Endian == support::little); +} + Optional<MCFixupKind> MCAsmBackend::getFixupKind(StringRef Name) const { return None; } |