llvm-readobj.h revision 36b56886974eae4f9c5ebc96befd3e7bfe5de338
1//===-- llvm-readobj.h ----------------------------------------------------===// 2// 3// The LLVM Compiler Infrastructure 4// 5// This file is distributed under the University of Illinois Open Source 6// License. See LICENSE.TXT for details. 7// 8//===----------------------------------------------------------------------===// 9 10#ifndef LLVM_TOOLS_READ_OBJ_H 11#define LLVM_TOOLS_READ_OBJ_H 12 13#include "llvm/Support/CommandLine.h" 14#include <string> 15 16namespace llvm { 17 namespace object { 18 class RelocationRef; 19 } 20 21 class error_code; 22 23 // Various helper functions. 24 bool error(error_code ec); 25 bool relocAddressLess(object::RelocationRef A, 26 object::RelocationRef B); 27} // namespace llvm 28 29namespace opts { 30 extern llvm::cl::list<std::string> InputFilenames; 31 extern llvm::cl::opt<bool> FileHeaders; 32 extern llvm::cl::opt<bool> Sections; 33 extern llvm::cl::opt<bool> SectionRelocations; 34 extern llvm::cl::opt<bool> SectionSymbols; 35 extern llvm::cl::opt<bool> SectionData; 36 extern llvm::cl::opt<bool> Relocations; 37 extern llvm::cl::opt<bool> Symbols; 38 extern llvm::cl::opt<bool> DynamicSymbols; 39 extern llvm::cl::opt<bool> UnwindInfo; 40 extern llvm::cl::opt<bool> ExpandRelocs; 41 extern llvm::cl::opt<bool> CodeViewLineTables; 42 extern llvm::cl::opt<bool> ARMAttributes; 43} // namespace opts 44 45#define LLVM_READOBJ_ENUM_ENT(ns, enum) \ 46 { #enum, ns::enum } 47 48#endif 49