Move APInt::operator[] inline.

llvm-svn: 152692
This commit is contained in:
Benjamin Kramer 2012-03-14 00:38:15 +00:00
parent 8a2603ad7e
commit 3bb5766d6e
2 changed files with 5 additions and 7 deletions

View File

@ -842,7 +842,11 @@ public:
/// @returns the bit value at bitPosition
/// @brief Array-indexing support.
bool operator[](unsigned bitPosition) const;
bool operator[](unsigned bitPosition) const {
assert(bitPosition < getBitWidth() && "Bit position out of bounds!");
return (maskBit(bitPosition) &
(isSingleWord() ? VAL : pVal[whichWord(bitPosition)])) != 0;
}
/// @}
/// @name Comparison Operators

View File

@ -484,12 +484,6 @@ APInt APInt::operator-(const APInt& RHS) const {
return Result.clearUnusedBits();
}
bool APInt::operator[](unsigned bitPosition) const {
assert(bitPosition < getBitWidth() && "Bit position out of bounds!");
return (maskBit(bitPosition) &
(isSingleWord() ? VAL : pVal[whichWord(bitPosition)])) != 0;
}
bool APInt::EqualSlowCase(const APInt& RHS) const {
// Get some facts about the number of bits used in the two operands.
unsigned n1 = getActiveBits();