diff --git a/llvm/lib/ExecutionEngine/MCJIT/MCJIT.cpp b/llvm/lib/ExecutionEngine/MCJIT/MCJIT.cpp index 09a79f64d428cd92684713df43508c390eb92f91..4475f4d5c0d8a3d4e95831d65f6dbd6eaefd4f3f 100644 --- a/llvm/lib/ExecutionEngine/MCJIT/MCJIT.cpp +++ b/llvm/lib/ExecutionEngine/MCJIT/MCJIT.cpp @@ -104,12 +104,10 @@ void *MCJIT::getPointerToFunction(Function *F) { // FIXME: Should we be using the mangler for this? Probably. StringRef BaseName = F->getName(); - Twine Name; if (BaseName[0] == '\1') - Name = BaseName.substr(1); - else - Name = TM->getMCAsmInfo()->getGlobalPrefix() + BaseName; - return (void*)Dyld.getSymbolAddress(Name.str()); + return (void*)Dyld.getSymbolAddress(BaseName.substr(1)); + return (void*)Dyld.getSymbolAddress((TM->getMCAsmInfo()->getGlobalPrefix() + + BaseName).str()); } void *MCJIT::recompileAndRelinkFunction(Function *F) {