aboutsummaryrefslogtreecommitdiff
path: root/contrib/llvm-project/llvm/tools/llvm-objdump/WasmDump.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/llvm-project/llvm/tools/llvm-objdump/WasmDump.cpp')
-rw-r--r--contrib/llvm-project/llvm/tools/llvm-objdump/WasmDump.cpp19
1 files changed, 16 insertions, 3 deletions
diff --git a/contrib/llvm-project/llvm/tools/llvm-objdump/WasmDump.cpp b/contrib/llvm-project/llvm/tools/llvm-objdump/WasmDump.cpp
index df0a08e5b1dd..a1d767d81003 100644
--- a/contrib/llvm-project/llvm/tools/llvm-objdump/WasmDump.cpp
+++ b/contrib/llvm-project/llvm/tools/llvm-objdump/WasmDump.cpp
@@ -19,12 +19,25 @@
using namespace llvm;
using namespace llvm::object;
-void objdump::printWasmFileHeader(const object::ObjectFile *Obj) {
- const auto *File = cast<const WasmObjectFile>(Obj);
+namespace {
+class WasmDumper : public objdump::Dumper {
+ const WasmObjectFile &Obj;
+public:
+ WasmDumper(const WasmObjectFile &O) : Dumper(O), Obj(O) {}
+ void printPrivateHeaders(bool MachOOnlyFirst) override;
+};
+} // namespace
+
+std::unique_ptr<objdump::Dumper>
+objdump::createWasmDumper(const object::WasmObjectFile &Obj) {
+ return std::make_unique<WasmDumper>(Obj);
+}
+
+void WasmDumper::printPrivateHeaders(bool) {
outs() << "Program Header:\n";
outs() << "Version: 0x";
- outs().write_hex(File->getHeader().Version);
+ outs().write_hex(Obj.getHeader().Version);
outs() << "\n";
}