[llvm-objdump][COFF][NFC] Split format-specific interfaces; add namespace
Summary:
This patch addresses, for the interfaces implemented by `COFFDump.cpp`,
multiple issues identified with the current structure of
`llvm-objdump.h` in the review of D72973.
This patch moves implementation details of the tool into an
`llvm::objdump` namespace for external linkage names, splits the
implementation details into separate headers for each implementation
file, and uses qualified names when declaring members of the
`llvm::objdump` namespace in place of leaving the namespace definition
open.
Reviewers: jhenderson, DiggerLin, jasonliu, daltenty, MaskRay
Reviewed By: jhenderson, MaskRay
Subscribers: MaskRay, rupprecht, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D77285
2020-04-02 18:17:52 -04:00
|
|
|
//===-- COFFDump.h ----------------------------------------------*- C++ -*-===//
|
|
|
|
//
|
|
|
|
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
|
|
|
|
// See https://llvm.org/LICENSE.txt for license information.
|
|
|
|
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
|
|
|
|
//
|
|
|
|
//===----------------------------------------------------------------------===//
|
|
|
|
|
|
|
|
#ifndef LLVM_TOOLS_LLVM_OBJDUMP_COFFDUMP_H
|
|
|
|
#define LLVM_TOOLS_LLVM_OBJDUMP_COFFDUMP_H
|
|
|
|
|
|
|
|
#include "llvm/ADT/SmallVector.h"
|
|
|
|
|
|
|
|
namespace llvm {
|
|
|
|
|
|
|
|
class Error;
|
|
|
|
|
|
|
|
namespace object {
|
|
|
|
class COFFObjectFile;
|
|
|
|
class COFFImportFile;
|
|
|
|
class RelocationRef;
|
|
|
|
} // namespace object
|
|
|
|
|
|
|
|
namespace objdump {
|
|
|
|
Error getCOFFRelocationValueString(const object::COFFObjectFile *Obj,
|
|
|
|
const object::RelocationRef &Rel,
|
|
|
|
llvm::SmallVectorImpl<char> &Result);
|
|
|
|
|
|
|
|
void printCOFFUnwindInfo(const object::COFFObjectFile *O);
|
2021-11-09 10:08:41 -08:00
|
|
|
void printCOFFFileHeader(const object::COFFObjectFile &Obj);
|
2022-07-07 12:14:59 -07:00
|
|
|
void printCOFFSymbolTable(const object::COFFImportFile &I);
|
|
|
|
void printCOFFSymbolTable(const object::COFFObjectFile &O);
|
[llvm-objdump][COFF][NFC] Split format-specific interfaces; add namespace
Summary:
This patch addresses, for the interfaces implemented by `COFFDump.cpp`,
multiple issues identified with the current structure of
`llvm-objdump.h` in the review of D72973.
This patch moves implementation details of the tool into an
`llvm::objdump` namespace for external linkage names, splits the
implementation details into separate headers for each implementation
file, and uses qualified names when declaring members of the
`llvm::objdump` namespace in place of leaving the namespace definition
open.
Reviewers: jhenderson, DiggerLin, jasonliu, daltenty, MaskRay
Reviewed By: jhenderson, MaskRay
Subscribers: MaskRay, rupprecht, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D77285
2020-04-02 18:17:52 -04:00
|
|
|
} // namespace objdump
|
|
|
|
} // namespace llvm
|
|
|
|
|
|
|
|
#endif
|