summaryrefslogtreecommitdiff
path: root/tools/llvm-readobj/ObjDumper.h
diff options
context:
space:
mode:
Diffstat (limited to 'tools/llvm-readobj/ObjDumper.h')
-rw-r--r--tools/llvm-readobj/ObjDumper.h13
1 files changed, 12 insertions, 1 deletions
diff --git a/tools/llvm-readobj/ObjDumper.h b/tools/llvm-readobj/ObjDumper.h
index c5b331d944a20..8c3a7bec73be4 100644
--- a/tools/llvm-readobj/ObjDumper.h
+++ b/tools/llvm-readobj/ObjDumper.h
@@ -13,6 +13,9 @@
#include <memory>
#include <system_error>
+#include "llvm/ADT/StringRef.h"
+#include "llvm/Object/ObjectFile.h"
+
namespace llvm {
namespace object {
class COFFImportFile;
@@ -41,13 +44,17 @@ public:
virtual void printDynamicTable() { }
virtual void printNeededLibraries() { }
virtual void printProgramHeaders() { }
+ virtual void printSectionAsHex(StringRef SectionName) {}
virtual void printHashTable() { }
virtual void printGnuHashTable() { }
virtual void printLoadName() {}
virtual void printVersionInfo() {}
virtual void printGroupSections() {}
virtual void printHashHistogram() {}
+ virtual void printCGProfile() {}
+ virtual void printAddrsig() {}
virtual void printNotes() {}
+ virtual void printELFLinkerOptions() {}
// Only implemented for ARM ELF at this time.
virtual void printAttributes() { }
@@ -81,6 +88,9 @@ public:
virtual void printStackMap() const = 0;
+ void printSectionAsString(const object::ObjectFile *Obj, StringRef SecName);
+ void printSectionAsHex(const object::ObjectFile *Obj, StringRef SecName);
+
protected:
ScopedPrinter &W;
};
@@ -101,7 +111,8 @@ std::error_code createWasmDumper(const object::ObjectFile *Obj,
ScopedPrinter &Writer,
std::unique_ptr<ObjDumper> &Result);
-void dumpCOFFImportFile(const object::COFFImportFile *File);
+void dumpCOFFImportFile(const object::COFFImportFile *File,
+ ScopedPrinter &Writer);
void dumpCodeViewMergedTypes(
ScopedPrinter &Writer, llvm::codeview::MergingTypeTableBuilder &IDTable,