[LoopPred] Selectively disable to preserve test cases
authorPhilip Reames <listmail@philipreames.com>
Wed, 6 Nov 2019 23:16:43 +0000 (15:16 -0800)
committerPhilip Reames <listmail@philipreames.com>
Wed, 6 Nov 2019 23:41:57 +0000 (15:41 -0800)
I'm about to enable the new loop predication transform by default.  It has the effect of completely destroying many read only loops - which happen to be a super common idiom in our test cases.  So as to preserve test coverage of other transforms, disable the new transform where it would cause sharp test coverage regressions.

(This is semantically part of the enabling commit.  It's committed separate to ease revert if the actual flag flip gets reverted.)

12 files changed:
llvm/test/Transforms/IndVarSimplify/eliminate-trunc.ll
llvm/test/Transforms/IndVarSimplify/lftr-dead-ivs.ll
llvm/test/Transforms/IndVarSimplify/lftr-pr20680.ll
llvm/test/Transforms/IndVarSimplify/lftr-reuse.ll
llvm/test/Transforms/IndVarSimplify/lftr.ll
llvm/test/Transforms/IndVarSimplify/loop-invariant-conditions.ll
llvm/test/Transforms/IndVarSimplify/no-iv-rewrite.ll
llvm/test/Transforms/IndVarSimplify/pr24356.ll
llvm/test/Transforms/IndVarSimplify/pr38674.ll
llvm/test/Transforms/IndVarSimplify/pr39673.ll
llvm/test/Transforms/IndVarSimplify/replace-loop-exit-folds.ll
llvm/test/Transforms/IndVarSimplify/sink-from-preheader.ll

index 74e422b..8258445 100644 (file)
@@ -1,5 +1,5 @@
 ; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
-; RUN: opt -indvars -S < %s | FileCheck %s
+; RUN: opt -indvars -S -indvars-predicate-loops=0 < %s | FileCheck %s
 
 target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
 target triple = "x86_64-unknown-linux-gnu"
index 5ef6b4a..0ec469f 100644 (file)
@@ -1,5 +1,5 @@
 ; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
-; RUN: opt -S -indvars < %s | FileCheck %s
+; RUN: opt -S -indvars -indvars-predicate-loops=0 < %s | FileCheck %s
 
 ; Tests in this file are specifically about correctly handling possibly poison
 ; producing flags when converting from one IV to another.  In particular, there
index 6f67662..1bb1383 100644 (file)
@@ -1,5 +1,5 @@
 ; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
-; RUN: opt < %s -indvars -S | FileCheck %s
+; RUN: opt < %s -indvars -S -indvars-predicate-loops=0 | FileCheck %s
 
 ; Provide legal integer types.
 target datalayout = "n8:16:32:64"
index 14ae973..2053d70 100644 (file)
@@ -1,5 +1,5 @@
 ; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
-; RUN: opt < %s -indvars -S | FileCheck %s
+; RUN: opt < %s -indvars -S -indvars-predicate-loops=0 | FileCheck %s
 
 ; Make sure that indvars can perform LFTR without a canonical IV.
 
index b72778b..098f98d 100644 (file)
@@ -1,5 +1,5 @@
 ; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
-; RUN: opt < %s -indvars -dce -S | FileCheck %s
+; RUN: opt < %s -indvars -dce -S -indvars-predicate-loops=0 | FileCheck %s
 
 ; Provide legal integer types.
 target datalayout = "n8:16:32:64"
index 320f0b3..f5b80d3 100644 (file)
@@ -1,4 +1,4 @@
-; RUN: opt -S -indvars %s | FileCheck %s
+; RUN: opt -S -indvars -indvars-predicate-loops=0 %s | FileCheck %s
 target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
 target triple = "x86_64-unknown-linux-gnu"
 
index 7411b16..53c08ec 100644 (file)
@@ -1,4 +1,4 @@
-; RUN: opt < %s -indvars -S | FileCheck %s
+; RUN: opt < %s -indvars -S -indvars-predicate-loops=0  | FileCheck %s
 ;
 ; Make sure that indvars isn't inserting canonical IVs.
 ; This is kinda hard to do until linear function test replacement is removed.
index eac4204..2718a6c 100644 (file)
@@ -1,4 +1,4 @@
-; RUN: opt -S -indvars < %s | FileCheck %s
+; RUN: opt -S -indvars -indvars-predicate-loops=0  < %s | FileCheck %s
 
 target datalayout = "e-m:o-i64:64-f80:128-n8:16:32:64-S128"
 target triple = "x86_64-apple-macosx10.10.0"
index 390a68d..bd4a23d 100644 (file)
@@ -1,5 +1,5 @@
 ; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
-; RUN: opt -S -indvars < %s | FileCheck %s
+; RUN: opt -S -indvars -indvars-predicate-loops=0  < %s | FileCheck %s
 
 ; Check that we don't reuse %zext instead of %inc11 for LCSSA Phi node. Case
 ; with constants SCEV.
index 4c1bfea..7fb90a9 100644 (file)
@@ -1,5 +1,5 @@
 ; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
-; RUN: opt -S -indvars < %s | FileCheck %s
+; RUN: opt -S -indvars -indvars-predicate-loops=0  < %s | FileCheck %s
 
 define i16 @constant() {
 ; CHECK-LABEL: @constant(
index 77bc2b6..9cc911c 100644 (file)
@@ -1,5 +1,5 @@
 ; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
-; RUN: opt -indvars -S < %s | FileCheck %s
+; RUN: opt -indvars -S -indvars-predicate-loops=0 < %s | FileCheck %s
 
 target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64"
 
index 29e8b63..00067fc 100644 (file)
@@ -1,5 +1,5 @@
 ; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
-; RUN: opt < %s -indvars -S | FileCheck %s
+; RUN: opt < %s -indvars -indvars-predicate-loops=0 -S | FileCheck %s
 target datalayout = "e-p:32:32:32-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:32:64-f32:32:32-f64:32:64-v64:64:64-v128:128:128-a0:0:64-f80:128:128"
 target triple = "i386-apple-darwin10.0"