Home | History | Annotate | Download | only in llvm-readobj
      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_LLVM_READOBJ_LLVM_READOBJ_H
     11 #define LLVM_TOOLS_LLVM_READOBJ_LLVM_READOBJ_H
     12 
     13 #include "llvm/Support/CommandLine.h"
     14 #include <string>
     15 
     16 namespace llvm {
     17   namespace object {
     18     class RelocationRef;
     19   }
     20 
     21   // Various helper functions.
     22   bool error(std::error_code ec);
     23   bool relocAddressLess(object::RelocationRef A,
     24                         object::RelocationRef B);
     25 } // namespace llvm
     26 
     27 namespace opts {
     28   extern llvm::cl::list<std::string> InputFilenames;
     29   extern llvm::cl::opt<bool> FileHeaders;
     30   extern llvm::cl::opt<bool> Sections;
     31   extern llvm::cl::opt<bool> SectionRelocations;
     32   extern llvm::cl::opt<bool> SectionSymbols;
     33   extern llvm::cl::opt<bool> SectionData;
     34   extern llvm::cl::opt<bool> Relocations;
     35   extern llvm::cl::opt<bool> Symbols;
     36   extern llvm::cl::opt<bool> DynamicSymbols;
     37   extern llvm::cl::opt<bool> UnwindInfo;
     38   extern llvm::cl::opt<bool> ExpandRelocs;
     39   extern llvm::cl::opt<bool> CodeView;
     40   extern llvm::cl::opt<bool> CodeViewSubsectionBytes;
     41   extern llvm::cl::opt<bool> ARMAttributes;
     42   extern llvm::cl::opt<bool> MipsPLTGOT;
     43 } // namespace opts
     44 
     45 #define LLVM_READOBJ_ENUM_ENT(ns, enum) \
     46   { #enum, ns::enum }
     47 
     48 #endif
     49