diff options
author | Nick Lewycky <nicholas@mxc.ca> | 2007-04-08 01:02:12 +0000 |
---|---|---|
committer | Nick Lewycky <nicholas@mxc.ca> | 2007-04-08 01:02:12 +0000 |
commit | 51bc779096f88ef52a12eaf07d6d1df5266007ca (patch) | |
tree | f2f37eacce5861811aa84547dbd4497af09084b5 /lib/VMCore/Dominators.cpp | |
parent | 0cd3a23d2af0dbf109141d69157c44751e40b260 (diff) | |
download | llvm-51bc779096f88ef52a12eaf07d6d1df5266007ca.tar.gz llvm-51bc779096f88ef52a12eaf07d6d1df5266007ca.tar.bz2 llvm-51bc779096f88ef52a12eaf07d6d1df5266007ca.tar.xz |
Don't crash when encountering a BasicBlock that hasn't been registered yet.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35756 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/VMCore/Dominators.cpp')
-rw-r--r-- | lib/VMCore/Dominators.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/lib/VMCore/Dominators.cpp b/lib/VMCore/Dominators.cpp index 9bd51bf4d9..b3e18e8e3e 100644 --- a/lib/VMCore/Dominators.cpp +++ b/lib/VMCore/Dominators.cpp @@ -935,8 +935,9 @@ void ETForestBase::updateDFSNumbers() for (df_iterator<BasicBlock*> I = df_begin(Roots[i]), E = df_end(Roots[i]); I != E; ++I) { BasicBlock *BB = *I; - if (!getNode(BB)->hasFather()) - getNode(BB)->assignDFSNumber(dfsnum); + ETNode *ETN = getNode(BB); + if (ETN && !ETN->hasFather()) + ETN->assignDFSNumber(dfsnum); } SlowQueries = 0; DFSInfoValid = true; |