assert(0) -> LLVM_UNREACHABLE.
Make llvm_unreachable take an optional string, thus moving the cerr<< out of
line.
LLVM_UNREACHABLE is now a simple wrapper that makes the message go away for
NDEBUG builds.
llvm-svn: 75379
diff --git a/llvm/lib/VMCore/PassManager.cpp b/llvm/lib/VMCore/PassManager.cpp
index 0878694..a454b56 100644
--- a/llvm/lib/VMCore/PassManager.cpp
+++ b/llvm/lib/VMCore/PassManager.cpp
@@ -724,7 +724,7 @@
OtherDT.dump();
cerr << "----- Invalid -----\n";
DT->dump();
- assert(0 && "Invalid dominator info");
+ LLVM_UNREACHABLE("Invalid dominator info");
}
DominanceFrontier *DF = P.getAnalysisIfAvailable<DominanceFrontier>();
@@ -741,7 +741,7 @@
OtherDF.dump();
cerr << "----- Invalid -----\n";
DF->dump();
- assert(0 && "Invalid dominator info");
+ LLVM_UNREACHABLE("Invalid dominator info");
}
}
@@ -883,7 +883,7 @@
// Keep track of higher level analysis used by this manager.
HigherLevelAnalysis.push_back(PRequired);
} else
- assert(0 && "Unable to accomodate Required Pass");
+ LLVM_UNREACHABLE("Unable to accomodate Required Pass");
}
// Set P as P's last user until someone starts using P.
@@ -1106,7 +1106,7 @@
cerr << "Unable to schedule '" << RequiredPass->getPassName();
cerr << "' required by '" << P->getPassName() << "'\n";
#endif
- assert(0 && "Unable to schedule pass");
+ LLVM_UNREACHABLE("Unable to schedule pass");
}
// Destructor