forked from OSchip/llvm-project
There is no reason to try to materialize the function from bytecode if it
already has been. This may be a small speedup. llvm-svn: 17863
This commit is contained in:
parent
9cc2dac7c1
commit
b264f7f428
|
@ -239,15 +239,18 @@ void *JIT::getPointerToFunction(Function *F) {
|
|||
return Addr; // Check if function already code gen'd
|
||||
|
||||
// Make sure we read in the function if it exists in this Module
|
||||
try {
|
||||
MP->materializeFunction(F);
|
||||
} catch ( std::string& errmsg ) {
|
||||
std::cerr << "Error reading bytecode file: " << errmsg << "\n";
|
||||
abort();
|
||||
} catch (...) {
|
||||
std::cerr << "Error reading bytecode file!\n";
|
||||
abort();
|
||||
}
|
||||
if (F->hasNotBeenReadFromBytecode())
|
||||
try {
|
||||
MP->materializeFunction(F);
|
||||
} catch ( std::string& errmsg ) {
|
||||
std::cerr << "Error reading function '" << F->getName()
|
||||
<< "' from bytecode file: " << errmsg << "\n";
|
||||
abort();
|
||||
} catch (...) {
|
||||
std::cerr << "Error reading function '" << F->getName()
|
||||
<< "from bytecode file!\n";
|
||||
abort();
|
||||
}
|
||||
|
||||
if (F->isExternal()) {
|
||||
void *Addr = getPointerToNamedFunction(F->getName());
|
||||
|
|
Loading…
Reference in New Issue