diff options
Diffstat (limited to 'polly/lib/Analysis/ScopDetection.cpp')
| -rw-r--r-- | polly/lib/Analysis/ScopDetection.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/polly/lib/Analysis/ScopDetection.cpp b/polly/lib/Analysis/ScopDetection.cpp index 25732b7cbae..ebe70ef6912 100644 --- a/polly/lib/Analysis/ScopDetection.cpp +++ b/polly/lib/Analysis/ScopDetection.cpp @@ -913,7 +913,9 @@ bool ScopDetection::hasValidArraySizes(DetectionContext &Context, Value *BaseValue = BasePointer->getValue(); Region &CurRegion = Context.CurRegion; for (const SCEV *DelinearizedSize : Sizes) { - if (!isAffine(DelinearizedSize, Scope, Context)) { + // Don't pass down the scope to isAfffine; array dimensions must be + // invariant across the entire scop. + if (!isAffine(DelinearizedSize, nullptr, Context)) { Sizes.clear(); break; } |

