From: Zhou Sheng Date: Thu, 11 Jan 2007 14:31:10 +0000 (+0000) Subject: Fixed a bug in ConstantInt::Inverted(). X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=9c799ffbbe47253e675c8bc67782275c17f5a3ab;p=oota-llvm.git Fixed a bug in ConstantInt::Inverted(). Modified comment of that method. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33074 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/include/llvm/Constants.h b/include/llvm/Constants.h index de9730c096c..e8d1460d8f2 100644 --- a/include/llvm/Constants.h +++ b/include/llvm/Constants.h @@ -96,13 +96,13 @@ public: /// @brief Get a ConstantInt for a specific value. static ConstantInt *get(const Type *Ty, int64_t V); - /// Returns the opposite value of this ConstantInt value if it's a boolean - /// constant. + /// Returns the opposite value of this ConstantInt. /// @brief Get inverse value. inline ConstantInt *inverted() const { static ConstantInt *CI = 0; if (CI) return CI; - return CI = new ConstantInt(getType(), Val ^ (-1)); + return CI = new ConstantInt(getType(), + Val ^ (getType() == Type::BoolTy ? 1 : -1)); } /// @returns the value of this ConstantInt only if it's a boolean type.