llvm.org GIT mirror llvm / 5d413c4
Merging r325687: ------------------------------------------------------------------------ r325687 | sbaranga | 2018-02-21 16:20:32 +0100 (Wed, 21 Feb 2018) | 8 lines [SCEV] Temporarily disable loop versioning for the purpose of turning SCEVUnknowns of PHIs into AddRecExprs. This feature is now hidden behind the -scev-version-unknown flag. Fixes PR36032 and PR35432. ------------------------------------------------------------------------ git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_60@325773 91177308-0d34-0410-b5e6-96231b3b80d8 Hans Wennborg 1 year, 6 months ago
4 changed file(s) with 11 addition(s) and 4 deletion(s). Raw diff Collapse all Expand all
203203 MaxAddRecSize("scalar-evolution-max-add-rec-size", cl::Hidden,
204204 cl::desc("Max coefficients in AddRec during evolving"),
205205 cl::init(16));
206
207 static cl::opt VersionUnknown(
208 "scev-version-unknown", cl::Hidden,
209 cl::desc("Use predicated scalar evolution to version SCEVUnknowns"),
210 cl::init(false));
206211
207212 //===----------------------------------------------------------------------===//
208213 // SCEV class definitions
1146611471 // couldn't create an AddRec for it, or couldn't add the predicate), we just
1146711472 // return \p Expr.
1146811473 const SCEV *convertToAddRecWithPreds(const SCEVUnknown *Expr) {
11474 if (!VersionUnknown)
11475 return Expr;
1146911476 if (!isa(Expr->getValue()))
1147011477 return Expr;
1147111478 Optional>>
None ; RUN: opt -S -loop-vectorize -force-vector-width=4 -force-vector-interleave=1 < %s 2>&1 | FileCheck %s
0 ; RUN: opt -S -loop-vectorize -force-vector-width=4 -force-vector-interleave=1 -scev-version-unknown < %s 2>&1 | FileCheck %s
11
22 target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
33
None ; RUN: opt -S -loop-vectorize -force-vector-width=4 -force-vector-interleave=1 < %s 2>&1 | FileCheck %s
0 ; RUN: opt -S -loop-vectorize -force-vector-width=4 -force-vector-interleave=1 -scev-version-unknown < %s 2>&1 | FileCheck %s
11 target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
22 @a = common local_unnamed_addr global i32 0, align 4
33 @b = common local_unnamed_addr global i8 0, align 1
None ; RUN: opt -S -loop-vectorize -force-vector-width=8 -force-vector-interleave=1 < %s | FileCheck %s -check-prefix=VF8
1 ; RUN: opt -S -loop-vectorize -force-vector-width=1 -force-vector-interleave=4 < %s | FileCheck %s -check-prefix=VF1
0 ; RUN: opt -S -loop-vectorize -force-vector-width=8 -force-vector-interleave=1 -scev-version-unknown < %s | FileCheck %s -check-prefix=VF8
1 ; RUN: opt -S -loop-vectorize -force-vector-width=1 -force-vector-interleave=4 -scev-version-unknown < %s | FileCheck %s -check-prefix=VF1
22
33 target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
44