1 //===-- ELFDump.h - ELF-specific dumper -------------------------*- C++ -*-===// 2 // 3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 4 // See https://llvm.org/LICENSE.txt for license information. 5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 6 // 7 //===----------------------------------------------------------------------===// 8 9 #ifndef LLVM_TOOLS_LLVM_OBJDUMP_ELFDUMP_H 10 #define LLVM_TOOLS_LLVM_OBJDUMP_ELFDUMP_H 11 12 #include "llvm/ADT/SmallVector.h" 13 14 namespace llvm { 15 16 class Error; 17 18 namespace object { 19 class ELFObjectFileBase; 20 class ELFSectionRef; 21 class ObjectFile; 22 class RelocationRef; 23 } // namespace object 24 25 namespace objdump { 26 27 Error getELFRelocationValueString(const object::ELFObjectFileBase *Obj, 28 const object::RelocationRef &Rel, 29 llvm::SmallVectorImpl<char> &Result); 30 uint64_t getELFSectionLMA(const object::ELFSectionRef &Sec); 31 32 void printELFFileHeader(const object::ObjectFile *O); 33 34 } // namespace objdump 35 } // namespace llvm 36 37 #endif 38