diff options
| author | Andres Freund <andres@anarazel.de> | 2018-05-24 17:03:06 +0000 |
|---|---|---|
| committer | Andres Freund <andres@anarazel.de> | 2018-05-24 17:03:06 +0000 |
| commit | ac15cabd89f08a842f40b7a377d6d5838149fdb1 (patch) | |
| tree | b363fc9f56f73839ac906385d49110bb49490629 /llvm/lib/ExecutionEngine/Orc/OrcCBindingsStack.h | |
| parent | 512ccd7e6fbfbfb774ecd42902a4634b5e750f35 (diff) | |
| download | bcm5719-llvm-ac15cabd89f08a842f40b7a377d6d5838149fdb1.tar.gz bcm5719-llvm-ac15cabd89f08a842f40b7a377d6d5838149fdb1.zip | |
[ORC] Perform name mangling in findSymbolIn(), as done in findSymbol().
The lack of name mangling caused a unittest failure after r333147 (in
TestEagerIRCompilation), as OSX prefixes symbol names with '_'. The
lack of name mangling therefore leads to a NULL pointer being returned
and then called, hence the failure.
While it may look like it, this isn't an actual behavioral change, as
findSymbolIn() previously was not exposed externally, and essentially
dead code. Which explains why nobody noticed the issue previously.
Reviewers: lhames
Reviewed By: lhames
Subscribers: chandlerc, llvm-commits
Differential Revision: https://reviews.llvm.org/D47308
llvm-svn: 333206
Diffstat (limited to 'llvm/lib/ExecutionEngine/Orc/OrcCBindingsStack.h')
| -rw-r--r-- | llvm/lib/ExecutionEngine/Orc/OrcCBindingsStack.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/llvm/lib/ExecutionEngine/Orc/OrcCBindingsStack.h b/llvm/lib/ExecutionEngine/Orc/OrcCBindingsStack.h index 5af5e6a3a49..96b553f6fdd 100644 --- a/llvm/lib/ExecutionEngine/Orc/OrcCBindingsStack.h +++ b/llvm/lib/ExecutionEngine/Orc/OrcCBindingsStack.h @@ -380,7 +380,7 @@ public: JITSymbol findSymbolIn(orc::VModuleKey K, const std::string &Name, bool ExportedSymbolsOnly) { - return KeyLayers[K]->findSymbolIn(K, Name, ExportedSymbolsOnly); + return KeyLayers[K]->findSymbolIn(K, mangle(Name), ExportedSymbolsOnly); } LLVMOrcErrorCode findSymbolAddress(JITTargetAddress &RetAddr, |

