Add an isNegative method to determine if the APInt's value is negative.

This is much less expensive than a test against zero.

llvm-svn: 34619
This commit is contained in:
Reid Spencer 2007-02-26 01:20:59 +00:00
parent 44eef169fa
commit 5aa8560eab
1 changed files with 7 additions and 0 deletions

View File

@ -352,6 +352,13 @@ public:
return !slt(RHS);
}
/// This just tests the high bit of this APInt to determine if it is negative.
/// @returns true if this APInt is negative, false otherwise
/// @brief Determine sign of this APInt.
bool isNegative() {
return (*this)[BitWidth - 1];
}
/// Arithmetic right-shift this APInt by shiftAmt.
/// @brief Arithmetic right-shift function.
APInt ashr(uint32_t shiftAmt) const;