[llvm] r249528 - Revert "This patch builds on top of D13378 to handle constant condition."

James Molloy via llvm-commits llvm-commits at lists.llvm.org
Wed Oct 7 02:03:35 PDT 2015


Author: jamesm
Date: Wed Oct  7 04:03:34 2015
New Revision: 249528

URL: http://llvm.org/viewvc/llvm-project?rev=249528&view=rev
Log:
Revert "This patch builds on top of D13378 to handle constant condition."

This reverts commit r249431. This caused failures in sqlite3: http://lab.llvm.org:8011/builders/clang-native-arm-lnt/builds/14453

Removed:
    llvm/trunk/test/Analysis/ScalarEvolution/constant_condition.ll
Modified:
    llvm/trunk/lib/Analysis/ScalarEvolution.cpp

Modified: llvm/trunk/lib/Analysis/ScalarEvolution.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Analysis/ScalarEvolution.cpp?rev=249528&r1=249527&r2=249528&view=diff
==============================================================================
--- llvm/trunk/lib/Analysis/ScalarEvolution.cpp (original)
+++ llvm/trunk/lib/Analysis/ScalarEvolution.cpp Wed Oct  7 04:03:34 2015
@@ -3904,11 +3904,6 @@ const SCEV *ScalarEvolution::createNodeF
                                                       Value *Cond,
                                                       Value *TrueVal,
                                                       Value *FalseVal) {
-  // Handle "constant" branch or select. This can occur for instance when a
-  // loop pass transforms an inner loop and moves on to process the outer loop.
-  if (auto *CI = dyn_cast<ConstantInt>(Cond))
-    return getSCEV(CI->isOne() ? TrueVal : FalseVal);
-
   // Try to match some simple smax or umax patterns.
   auto *ICI = dyn_cast<ICmpInst>(Cond);
   if (!ICI)

Removed: llvm/trunk/test/Analysis/ScalarEvolution/constant_condition.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Analysis/ScalarEvolution/constant_condition.ll?rev=249527&view=auto
==============================================================================
--- llvm/trunk/test/Analysis/ScalarEvolution/constant_condition.ll (original)
+++ llvm/trunk/test/Analysis/ScalarEvolution/constant_condition.ll (removed)
@@ -1,51 +0,0 @@
-; RUN: opt -analyze -scalar-evolution < %s | FileCheck %s
-
-define i32 @branch_true(i32 %x, i32 %y) {
-; CHECK-LABEL: Classifying expressions for: @branch_true
- entry:
-  br i1 true, label %add, label %merge
-
- add:
-  %sum = add i32 %x, %y
-  br label %merge
-
- merge:
-  %v = phi i32 [ %sum, %add ], [ %x, %entry ]
-; CHECK:  %v = phi i32 [ %sum, %add ], [ %x, %entry ]
-; CHECK-NEXT:  -->  (%x + %y) U: full-set S: full-set
-  ret i32 %v
-}
-
-define i32 @branch_false(i32 %x, i32 %y) {
-; CHECK-LABEL: Classifying expressions for: @branch_false
- entry:
-  br i1 false, label %add, label %merge
-
- add:
-  %sum = add i32 %x, %y
-  br label %merge
-
- merge:
-  %v = phi i32 [ %sum, %add ], [ %x, %entry ]
-; CHECK:  %v = phi i32 [ %sum, %add ], [ %x, %entry ]
-; CHECK-NEXT:  -->  %x U: full-set S: full-set
-  ret i32 %v
-}
-
-define i32 @select_true(i32 %x, i32 %y) {
-; CHECK-LABEL: Classifying expressions for: @select_true
- entry:
- %v = select i1 true, i32 %x, i32 %y
-; CHECK:  %v = select i1 true, i32 %x, i32 %y
-; CHECK-NEXT:  -->  %x U: full-set S: full-set
-  ret i32 %v
-}
-
-define i32 @select_false(i32 %x, i32 %y) {
-; CHECK-LABEL: Classifying expressions for: @select_false
- entry:
- %v = select i1 false, i32 %x, i32 %y
-; CHECK:  %v = select i1 false, i32 %x, i32 %y
-; CHECK-NEXT:  -->  %y U: full-set S: full-set
-  ret i32 %v
-}




More information about the llvm-commits mailing list