retdec
debugformat.h
Go to the documentation of this file.
1 
7 #ifndef RETDEC_BIN2LLVMIR_PROVIDERS_DEBUGFORMAT_H
8 #define RETDEC_BIN2LLVMIR_PROVIDERS_DEBUGFORMAT_H
9 
10 #include <llvm/IR/Module.h>
11 
15 
16 namespace retdec {
17 namespace bin2llvmir {
18 
20 {
22 };
23 
35 {
36  private:
37  using SymbolTable = std::map<
40 
41  public:
43  llvm::Module* m,
45  const std::string& pdbFile,
46  Demangler* demangler);
47 
48  static DebugFormat* getDebugFormat(llvm::Module* m);
49  static bool getDebugFormat(llvm::Module* m, DebugFormat*& df);
50 
51  static void clear();
52 
53  private:
55  static std::map<llvm::Module*, DebugFormat> _module2debug;
56 };
57 
58 } // namespace bin2llvmir
59 } // namespace retdec
60 
61 #endif
Demangler provider for bin2llvmirl.
Definition: debugformat.h:35
static DebugFormat * addDebugFormat(llvm::Module *m, retdec::loader::Image *objf, const std::string &pdbFile, Demangler *demangler)
Definition: debugformat.cpp:34
static std::map< llvm::Module *, DebugFormat > _module2debug
Mapping of modules to debug info associated with them.
Definition: debugformat.h:55
static DebugFormat * getDebugFormat(llvm::Module *m)
Definition: debugformat.cpp:61
static void clear()
Definition: debugformat.cpp:85
std::map< retdec::common::Address, const retdec::fileformat::Symbol * > SymbolTable
Definition: debugformat.h:39
Definition: debugformat.h:20
Definition: demangler.h:34
Definition: debugformat.h:33
DebugFormat()
Definition: debugformat.cpp:17
Definition: symbol.h:19
Definition: image.h:22
Common (DWARF and PDB) debug information representation library.
File image provider for bin2llvmirl.
The frontend-end part of the decompiler.
retdec::common::Address Address
Address.
Definition: types.h:36
Definition: archive_wrapper.h:19