xref: /freebsd/contrib/llvm-project/llvm/tools/llvm-objdump/COFFDump.h (revision c66ec88fed842fbaad62c30d510644ceb7bd2d71)
1 //===-- COFFDump.h ----------------------------------------------*- C++ -*-===//
2 //
3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4 // See https://llvm.org/LICENSE.txt for license information.
5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6 //
7 //===----------------------------------------------------------------------===//
8 
9 #ifndef LLVM_TOOLS_LLVM_OBJDUMP_COFFDUMP_H
10 #define LLVM_TOOLS_LLVM_OBJDUMP_COFFDUMP_H
11 
12 #include "llvm/ADT/SmallVector.h"
13 
14 namespace llvm {
15 
16 class Error;
17 
18 namespace object {
19 class COFFObjectFile;
20 class COFFImportFile;
21 class ObjectFile;
22 class RelocationRef;
23 } // namespace object
24 
25 namespace objdump {
26 Error getCOFFRelocationValueString(const object::COFFObjectFile *Obj,
27                                    const object::RelocationRef &Rel,
28                                    llvm::SmallVectorImpl<char> &Result);
29 
30 void printCOFFUnwindInfo(const object::COFFObjectFile *O);
31 void printCOFFFileHeader(const object::ObjectFile *O);
32 void printCOFFSymbolTable(const object::COFFImportFile *I);
33 void printCOFFSymbolTable(const object::COFFObjectFile *O);
34 } // namespace objdump
35 } // namespace llvm
36 
37 #endif
38