Fix CodeGen/Generic/2007-02-23-DAGCombine-Miscompile.ll and PR1219
authorChris Lattner <sabre@nondot.org>
Sat, 24 Feb 2007 02:09:29 +0000 (02:09 +0000)
committerChris Lattner <sabre@nondot.org>
Sat, 24 Feb 2007 02:09:29 +0000 (02:09 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34551 91177308-0d34-0410-b5e6-96231b3b80d8

lib/CodeGen/SelectionDAG/TargetLowering.cpp

index 623d9a1c0fe210c4d25cac77075ff356a4c54049..073588cd12ba5f2039d42008f341e7fffb3ac4a8 100644 (file)
@@ -1459,11 +1459,11 @@ TargetLowering::SimplifySetCC(MVT::ValueType VT, SDOperand N0, SDOperand N1,
           case ISD::SETGT:
           case ISD::SETGE:
             // True if the sign bit of C1 is set.
-            return DAG.getConstant((C1 & (1ULL << VSize)) != 0, VT);
+            return DAG.getConstant((C1 & (1ULL << (VSize-1))) != 0, VT);
           case ISD::SETLT:
           case ISD::SETLE:
             // True if the sign bit of C1 isn't set.
-            return DAG.getConstant((C1 & (1ULL << VSize)) == 0, VT);
+            return DAG.getConstant((C1 & (1ULL << (VSize-1))) == 0, VT);
           default:
             break;
           }