summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Transforms
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2010-01-08 17:48:19 +0000
committerChris Lattner <sabre@nondot.org>2010-01-08 17:48:19 +0000
commit8c92b57df9ef746cb399e5a96e0febf3c9c3c344 (patch)
tree477e052ede2a1dc3259eb00bf2a5a1d4b5a6466c /llvm/lib/Transforms
parentab6e6819b2b63d25101b64f0c63eeab3c266d499 (diff)
downloadbcm5719-llvm-8c92b57df9ef746cb399e5a96e0febf3c9c3c344.tar.gz
bcm5719-llvm-8c92b57df9ef746cb399e5a96e0febf3c9c3c344.zip
tidy up some stuff duncan pointed out.
llvm-svn: 93007
Diffstat (limited to 'llvm/lib/Transforms')
-rw-r--r--llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp b/llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
index abbc89b0a10..e59406c636a 100644
--- a/llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
+++ b/llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
@@ -705,7 +705,7 @@ Instruction *InstCombiner::FoldICmpAddOpCst(ICmpInst &ICI,
// so the values can never be equal. Similiarly for all other "or equals"
// operators.
- // (X+1) <u X --> X >u (MAXUINT-1) --> X != 255
+ // (X+1) <u X --> X >u (MAXUINT-1) --> X == 255
// (X+2) <u X --> X >u (MAXUINT-2) --> X > 253
// (X+MAXUINT) <u X --> X >u (MAXUINT-MAXUINT) --> X != 0
if (Pred == ICmpInst::ICMP_ULT || Pred == ICmpInst::ICMP_ULE) {
@@ -713,7 +713,8 @@ Instruction *InstCombiner::FoldICmpAddOpCst(ICmpInst &ICI,
if (isNUW)
return ReplaceInstUsesWith(ICI, ConstantInt::getFalse(X->getContext()));
- Value *R = ConstantExpr::getSub(ConstantInt::get(CI->getType(), -1ULL), CI);
+ Value *R =
+ ConstantExpr::getSub(ConstantInt::getAllOnesValue(CI->getType()), CI);
return new ICmpInst(ICmpInst::ICMP_UGT, X, R);
}
OpenPOWER on IntegriCloud