diff options
Diffstat (limited to 'llvm')
-rw-r--r-- | llvm/lib/ExecutionEngine/RuntimeDyld/RTDyldMemoryManager.cpp | 4 | ||||
-rw-r--r-- | llvm/unittests/ExecutionEngine/ExecutionEngineTest.cpp | 4 |
2 files changed, 4 insertions, 4 deletions
diff --git a/llvm/lib/ExecutionEngine/RuntimeDyld/RTDyldMemoryManager.cpp b/llvm/lib/ExecutionEngine/RuntimeDyld/RTDyldMemoryManager.cpp index e39acc7ee14..3fbca3506eb 100644 --- a/llvm/lib/ExecutionEngine/RuntimeDyld/RTDyldMemoryManager.cpp +++ b/llvm/lib/ExecutionEngine/RuntimeDyld/RTDyldMemoryManager.cpp @@ -265,8 +265,8 @@ RTDyldMemoryManager::getSymbolAddressInProcess(const std::string &Name) { const char *NameStr = Name.c_str(); // DynamicLibrary::SearchForAddresOfSymbol expects an unmangled 'C' symbol - // name so ff we're on Darwin, strip the leading '_' off. -#ifdef __APPLE__ + // name so if we're on Darwin or 32-bit Windows, strip the leading '_' off. +#if defined(__APPLE__) || (defined(_WIN32) && !defined(_WIN64)) if (NameStr[0] == '_') ++NameStr; #endif diff --git a/llvm/unittests/ExecutionEngine/ExecutionEngineTest.cpp b/llvm/unittests/ExecutionEngine/ExecutionEngineTest.cpp index 7cad8413069..798f5ae3575 100644 --- a/llvm/unittests/ExecutionEngine/ExecutionEngineTest.cpp +++ b/llvm/unittests/ExecutionEngine/ExecutionEngineTest.cpp @@ -139,8 +139,8 @@ TEST_F(ExecutionEngineTest, LookupWithMangledAndDemangledSymbol) { // RTDyldMemoryManager::getSymbolAddressInProcess expects a mangled symbol, // but DynamicLibrary is a wrapper for dlsym, which expects the unmangled C // symbol name. This test verifies that getSymbolAddressInProcess strips the - // leading '_' on Darwin, but not on other platforms. -#ifdef __APPLE__ + // leading '_' on Darwin and 32-bit Windows, but not on other platforms. +#if defined(__APPLE__) || (defined(_WIN32) && !defined(_WIN64)) EXPECT_EQ(reinterpret_cast<uint64_t>(&x), RTDyldMemoryManager::getSymbolAddressInProcess("_x")); #else |