Fix PR1816, by correcting the broken definition of APInt::countTrailingZeros.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44296 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Chris Lattner
2007-11-23 22:42:31 +00:00
parent 8314a0cd0f
commit 9e513acd31
3 changed files with 12 additions and 5 deletions

View File

@ -745,7 +745,7 @@ uint32_t APInt::countLeadingZeros() const {
uint32_t remainder = BitWidth % APINT_BITS_PER_WORD;
if (remainder)
Count -= APINT_BITS_PER_WORD - remainder;
return Count;
return std::min(Count, BitWidth);
}
static uint32_t countLeadingOnes_64(uint64_t V, uint32_t skip) {