1 //===------ utils/obj2yaml.hpp - obj2yaml conversion tool -------*- C++ -*-===//
3 // The LLVM Compiler Infrastructure
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
8 // This file declares some helper routines, and also the format-specific
9 // writers. To add a new format, add the declaration here, and, in a separate
10 // source file, implement it.
11 //===----------------------------------------------------------------------===//
13 #ifndef LLVM_TOOLS_OBJ2YAML_OBJ2YAML_H
14 #define LLVM_TOOLS_OBJ2YAML_OBJ2YAML_H
16 #include "llvm/Object/COFF.h"
17 #include "llvm/Object/Wasm.h"
18 #include "llvm/Support/raw_ostream.h"
19 #include <system_error>
21 std::error_code
coff2yaml(llvm::raw_ostream
&Out
,
22 const llvm::object::COFFObjectFile
&Obj
);
23 std::error_code
elf2yaml(llvm::raw_ostream
&Out
,
24 const llvm::object::ObjectFile
&Obj
);
25 std::error_code
macho2yaml(llvm::raw_ostream
&Out
,
26 const llvm::object::Binary
&Obj
);
27 std::error_code
wasm2yaml(llvm::raw_ostream
&Out
,
28 const llvm::object::WasmObjectFile
&Obj
);
30 // Forward decls for dwarf2yaml
38 std::error_code
dwarf2yaml(llvm::DWARFContext
&DCtx
, llvm::DWARFYAML::Data
&Y
);