diff --git a/include/llvm/Constants.h b/include/llvm/Constants.h index 988b53a284c..c307356247c 100644 --- a/include/llvm/Constants.h +++ b/include/llvm/Constants.h @@ -94,7 +94,7 @@ public: /// either getSExtValue() or getZExtValue() will yield a correctly sized and /// signed value for the type Ty. /// @brief Get a ConstantInt for a specific value. - static ConstantInt *get(const Type *Ty, uint64_t V); + static ConstantInt *get(const Type *Ty, uint64_t V, bool isSigned = false); /// Return a ConstantInt with the specified value and an implied Type. The /// type is the integer type that corresponds to the bit width of the value. diff --git a/lib/VMCore/Constants.cpp b/lib/VMCore/Constants.cpp index 1685923e433..e5417f52456 100644 --- a/lib/VMCore/Constants.cpp +++ b/lib/VMCore/Constants.cpp @@ -203,9 +203,9 @@ typedef DenseMap IntMapTy; static ManagedStatic IntConstants; -ConstantInt *ConstantInt::get(const Type *Ty, uint64_t V) { +ConstantInt *ConstantInt::get(const Type *Ty, uint64_t V, bool isSigned) { const IntegerType *ITy = cast(Ty); - return get(APInt(ITy->getBitWidth(), V)); + return get(APInt(ITy->getBitWidth(), V, isSigned)); } // Get a ConstantInt from an APInt. Note that the value stored in the DenseMap