diff options
author | Chris Lattner <sabre@nondot.org> | 2004-09-15 17:00:41 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2004-09-15 17:00:41 +0000 |
commit | 7e0e9c635f5439426252bd1ccbfa90b878ba0ca6 (patch) | |
tree | 0aef5118a6edf7e857d8b2cbdafdb51627a1e829 /include/llvm | |
parent | 3080b605d7ab700b0663d961672b40b0d9e25492 (diff) | |
download | external_llvm-7e0e9c635f5439426252bd1ccbfa90b878ba0ca6.zip external_llvm-7e0e9c635f5439426252bd1ccbfa90b878ba0ca6.tar.gz external_llvm-7e0e9c635f5439426252bd1ccbfa90b878ba0ca6.tar.bz2 |
Make sure to update the list end when an element is removed from it. This
fixes a crash in LICM when processing povray.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16367 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm')
-rw-r--r-- | include/llvm/Analysis/AliasSetTracker.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/include/llvm/Analysis/AliasSetTracker.h b/include/llvm/Analysis/AliasSetTracker.h index 6a6f016..fe3e60c 100644 --- a/include/llvm/Analysis/AliasSetTracker.h +++ b/include/llvm/Analysis/AliasSetTracker.h @@ -77,6 +77,10 @@ class AliasSet { void removeFromList() { if (NextInList) NextInList->second.PrevInList = PrevInList; *PrevInList = NextInList; + if (AS->PtrListEnd == &NextInList) { + AS->PtrListEnd = PrevInList; + assert(*AS->PtrListEnd == 0 && "List not terminated right!"); + } } }; |