LLVM 20.0.0git
|
#include "llvm/TextAPI/DylibReader.h"
#include "llvm/ADT/STLExtras.h"
#include "llvm/DebugInfo/DWARF/DWARFCompileUnit.h"
#include "llvm/DebugInfo/DWARF/DWARFContext.h"
#include "llvm/Object/Binary.h"
#include "llvm/Object/MachOUniversal.h"
#include "llvm/Support/Endian.h"
#include "llvm/TargetParser/Triple.h"
#include "llvm/TextAPI/InterfaceFile.h"
#include "llvm/TextAPI/RecordsSlice.h"
#include "llvm/TextAPI/TextAPIError.h"
#include <iomanip>
#include <set>
#include <sstream>
#include <string>
#include <tuple>
Go to the source code of this file.
Typedefs | |
using | TripleVec = std::vector< Triple > |
Functions | |
static TripleVec::iterator | emplace (TripleVec &Container, Triple &&T) |
static TripleVec | constructTriples (MachOObjectFile *Obj, const Architecture ArchT) |
static Error | readMachOHeader (MachOObjectFile *Obj, RecordsSlice &Slice) |
static Error | readSymbols (MachOObjectFile *Obj, RecordsSlice &Slice, const ParseOption &Opt) |
static Error | load (MachOObjectFile *Obj, RecordsSlice &Slice, const ParseOption &Opt, const Architecture Arch) |
static void | DWARFErrorHandler (Error Err) |
static SymbolToSourceLocMap | accumulateLocs (MachOObjectFile &Obj, const std::unique_ptr< DWARFContext > &DiCtx) |
Definition at line 35 of file DylibReader.cpp.
|
static |
Definition at line 440 of file DylibReader.cpp.
References llvm::consumeError(), llvm::MachO::Symbol::getFlags(), llvm::MachO::Symbol::getName(), llvm::IntervalMap< KeyT, ValT, N, Traits >::insert(), Name, llvm::MachO::parseSymbol(), llvm::object::SymbolRef::ST_Function, Sym, llvm::object::ObjectFile::symbols(), and llvm::Expected< T >::takeError().
Referenced by llvm::MachO::DylibReader::accumulateSourceLocFromDSYM().
|
static |
Definition at line 48 of file DylibReader.cpp.
References emplace(), llvm::MachO::getArchitectureName(), llvm::object::MachOObjectFile::getBuildVersionLoadCommand(), llvm::object::MachOObjectFile::getVersionMinLoadCommand(), llvm::MachO::ArchitectureSet::hasX86(), llvm::object::MachOObjectFile::load_commands(), llvm::MachO::build_version_command::minos, llvm::MachO::build_version_command::platform, and llvm::raw_string_ostream::str().
Referenced by llvm::MachO::DylibReader::readFile().
|
static |
Definition at line 437 of file DylibReader.cpp.
Referenced by llvm::MachO::DylibReader::accumulateSourceLocFromDSYM().
Definition at line 36 of file DylibReader.cpp.
References llvm::Triple::getArch(), llvm::Triple::getEnvironment(), llvm::Triple::getOS(), I, and llvm::partition_point().
Referenced by constructTriples(), and llvm::MaybeAlign::MaybeAlign().
|
static |
Definition at line 337 of file DylibReader.cpp.
References llvm::MachO::AK_unknown, llvm::MachO::DylibReader::ParseOption::MachOHeader, readMachOHeader(), readSymbols(), llvm::Error::success(), and llvm::MachO::DylibReader::ParseOption::SymbolTable.
|
static |
Definition at line 145 of file DylibReader.cpp.
References Content, llvm::object::MachOObjectFile::getDylibIDLoadCommand(), llvm::object::MachOObjectFile::getHeader(), llvm::object::MachOObjectFile::getLinkeditDataLoadCommand(), llvm::object::MachOObjectFile::getRpathCommand(), llvm::object::MachOObjectFile::getSubClientCommand(), llvm::object::MachOObjectFile::getSubFrameworkCommand(), llvm::object::MachOObjectFile::getUuidCommand(), H, I, llvm::object::Binary::isLittleEndian(), llvm_unreachable, llvm::object::MachOObjectFile::load_commands(), llvm::MachO::MH_APP_EXTENSION_SAFE, llvm::MachO::MH_BUNDLE, llvm::MachO::MH_DYLIB, llvm::MachO::MH_DYLIB_STUB, llvm::MachO::MH_TWOLEVEL, llvm::object::ObjectFile::sections(), and llvm::Error::success().
Referenced by load().
|
static |
Definition at line 249 of file DylibReader.cpp.
References Addr, llvm::StringMap< ValueTy, AllocatorTy >::end(), llvm::MachO::EXPORT_SYMBOL_FLAGS_KIND_MASK, llvm::MachO::EXPORT_SYMBOL_FLAGS_KIND_REGULAR, llvm::MachO::EXPORT_SYMBOL_FLAGS_KIND_THREAD_LOCAL, llvm::MachO::EXPORT_SYMBOL_FLAGS_REEXPORT, llvm::MachO::EXPORT_SYMBOL_FLAGS_WEAK_DEFINITION, llvm::object::MachOObjectFile::exports(), llvm::StringMap< ValueTy, AllocatorTy >::find(), llvm::MachO::Symbol::getFlags(), llvm::MachO::Symbol::getName(), Name, llvm::object::SymbolRef::ST_Function, llvm::Error::success(), Sym, llvm::object::ObjectFile::symbols(), and llvm::MachO::DylibReader::ParseOption::Undefineds.
Referenced by load().