Repair an out by one error for IA64.
authorJim Laskey <jlaskey@mac.com>
Sat, 20 Aug 2005 11:05:23 +0000 (11:05 +0000)
committerJim Laskey <jlaskey@mac.com>
Sat, 20 Aug 2005 11:05:23 +0000 (11:05 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22942 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/IA64/IA64ISelPattern.cpp

index a0a6f706e339ea05e2cd0acc9760d48938e8d09b..b66a0327514c47a388db0988666ee9d3f7d5fd59 100644 (file)
@@ -875,7 +875,7 @@ static unsigned ponderIntegerAndWith(SDOperand N, unsigned& Imm) {
   int64_t v = (int64_t)cast<ConstantSDNode>(N)->getSignExtended();
 
   if (isMask_64(v)) { // if ANDing with ((2^n)-1) for some n
-    Imm = Log2_64(v);
+    Imm = Log2_64(v) + 1;
     return 1; // say so
   }