From: Daniel Berlin Date: Mon, 17 Sep 2007 18:04:21 +0000 (+0000) Subject: Fix iterator so it doesn't sometimes report bits that aren't in the bitmap X-Git-Url: http://plrg.eecs.uci.edu/git/?a=commitdiff_plain;h=8180cf65a5b9fc41ba402a2d08cf62f70af65aeb;p=oota-llvm.git Fix iterator so it doesn't sometimes report bits that aren't in the bitmap git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42039 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/include/llvm/ADT/SparseBitVector.h b/include/llvm/ADT/SparseBitVector.h index 6ffc6edcfc7..3455f51050b 100644 --- a/include/llvm/ADT/SparseBitVector.h +++ b/include/llvm/ADT/SparseBitVector.h @@ -405,6 +405,8 @@ class SparseBitVector { WordNumber = (NextSetBitNumber % ElementSize) / BITWORD_SIZE; Bits = Iter->word(WordNumber); Bits >>= NextSetBitNumber % BITWORD_SIZE; + BitNumber = Iter->index() * ElementSize; + BitNumber += NextSetBitNumber; } } }