diff options
author | Lang Hames <lhames@gmail.com> | 2015-03-09 23:44:13 +0000 |
---|---|---|
committer | Lang Hames <lhames@gmail.com> | 2015-03-09 23:44:13 +0000 |
commit | 3197fb4a89dc9cddb23ad4298e6121354f1d488b (patch) | |
tree | dda1bfd681e616fc05ac6e4bf606d7604ea0f3fb /llvm/lib/ExecutionEngine/MCJIT | |
parent | fa79110cc78c8cf751d98890390372782b2e3b73 (diff) | |
download | bcm5719-llvm-3197fb4a89dc9cddb23ad4298e6121354f1d488b.tar.gz bcm5719-llvm-3197fb4a89dc9cddb23ad4298e6121354f1d488b.zip |
[Orc][MCJIT][RuntimeDyld] Add symbol flags to symbols in RuntimeDyld. Thread the
new types through MCJIT and Orc.
In particular, add a 'weak' flag. When plumbed through RTDyldMemoryManager, this
will allow us to distinguish between weak and strong definitions and find the
right ones during symbol resolution.
llvm-svn: 231724
Diffstat (limited to 'llvm/lib/ExecutionEngine/MCJIT')
-rw-r--r-- | llvm/lib/ExecutionEngine/MCJIT/MCJIT.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/llvm/lib/ExecutionEngine/MCJIT/MCJIT.cpp b/llvm/lib/ExecutionEngine/MCJIT/MCJIT.cpp index 527941b59a8..20b85532e0b 100644 --- a/llvm/lib/ExecutionEngine/MCJIT/MCJIT.cpp +++ b/llvm/lib/ExecutionEngine/MCJIT/MCJIT.cpp @@ -257,7 +257,7 @@ uint64_t MCJIT::getExistingSymbolAddress(const std::string &Name) { Mangler Mang(TM->getDataLayout()); SmallString<128> FullName; Mang.getNameWithPrefix(FullName, Name); - return Dyld.getSymbolLoadAddress(FullName); + return Dyld.getSymbol(FullName).getAddress(); } Module *MCJIT::findModuleForSymbol(const std::string &Name, @@ -383,7 +383,7 @@ void *MCJIT::getPointerToFunction(Function *F) { // // This is the accessor for the target address, so make sure to check the // load address of the symbol, not the local address. - return (void*)Dyld.getSymbolLoadAddress(Name); + return (void*)Dyld.getSymbol(Name).getAddress(); } void MCJIT::runStaticConstructorsDestructorsInModulePtrSet( |