mirror of
https://github.com/RPCSX/llvm.git
synced 2024-11-28 14:10:41 +00:00
367cf70f27
This finishes the ability of llvm-objdump to print out all information from the LC_DYLD_INFO load command. The -bind option prints out symbolic references that dyld must resolve immediately. The -lazy-bind option prints out symbolc reference that are lazily resolved on first use. The -weak-bind option prints out information about symbols which dyld must try to coalesce across images. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@217853 91177308-0d34-0410-b5e6-96231b3b80d8
50 lines
1.7 KiB
C++
50 lines
1.7 KiB
C++
//===-- llvm-objdump.h ----------------------------------------------------===//
|
|
//
|
|
// The LLVM Compiler Infrastructure
|
|
//
|
|
// This file is distributed under the University of Illinois Open Source
|
|
// License. See LICENSE.TXT for details.
|
|
//
|
|
//===----------------------------------------------------------------------===//
|
|
|
|
#ifndef LLVM_TOOLS_LLVM_OBJDUMP_LLVM_OBJDUMP_H
|
|
#define LLVM_TOOLS_LLVM_OBJDUMP_LLVM_OBJDUMP_H
|
|
|
|
#include "llvm/ADT/StringRef.h"
|
|
#include "llvm/Support/CommandLine.h"
|
|
#include "llvm/Support/DataTypes.h"
|
|
#include "llvm/Support/StringRefMemoryObject.h"
|
|
|
|
namespace llvm {
|
|
namespace object {
|
|
class COFFObjectFile;
|
|
class MachOObjectFile;
|
|
class ObjectFile;
|
|
class RelocationRef;
|
|
}
|
|
|
|
extern cl::opt<std::string> TripleName;
|
|
extern cl::opt<std::string> ArchName;
|
|
extern cl::opt<std::string> MCPU;
|
|
extern cl::list<std::string> MAttrs;
|
|
|
|
// Various helper functions.
|
|
bool error(std::error_code ec);
|
|
bool RelocAddressLess(object::RelocationRef a, object::RelocationRef b);
|
|
void DumpBytes(StringRef bytes);
|
|
void DisassembleInputMachO(StringRef Filename);
|
|
void printCOFFUnwindInfo(const object::COFFObjectFile* o);
|
|
void printMachOUnwindInfo(const object::MachOObjectFile* o);
|
|
void printMachOExportsTrie(const object::MachOObjectFile* o);
|
|
void printMachORebaseTable(const object::MachOObjectFile* o);
|
|
void printMachOBindTable(const object::MachOObjectFile* o);
|
|
void printMachOLazyBindTable(const object::MachOObjectFile* o);
|
|
void printMachOWeakBindTable(const object::MachOObjectFile* o);
|
|
void printELFFileHeader(const object::ObjectFile *o);
|
|
void printCOFFFileHeader(const object::ObjectFile *o);
|
|
void printMachOFileHeader(const object::ObjectFile *o);
|
|
|
|
} // end namespace llvm
|
|
|
|
#endif
|