From: Devang Patel Date: Mon, 15 Jan 2007 20:31:54 +0000 (+0000) Subject: Do not record last users of Pass Manager. X-Git-Url: http://plrg.eecs.uci.edu/git/?a=commitdiff_plain;h=3f5ecd7eb5526f75b4c36012b5b5194c69187a56;p=oota-llvm.git Do not record last users of Pass Manager. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33243 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/VMCore/PassManager.cpp b/lib/VMCore/PassManager.cpp index 376e1b798e9..d48c198bbff 100644 --- a/lib/VMCore/PassManager.cpp +++ b/lib/VMCore/PassManager.cpp @@ -594,8 +594,13 @@ void PMDataManager::add(Pass *P, } } - LastUses.push_back(P); - TPM->setLastUser(LastUses, P); + // Set P as P's last user until someone starts using P. + // However, if P is a Pass Manager then it does not need + // to record its last user. + if (!dynamic_cast(P)) { + LastUses.push_back(P); + TPM->setLastUser(LastUses, P); + } // Take a note of analysis required and made available by this pass. // Remove the analysis not preserved by this pass