Mark the SCC as "might unwind" if we run into a 'resume' instruction.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137627 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Bill Wendling 2011-08-15 18:22:00 +00:00
parent 1178fb4701
commit bc4fcbbc7b

View File

@ -101,8 +101,9 @@ bool PruneEH::runOnSCC(CallGraphSCC &SCC) {
// Check to see if this function performs an unwind or calls an
// unwinding function.
for (Function::iterator BB = F->begin(), E = F->end(); BB != E; ++BB) {
if (CheckUnwind && isa<UnwindInst>(BB->getTerminator())) {
// Uses unwind!
if (CheckUnwind && (isa<UnwindInst>(BB->getTerminator()) ||
isa<ResumeInst>(BB->getTerminator()))) {
// Uses unwind / resume!
SCCMightUnwind = true;
} else if (CheckReturn && isa<ReturnInst>(BB->getTerminator())) {
SCCMightReturn = true;