10 #ifndef LLVM_LIB_EXECUTIONENGINE_RUNTIMEDYLD_RUNTIMEDYLDCHECKERIMPL_H 11 #define LLVM_LIB_EXECUTIONENGINE_RUNTIMEDYLD_RUNTIMEDYLDCHECKERIMPL_H 34 typedef std::map<std::string, uint64_t> StubOffsetsMap;
35 struct SectionAddressInfo {
37 StubOffsetsMap StubOffsets;
39 typedef std::map<std::string, SectionAddressInfo> SectionMap;
40 typedef std::map<std::string, SectionMap> StubMap;
50 uint64_t readMemoryAtAddr(uint64_t Addr,
unsigned Size)
const;
52 std::pair<const SectionAddressInfo*, std::string> findSectionAddrInfo(
56 std::pair<uint64_t, std::string> getSectionAddr(
StringRef FileName,
58 bool IsInsideLoad)
const;
60 std::pair<uint64_t, std::string> getStubAddrFor(
StringRef FileName,
63 bool IsInsideLoad)
const;
68 void registerSection(
StringRef FilePath,
unsigned SectionID);
69 void registerStubMap(
StringRef FilePath,
unsigned SectionID,
bool checkAllRulesInBuffer(StringRef RulePrefix, MemoryBuffer *MemBuf) const
This class represents lattice values for constants.
RuntimeDyldCheckerImpl(RuntimeDyld &RTDyld, MCDisassembler *Disassembler, MCInstPrinter *InstPrinter, llvm::raw_ostream &ErrStream)
Superclass for all disassemblers.
std::set< StringRef > LookupSet
amdgpu Simplify well known AMD library false Value Value const Twine & Name
std::map< RelocationValueRef, uintptr_t > StubMap
Tagged union holding either a T or a Error.
RuntimeDyld invariant checker for verifying that RuntimeDyld has correctly applied relocations...
This interface provides simple read-only access to a block of memory, and provides simple methods for...
This is an instance of a target assembly language printer that converts an MCInst to valid target ass...
bool check(StringRef CheckExpr) const
This class implements an extremely fast bulk output stream that can only output to a stream...
StringRef - Represent a constant reference to a string, i.e.