diff --git a/llvm/lib/ExecutionEngine/RuntimeDyld/RTDyldMemoryManager.cpp b/llvm/lib/ExecutionEngine/RuntimeDyld/RTDyldMemoryManager.cpp index 3fbca3506ebe..e39acc7ee144 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 if we're on Darwin or 32-bit Windows, strip the leading '_' off. -#if defined(__APPLE__) || (defined(_WIN32) && !defined(_WIN64)) + // name so ff we're on Darwin, strip the leading '_' off. +#ifdef __APPLE__ if (NameStr[0] == '_') ++NameStr; #endif diff --git a/llvm/unittests/ExecutionEngine/ExecutionEngineTest.cpp b/llvm/unittests/ExecutionEngine/ExecutionEngineTest.cpp index 798f5ae3575f..7cad84130692 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 and 32-bit Windows, but not on other platforms. -#if defined(__APPLE__) || (defined(_WIN32) && !defined(_WIN64)) + // leading '_' on Darwin, but not on other platforms. +#ifdef __APPLE__ EXPECT_EQ(reinterpret_cast(&x), RTDyldMemoryManager::getSymbolAddressInProcess("_x")); #else