From dcffd5c3d90f295c90bc211a9c402e1fc18f8b12 Mon Sep 17 00:00:00 2001 From: Reid Spencer Date: Mon, 26 Feb 2007 01:20:59 +0000 Subject: [PATCH] Add an isNegative method to determine if the APInt's value is negative. This is much less expensive than a test against zero. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34619 91177308-0d34-0410-b5e6-96231b3b80d8 --- include/llvm/ADT/APInt.h | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/include/llvm/ADT/APInt.h b/include/llvm/ADT/APInt.h index b08da956abb..489675d3b7f 100644 --- a/include/llvm/ADT/APInt.h +++ b/include/llvm/ADT/APInt.h @@ -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;