[Polly] Gist new access relations using the SCoP context.
authorMichael Kruse <llvm-project@meinersbur.de>
Thu, 21 Jan 2021 22:54:46 +0000 (16:54 -0600)
committerMichael Kruse <llvm-project@meinersbur.de>
Sat, 23 Jan 2021 19:03:48 +0000 (13:03 -0600)
This simplifies the access relations.

polly/lib/Analysis/ScopInfo.cpp
polly/test/DeLICM/reduction_looprotate_hoisted.ll
polly/test/Simplify/coalesce_3partials.ll
polly/test/Simplify/coalesce_disjointelements.ll
polly/test/Simplify/coalesce_overlapping.ll
polly/test/Simplify/coalesce_partial.ll

index 97321c0..9d2dca4 100644 (file)
@@ -1109,6 +1109,7 @@ void MemoryAccess::setNewAccessRelation(isl::map NewAccess) {
          "Access dims must match array dims");
 #endif
 
+  NewAccess = NewAccess.gist_params(getStatement()->getParent()->getContext());
   NewAccess = NewAccess.gist_domain(getStatement()->getDomain());
   NewAccessRelation = NewAccess;
 }
index 47f4495..abfe41b 100644 (file)
@@ -70,7 +70,7 @@ return:
 ; CHECK-NEXT:     Stmt_reduction_preheader
 ; CHECK-NEXT:             MustWriteAccess :=  [Reduction Type: NONE] [Scalar: 1]
 ; CHECK-NEXT:                 [Start] -> { Stmt_reduction_preheader[i0] -> MemRef_phi__phi[] };
-; CHECK-NEXT:            new: [Start] -> { Stmt_reduction_preheader[i0] -> MemRef_A[i0] : Start >= 2147483648 or Start <= 2147483646 };
+; CHECK-NEXT:            new: [Start] -> { Stmt_reduction_preheader[i0] -> MemRef_A[i0] : Start <= 2147483646 };
 ; CHECK-NEXT:     Stmt_reduction_for
 ; CHECK-NEXT:             ReadAccess :=    [Reduction Type: NONE] [Scalar: 1]
 ; CHECK-NEXT:                 [Start] -> { Stmt_reduction_for[i0, i1] -> MemRef_phi__phi[] };
index 7df5908..494743b 100644 (file)
@@ -44,5 +44,5 @@ return:
 ; CHECK-NEXT:     Stmt_body
 ; CHECK-NEXT:             MustWriteAccess :=  [Reduction Type: NONE] [Scalar: 0]
 ; CHECK-NEXT:                 [n] -> { Stmt_body[i0] -> MemRef_A[0] };
-; CHECK-NEXT:            new: [n] -> { Stmt_body[i0] -> MemRef_A[0] : n <= 2147483647 };
+; CHECK-NEXT:            new: [n] -> { Stmt_body[i0] -> MemRef_A[0] };
 ; CHECK-NEXT: }
index 2581be6..2d07f0c 100644 (file)
@@ -49,8 +49,8 @@ return:
 ; CHECK-NEXT:     Stmt_body
 ; CHECK-NEXT:             MustWriteAccess :=  [Reduction Type: NONE] [Scalar: 0]
 ; CHECK-NEXT:                 [n] -> { Stmt_body[i0] -> MemRef_A[0] };
-; CHECK-NEXT:            new: [n] -> { Stmt_body[i0] -> MemRef_A[0] : n <= 2147483647 };
+; CHECK-NEXT:            new: [n] -> { Stmt_body[i0] -> MemRef_A[0] };
 ; CHECK-NEXT:             MustWriteAccess :=  [Reduction Type: NONE] [Scalar: 0]
 ; CHECK-NEXT:                 [n] -> { Stmt_body[i0] -> MemRef_A[1] };
-; CHECK-NEXT:            new: [n] -> { Stmt_body[i0] -> MemRef_A[1] : n <= 2147483647 };
+; CHECK-NEXT:            new: [n] -> { Stmt_body[i0] -> MemRef_A[1] };
 ; CHECK-NEXT: }
index 6df11e7..bcc26f0 100644 (file)
@@ -42,5 +42,5 @@ return:
 ; CHECK-NEXT:     Stmt_body
 ; CHECK-NEXT:             MustWriteAccess :=  [Reduction Type: NONE] [Scalar: 0]
 ; CHECK-NEXT:                 [n] -> { Stmt_body[i0] -> MemRef_A[0] };
-; CHECK-NEXT:            new: [n] -> { Stmt_body[i0] -> MemRef_A[0] : n <= 2147483647 };
+; CHECK-NEXT:            new: [n] -> { Stmt_body[i0] -> MemRef_A[0] };
 ; CHECK-NEXT: }
index e16488a..27ed254 100644 (file)
@@ -42,5 +42,5 @@ return:
 ; CHECK-NEXT:     Stmt_body
 ; CHECK-NEXT:             MustWriteAccess :=  [Reduction Type: NONE] [Scalar: 0]
 ; CHECK-NEXT:                 [n] -> { Stmt_body[i0] -> MemRef_A[0] };
-; CHECK-NEXT:            new: [n] -> { Stmt_body[i0] -> MemRef_A[0] : n <= 2147483647 };
+; CHECK-NEXT:            new: [n] -> { Stmt_body[i0] -> MemRef_A[0] };
 ; CHECK-NEXT: }