Properly parenthesize this expression, fixing a real bug in the new
authorDan Gohman <gohman@apple.com>
Sun, 22 Feb 2009 16:40:52 +0000 (16:40 +0000)
committerDan Gohman <gohman@apple.com>
Sun, 22 Feb 2009 16:40:52 +0000 (16:40 +0000)
-full-lsr code, as well as a GCC warning.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@65288 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Transforms/Scalar/LoopStrengthReduce.cpp

index 1817e5837472b1340e3b3ac6878afd1af990d589..e32cacc44120976bfad1325d7785ebc69ed2dff5 100644 (file)
@@ -1536,7 +1536,7 @@ bool LoopStrengthReduce::ShouldUseFullStrengthReductionMode(
     // strength reduction would increase register pressure.
     do {
       SCEV *CurImm = UsersToProcess[i].Imm;
-      if (CurImm || Imm && CurImm != Imm) {
+      if ((CurImm || Imm) && CurImm != Imm) {
         if (!CurImm) CurImm = SE->getIntegerSCEV(0, Stride->getType());
         if (!Imm)       Imm = SE->getIntegerSCEV(0, Stride->getType());
         const Instruction *Inst = UsersToProcess[i].Inst;