123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778 |
- //===-- MachODump.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_MACHODUMP_H
- #define LLVM_TOOLS_LLVM_OBJDUMP_MACHODUMP_H
- #include "llvm/ADT/SmallVector.h"
- #include "llvm/Support/CommandLine.h"
- namespace llvm {
- class Error;
- class StringRef;
- namespace object {
- class MachOObjectFile;
- class MachOUniversalBinary;
- class ObjectFile;
- class RelocationRef;
- } // namespace object
- namespace opt {
- class InputArgList;
- } // namespace opt
- namespace objdump {
- void parseMachOOptions(const llvm::opt::InputArgList &InputArgs);
- // MachO specific options
- extern bool Bind;
- extern bool DataInCode;
- extern std::string DisSymName;
- extern bool DylibId;
- extern bool DylibsUsed;
- extern bool ExportsTrie;
- extern bool FirstPrivateHeader;
- extern bool FullLeadingAddr;
- extern bool FunctionStarts;
- extern bool IndirectSymbols;
- extern bool InfoPlist;
- extern bool LazyBind;
- extern bool LeadingHeaders;
- extern bool LinkOptHints;
- extern bool ObjcMetaData;
- extern bool Rebase;
- extern bool Rpaths;
- extern bool SymbolicOperands;
- extern bool UniversalHeaders;
- extern bool Verbose;
- extern bool WeakBind;
- Error getMachORelocationValueString(const object::MachOObjectFile *Obj,
- const object::RelocationRef &RelRef,
- llvm::SmallVectorImpl<char> &Result);
- void parseInputMachO(StringRef Filename);
- void parseInputMachO(object::MachOUniversalBinary *UB);
- void printMachOUnwindInfo(const object::MachOObjectFile *O);
- void printMachOFileHeader(const object::ObjectFile *O);
- void printMachOLoadCommands(const object::ObjectFile *O);
- void printExportsTrie(const object::ObjectFile *O);
- void printRebaseTable(object::ObjectFile *O);
- void printBindTable(object::ObjectFile *O);
- void printLazyBindTable(object::ObjectFile *O);
- void printWeakBindTable(object::ObjectFile *O);
- } // namespace objdump
- } // namespace llvm
- #endif
|