1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-19 02:52:53 +02:00

Don't try to materialize a function that isn't materializable anyways. This

fixes a crash using FPM on a Function that isn't owned by a Module.

llvm-svn: 96273
This commit is contained in:
Nick Lewycky 2010-02-15 21:27:56 +00:00
parent 1357e1c99a
commit 1dcde6b319

View File

@ -1220,9 +1220,11 @@ void FunctionPassManager::add(Pass *P) {
/// so, return true.
///
bool FunctionPassManager::run(Function &F) {
std::string errstr;
if (F.Materialize(&errstr)) {
llvm_report_error("Error reading bitcode file: " + errstr);
if (F.isMaterializable()) {
std::string errstr;
if (F.Materialize(&errstr)) {
llvm_report_error("Error reading bitcode file: " + errstr);
}
}
return FPM->run(F);
}