9#ifndef LLVM_DWARFLINKER_PARALLEL_DWARFLINKER_H
10#define LLVM_DWARFLINKER_PARALLEL_DWARFLINKER_H
89namespace dwarf_linker {
118 std::function<void(std::shared_ptr<SectionDescriptorBase> Section)>;
125 static std::unique_ptr<DWARFLinker>
static fatal_error_handler_t ErrorHandler
SectionKind - This is a simple POD value that classifies the properties of a section.
A wrapper around a string literal that serves as a proxy for constructing global tables of StringRefs...
StringRef - Represent a constant reference to a string, i.e.
Triple - Helper class for working with autoconf configuration names.
The base interface for DWARFLinker implementations.
std::function< void(const Twine &Warning, StringRef Context, const DWARFDie *DIE)> MessageHandlerTy
virtual void setOutputDWARFHandler(const Triple &TargetTriple, SectionHandlerTy SectionHandler)=0
Set output DWARF handler.
virtual ~DWARFLinker()=default
static std::unique_ptr< DWARFLinker > createLinker(MessageHandlerTy ErrorHandler, MessageHandlerTy WarningHandler)
Creates dwarf linker instance.
std::function< void(std::shared_ptr< SectionDescriptorBase > Section)> SectionHandlerTy
static constexpr const StringLiteral & getSectionName(DebugSectionKind SectionKind)
Return the name of the section.
DebugSectionKind
List of tracked debug tables.
This is an optimization pass for GlobalISel generic memory operations.
This structure keeps data of the concrete section.
llvm::endianness getEndianess() const
Returns endianess used by section.
DebugSectionKind SectionKind
The section kind.
dwarf::FormParams getFormParams() const
Returns FormParams used by section.
llvm::endianness Endianess
DebugSectionKind getKind()
Returns section kind.
SectionDescriptorBase(DebugSectionKind SectionKind, dwarf::FormParams Format, llvm::endianness Endianess)
dwarf::FormParams Format
Output format.
virtual StringRef getContents()=0
Returns section content.
const StringLiteral & getName() const
Returns section name.
virtual ~SectionDescriptorBase()=default