1 //===-- llvm-objdump.h ----------------------------------------------------===//
3 // The LLVM Compiler Infrastructure
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
8 //===----------------------------------------------------------------------===//
10 #ifndef LLVM_OBJDUMP_H
11 #define LLVM_OBJDUMP_H
13 #include "llvm/ADT/StringRef.h"
14 #include "llvm/Support/CommandLine.h"
15 #include "llvm/Support/DataTypes.h"
16 #include "llvm/Support/StringRefMemoryObject.h"
21 class MachOObjectFile;
26 extern cl::opt<std::string> TripleName;
27 extern cl::opt<std::string> ArchName;
28 extern cl::opt<std::string> MCPU;
29 extern cl::list<std::string> MAttrs;
31 // Various helper functions.
32 bool error(std::error_code ec);
33 bool RelocAddressLess(object::RelocationRef a, object::RelocationRef b);
34 void DumpBytes(StringRef bytes);
35 void DisassembleInputMachO(StringRef Filename);
36 void printCOFFUnwindInfo(const object::COFFObjectFile* o);
37 void printMachOUnwindInfo(const object::MachOObjectFile* o);
39 void printELFFileHeader(const object::ObjectFile *o);
40 void printCOFFFileHeader(const object::ObjectFile *o);
42 } // end namespace llvm