[MCJIT] Move get-any-symbol-load-address logic out of RuntimeDyld and into

RuntimeDyldChecker.

RuntimeDyld instances should only provide lookup for locally defined
symbols.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@222859 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Lang Hames 2014-11-27 00:12:28 +00:00
parent 9e6a1814c9
commit 51bd393f52
2 changed files with 3 additions and 9 deletions

View File

@ -740,7 +740,9 @@ uint64_t RuntimeDyldCheckerImpl::getSymbolLinkerAddr(StringRef Symbol) const {
}
uint64_t RuntimeDyldCheckerImpl::getSymbolRemoteAddr(StringRef Symbol) const {
return getRTDyld().getAnySymbolRemoteAddress(Symbol);
if (uint64_t InternalSymbolAddr = getRTDyld().getSymbolLoadAddress(Symbol))
return InternalSymbolAddr;
return getRTDyld().MemMgr->getSymbolAddress(Symbol);
}
uint64_t RuntimeDyldCheckerImpl::readMemoryAtAddr(uint64_t SrcAddr,

View File

@ -159,14 +159,6 @@ public:
class RuntimeDyldImpl {
friend class RuntimeDyld::LoadedObjectInfo;
friend class RuntimeDyldCheckerImpl;
private:
uint64_t getAnySymbolRemoteAddress(StringRef Symbol) {
if (uint64_t InternalSymbolAddr = getSymbolLoadAddress(Symbol))
return InternalSymbolAddr;
return MemMgr->getSymbolAddress(Symbol);
}
protected:
// The MemoryManager to load objects into.
RTDyldMemoryManager *MemMgr;