Correct the calculation in APInt::logBase2().
[oota-llvm.git] / include / llvm / ADT / APInt.h
index d7a604c41655112746537b5354ff7500a5d47a53..80221f2880a6039e49ef472700d689665f26947d 100644 (file)
@@ -697,7 +697,7 @@ public:
 
   /// @returns the floor log base 2 of this APInt.
   inline uint32_t logBase2() const {
-    return getNumWords() * APINT_BITS_PER_WORD - 1 - countLeadingZeros();
+    return BitWidth - 1 - countLeadingZeros();
   }
 
   /// @brief Converts this APInt to a double value.