[polly] r302987 - [Simplify] Remove identical write removal. NFC.

Michael Kruse via llvm-commits llvm-commits at lists.llvm.org
Sat May 13 05:20:58 PDT 2017


Author: meinersbur
Date: Sat May 13 07:20:57 2017
New Revision: 302987

URL: http://llvm.org/viewvc/llvm-project?rev=302987&view=rev
Log:
[Simplify] Remove identical write removal. NFC.

Removal of overwritten writes currently encompasses all the cases
of the identical write removal.

There is an observable behavioral change in that the last, instead
of the first, MemoryAccess is kept. This should not affect the
generated code, however.

Differential Revision: https://reviews.llvm.org/D33143

Added:
    polly/trunk/test/Simplify/overwritten_3phi.ll
      - copied, changed from r302986, polly/trunk/test/Simplify/identical_3phi.ll
    polly/trunk/test/Simplify/overwritten_3phi___%for---%return.jscop
      - copied, changed from r302986, polly/trunk/test/Simplify/identical_3phi___%for---%return.jscop
    polly/trunk/test/Simplify/overwritten_3phi___%for---%return.jscop.transformed
      - copied, changed from r302986, polly/trunk/test/Simplify/identical_3phi___%for---%return.jscop.transformed
    polly/trunk/test/Simplify/overwritten_scalar.ll
      - copied, changed from r302986, polly/trunk/test/Simplify/identical.ll
    polly/trunk/test/Simplify/overwritten_scalar___%for---%return.jscop
      - copied, changed from r302986, polly/trunk/test/Simplify/identical___%for---%return.jscop
    polly/trunk/test/Simplify/overwritten_scalar___%for---%return.jscop.transformed
      - copied, changed from r302986, polly/trunk/test/Simplify/identical___%for---%return.jscop.transformed
Removed:
    polly/trunk/test/Simplify/identical.ll
    polly/trunk/test/Simplify/identical_3phi.ll
    polly/trunk/test/Simplify/identical_3phi___%for---%return.jscop
    polly/trunk/test/Simplify/identical_3phi___%for---%return.jscop.transformed
    polly/trunk/test/Simplify/identical___%for---%return.jscop
    polly/trunk/test/Simplify/identical___%for---%return.jscop.transformed
Modified:
    polly/trunk/lib/Transform/Simplify.cpp

Modified: polly/trunk/lib/Transform/Simplify.cpp
URL: http://llvm.org/viewvc/llvm-project/polly/trunk/lib/Transform/Simplify.cpp?rev=302987&r1=302986&r2=302987&view=diff
==============================================================================
--- polly/trunk/lib/Transform/Simplify.cpp (original)
+++ polly/trunk/lib/Transform/Simplify.cpp Sat May 13 07:20:57 2017
@@ -31,8 +31,6 @@ STATISTIC(PairUnequalAccRels, "Number of
                               "of different access relations");
 STATISTIC(InBetweenStore, "Number of Load-Store pairs NOT removed because "
                           "there is another store between them");
-STATISTIC(TotalIdenticalWritesRemoved,
-          "Number of double writes removed in any SCoP");
 STATISTIC(TotalOverwritesRemoved, "Number of removed overwritten writes");
 STATISTIC(TotalRedundantWritesRemoved,
           "Number of writes of same value removed in any SCoP");
@@ -106,9 +104,6 @@ private:
   /// The last/current SCoP that is/has been processed.
   Scop *S;
 
-  /// Number of double writes removed from this SCoP.
-  int IdenticalWritesRemoved = 0;
-
   /// Number of writes that are overwritten anyway.
   int OverwritesRemoved = 0;
 
@@ -120,8 +115,8 @@ private:
 
   /// Return whether at least one simplification has been applied.
   bool isModified() const {
-    return IdenticalWritesRemoved > 0 || OverwritesRemoved > 0 ||
-           RedundantWritesRemoved > 0 || StmtsRemoved > 0;
+    return OverwritesRemoved > 0 || RedundantWritesRemoved > 0 ||
+           StmtsRemoved > 0;
   }
 
   MemoryAccess *getReadAccessForValue(ScopStmt *Stmt, llvm::Value *Val) {
@@ -195,75 +190,6 @@ private:
     return nullptr;
   }
 
-  /// If there are two writes in the same statement that write the same value to
-  /// the same location, remove one of them.
-  ///
-  /// This currently handles only implicit writes (writes which logically occur
-  /// at the end of a statement when all StoreInst and LoadInst have been
-  /// executed), to avoid interference with other memory accesses.
-  ///
-  /// Two implicit writes have no defined order. It can be produced by DeLICM
-  /// when it determined that both write the same value.
-  void removeIdenticalWrites() {
-    for (auto &Stmt : *S) {
-      // Delay actual removal to not invalidate iterators.
-      SmallPtrSet<MemoryAccess *, 4> StoresToRemove;
-
-      auto Domain = give(Stmt.getDomain());
-
-      // TODO: This has quadratic runtime. Accesses could be grouped by
-      // getAccessValue() to avoid.
-      for (auto *WA1 : Stmt) {
-        if (!WA1->isMustWrite())
-          continue;
-        if (!WA1->isOriginalScalarKind())
-          continue;
-        if (StoresToRemove.count(WA1))
-          continue;
-
-        auto *WrittenScalar1 = getWrittenScalar(WA1);
-        if (!WrittenScalar1)
-          continue;
-
-        for (auto *WA2 : Stmt) {
-          if (WA1 == WA2)
-            continue;
-          if (!WA2->isMustWrite())
-            continue;
-          if (!WA2->isOriginalScalarKind())
-            continue;
-          if (StoresToRemove.count(WA2))
-            continue;
-
-          auto *WrittenScalar2 = getWrittenScalar(WA2);
-          if (WrittenScalar1 != WrittenScalar2)
-            continue;
-
-          auto AccRel1 = give(isl_map_intersect_domain(WA1->getAccessRelation(),
-                                                       Domain.copy()));
-          auto AccRel2 = give(isl_map_intersect_domain(WA2->getAccessRelation(),
-                                                       Domain.copy()));
-          if (isl_map_is_equal(AccRel1.keep(), AccRel2.keep()) != isl_bool_true)
-            continue;
-
-          DEBUG(dbgs() << "Remove identical writes:\n");
-          DEBUG(dbgs() << "  First write  (kept)   : " << WA1 << '\n');
-          DEBUG(dbgs() << "  Second write (removed): " << WA2 << '\n');
-          StoresToRemove.insert(WA2);
-        }
-      }
-
-      for (auto *WA : StoresToRemove) {
-        auto *Stmt = WA->getStatement();
-
-        Stmt->removeSingleMemoryAccess(WA);
-
-        IdenticalWritesRemoved++;
-        TotalIdenticalWritesRemoved++;
-      }
-    }
-  }
-
   /// Remove writes that are overwritten unconditionally later in the same
   /// statement.
   ///
@@ -408,8 +334,6 @@ private:
   /// Print simplification statistics to @p OS.
   void printStatistics(llvm::raw_ostream &OS, int Indent = 0) const {
     OS.indent(Indent) << "Statistics {\n";
-    OS.indent(Indent + 4) << "Identical writes removed: "
-                          << IdenticalWritesRemoved << '\n';
     OS.indent(Indent + 4) << "Overwrites removed: " << OverwritesRemoved
                           << '\n';
     OS.indent(Indent + 4) << "Redundant writes removed: "
@@ -446,9 +370,6 @@ public:
     this->S = &S;
     ScopsProcessed++;
 
-    DEBUG(dbgs() << "Removing identical writes...\n");
-    removeIdenticalWrites();
-
     DEBUG(dbgs() << "Removing overwrites...\n");
     removeOverwrites();
 
@@ -481,7 +402,6 @@ public:
   virtual void releaseMemory() override {
     S = nullptr;
 
-    IdenticalWritesRemoved = 0;
     OverwritesRemoved = 0;
     RedundantWritesRemoved = 0;
     StmtsRemoved = 0;

Removed: polly/trunk/test/Simplify/identical.ll
URL: http://llvm.org/viewvc/llvm-project/polly/trunk/test/Simplify/identical.ll?rev=302986&view=auto
==============================================================================
--- polly/trunk/test/Simplify/identical.ll (original)
+++ polly/trunk/test/Simplify/identical.ll (removed)
@@ -1,56 +0,0 @@
-; RUN: opt %loadPolly -polly-import-jscop -polly-import-jscop-dir=%S -polly-import-jscop-postfix=transformed -polly-simplify -analyze < %s | FileCheck -match-full-lines %s
-;
-; Remove identical writes
-; (two stores in the same statement that write the same value to the same
-; destination)
-;
-; for (int j = 0; j < n; j += 1) {
-; body:
-;   val = 21.0 + 21.0;
-;   A[1] = val;
-;   A[1] = val;
-;
-; user:
-;   A[0] = A[1];
-; }
-;
-define void @identical(i32 %n, double* noalias nonnull %A) {
-entry:
-  br label %for
-
-for:
-  %j = phi i32 [0, %entry], [%j.inc, %inc]
-  %j.cmp = icmp slt i32 %j, %n
-  br i1 %j.cmp, label %body, label %exit
-
-    body:
-      %val = fadd double 21.0, 21.0
-      br label %user
-
-    user:
-      %phi = phi double [%val, %body]
-      %add = fadd double %val, %phi
-      store double %add, double* %A
-      br label %inc
-
-inc:
-  %j.inc = add nuw nsw i32 %j, 1
-  br label %for
-
-exit:
-  br label %return
-
-return:
-  ret void
-}
-
-
-; CHECK: Statistics {
-; CHECK:     Identical writes removed: 1
-; CHECK: }
-
-; CHECK:      Stmt_body
-; CHECK-NEXT:     MustWriteAccess :=  [Reduction Type: NONE] [Scalar: 1]
-; CHECK-NEXT:            [n] -> { Stmt_body[i0] -> MemRef_phi__phi[] };
-; CHECK-NEXT:       new: [n] -> { Stmt_body[i0] -> MemRef_A[1] };
-; CHECK-NEXT: Stmt_user

Removed: polly/trunk/test/Simplify/identical_3phi.ll
URL: http://llvm.org/viewvc/llvm-project/polly/trunk/test/Simplify/identical_3phi.ll?rev=302986&view=auto
==============================================================================
--- polly/trunk/test/Simplify/identical_3phi.ll (original)
+++ polly/trunk/test/Simplify/identical_3phi.ll (removed)
@@ -1,61 +0,0 @@
-; RUN: opt %loadPolly -polly-import-jscop -polly-import-jscop-dir=%S -polly-import-jscop-postfix=transformed -polly-simplify -analyze < %s | FileCheck -match-full-lines %s
-;
-; Remove identical writes
-; (two stores in the same statement that write the same value to the same
-; destination)
-;
-; for (int j = 0; j < n; j += 1) {
-; body:
-;   val = 21.0 + 21.0;
-;   A[1] = val;
-;   A[1] = val;
-;   A[1] = val;
-;
-; user:
-;   A[0] = A[1];
-; }
-;
-define void @identical_3phi(i32 %n, double* noalias nonnull %A) {
-entry:
-  br label %for
-
-for:
-  %j = phi i32 [0, %entry], [%j.inc, %inc]
-  %j.cmp = icmp slt i32 %j, %n
-  br i1 %j.cmp, label %body, label %exit
-
-    body:
-      %val = fadd double 21.0, 21.0
-      br label %user
-
-    user:
-      %phi1 = phi double [%val, %body]
-      %phi2 = phi double [%val, %body]
-      %phi3 = phi double [%val, %body]
-      %add1 = fadd double %phi1, %phi2
-      %add2 = fadd double %add1, %phi3
-      store double %add2, double* %A
-      br label %inc
-
-inc:
-  %j.inc = add nuw nsw i32 %j, 1
-  br label %for
-
-exit:
-  br label %return
-
-return:
-  ret void
-}
-
-
-
-; CHECK: Statistics {
-; CHECK:     Identical writes removed: 2
-; CHECK: }
-
-; CHECK:      Stmt_body
-; CHECK-NEXT:         MustWriteAccess :=  [Reduction Type: NONE] [Scalar: 1]
-; CHECK-NEXT:             [n] -> { Stmt_body[i0] -> MemRef_phi1__phi[] };
-; CHECK-NEXT:        new: [n] -> { Stmt_body[i0] -> MemRef_A[1] };
-; CHECK-NEXT: Stmt_user

Removed: polly/trunk/test/Simplify/identical_3phi___%for---%return.jscop
URL: http://llvm.org/viewvc/llvm-project/polly/trunk/test/Simplify/identical_3phi___%25for---%25return.jscop?rev=302986&view=auto
==============================================================================
--- polly/trunk/test/Simplify/identical_3phi___%for---%return.jscop (original)
+++ polly/trunk/test/Simplify/identical_3phi___%for---%return.jscop (removed)
@@ -1,55 +0,0 @@
-{
-   "arrays" : [
-      {
-         "name" : "MemRef_A",
-         "sizes" : [ "*" ],
-         "type" : "double"
-      }
-   ],
-   "context" : "[n] -> {  : -2147483648 <= n <= 2147483647 }",
-   "name" : "%for---%return",
-   "statements" : [
-      {
-         "accesses" : [
-            {
-               "kind" : "write",
-               "relation" : "[n] -> { Stmt_body[i0] -> MemRef_phi1__phi[] }"
-            },
-            {
-               "kind" : "write",
-               "relation" : "[n] -> { Stmt_body[i0] -> MemRef_phi2__phi[] }"
-            },
-            {
-               "kind" : "write",
-               "relation" : "[n] -> { Stmt_body[i0] -> MemRef_phi3__phi[] }"
-            }
-         ],
-         "domain" : "[n] -> { Stmt_body[i0] : 0 <= i0 < n }",
-         "name" : "Stmt_body",
-         "schedule" : "[n] -> { Stmt_body[i0] -> [i0, 0] }"
-      },
-      {
-         "accesses" : [
-            {
-               "kind" : "read",
-               "relation" : "[n] -> { Stmt_user[i0] -> MemRef_phi1__phi[] }"
-            },
-            {
-               "kind" : "read",
-               "relation" : "[n] -> { Stmt_user[i0] -> MemRef_phi2__phi[] }"
-            },
-            {
-               "kind" : "read",
-               "relation" : "[n] -> { Stmt_user[i0] -> MemRef_phi3__phi[] }"
-            },
-            {
-               "kind" : "write",
-               "relation" : "[n] -> { Stmt_user[i0] -> MemRef_A[0] }"
-            }
-         ],
-         "domain" : "[n] -> { Stmt_user[i0] : 0 <= i0 < n }",
-         "name" : "Stmt_user",
-         "schedule" : "[n] -> { Stmt_user[i0] -> [i0, 1] }"
-      }
-   ]
-}

Removed: polly/trunk/test/Simplify/identical_3phi___%for---%return.jscop.transformed
URL: http://llvm.org/viewvc/llvm-project/polly/trunk/test/Simplify/identical_3phi___%25for---%25return.jscop.transformed?rev=302986&view=auto
==============================================================================
--- polly/trunk/test/Simplify/identical_3phi___%for---%return.jscop.transformed (original)
+++ polly/trunk/test/Simplify/identical_3phi___%for---%return.jscop.transformed (removed)
@@ -1,55 +0,0 @@
-{
-   "arrays" : [
-      {
-         "name" : "MemRef_A",
-         "sizes" : [ "*" ],
-         "type" : "double"
-      }
-   ],
-   "context" : "[n] -> {  : -2147483648 <= n <= 2147483647 }",
-   "name" : "%for---%return",
-   "statements" : [
-      {
-         "accesses" : [
-            {
-               "kind" : "write",
-               "relation" : "[n] -> { Stmt_body[i0] -> MemRef_A[1] }"
-            },
-            {
-               "kind" : "write",
-               "relation" : "[n] -> { Stmt_body[i0] -> MemRef_A[1] }"
-            },
-            {
-               "kind" : "write",
-               "relation" : "[n] -> { Stmt_body[i0] -> MemRef_A[1] }"
-            }
-         ],
-         "domain" : "[n] -> { Stmt_body[i0] : 0 <= i0 < n }",
-         "name" : "Stmt_body",
-         "schedule" : "[n] -> { Stmt_body[i0] -> [i0, 0] }"
-      },
-      {
-         "accesses" : [
-            {
-               "kind" : "read",
-               "relation" : "[n] -> { Stmt_user[i0] -> MemRef_A[1] }"
-            },
-            {
-               "kind" : "read",
-               "relation" : "[n] -> { Stmt_user[i0] -> MemRef_A[1] }"
-            },
-            {
-               "kind" : "read",
-               "relation" : "[n] -> { Stmt_user[i0] -> MemRef_A[1] }"
-            },
-            {
-               "kind" : "write",
-               "relation" : "[n] -> { Stmt_user[i0] -> MemRef_A[0] }"
-            }
-         ],
-         "domain" : "[n] -> { Stmt_user[i0] : 0 <= i0 < n }",
-         "name" : "Stmt_user",
-         "schedule" : "[n] -> { Stmt_user[i0] -> [i0, 1] }"
-      }
-   ]
-}

Removed: polly/trunk/test/Simplify/identical___%for---%return.jscop
URL: http://llvm.org/viewvc/llvm-project/polly/trunk/test/Simplify/identical___%25for---%25return.jscop?rev=302986&view=auto
==============================================================================
--- polly/trunk/test/Simplify/identical___%for---%return.jscop (original)
+++ polly/trunk/test/Simplify/identical___%for---%return.jscop (removed)
@@ -1,47 +0,0 @@
-{
-   "arrays" : [
-      {
-         "name" : "MemRef_A",
-         "sizes" : [ "*" ],
-         "type" : "double"
-      }
-   ],
-   "context" : "[n] -> {  : -2147483648 <= n <= 2147483647 }",
-   "name" : "%for---%return",
-   "statements" : [
-      {
-         "accesses" : [
-            {
-               "kind" : "write",
-               "relation" : "[n] -> { Stmt_body[i0] -> MemRef_phi__phi[] }"
-            },
-            {
-               "kind" : "write",
-               "relation" : "[n] -> { Stmt_body[i0] -> MemRef_val[] }"
-            }
-         ],
-         "domain" : "[n] -> { Stmt_body[i0] : 0 <= i0 < n }",
-         "name" : "Stmt_body",
-         "schedule" : "[n] -> { Stmt_body[i0] -> [i0, 0] }"
-      },
-      {
-         "accesses" : [
-            {
-               "kind" : "read",
-               "relation" : "[n] -> { Stmt_user[i0] -> MemRef_phi__phi[] }"
-            },
-            {
-               "kind" : "read",
-               "relation" : "[n] -> { Stmt_user[i0] -> MemRef_val[] }"
-            },
-            {
-               "kind" : "write",
-               "relation" : "[n] -> { Stmt_user[i0] -> MemRef_A[0] }"
-            }
-         ],
-         "domain" : "[n] -> { Stmt_user[i0] : 0 <= i0 < n }",
-         "name" : "Stmt_user",
-         "schedule" : "[n] -> { Stmt_user[i0] -> [i0, 1] }"
-      }
-   ]
-}

Removed: polly/trunk/test/Simplify/identical___%for---%return.jscop.transformed
URL: http://llvm.org/viewvc/llvm-project/polly/trunk/test/Simplify/identical___%25for---%25return.jscop.transformed?rev=302986&view=auto
==============================================================================
--- polly/trunk/test/Simplify/identical___%for---%return.jscop.transformed (original)
+++ polly/trunk/test/Simplify/identical___%for---%return.jscop.transformed (removed)
@@ -1,47 +0,0 @@
-{
-   "arrays" : [
-      {
-         "name" : "MemRef_A",
-         "sizes" : [ "*" ],
-         "type" : "double"
-      }
-   ],
-   "context" : "[n] -> {  : -2147483648 <= n <= 2147483647 }",
-   "name" : "%for---%return",
-   "statements" : [
-      {
-         "accesses" : [
-            {
-               "kind" : "write",
-               "relation" : "[n] -> { Stmt_body[i0] -> MemRef_A[1] }"
-            },
-            {
-               "kind" : "write",
-               "relation" : "[n] -> { Stmt_body[i0] -> MemRef_A[1] }"
-            }
-         ],
-         "domain" : "[n] -> { Stmt_body[i0] : 0 <= i0 < n }",
-         "name" : "Stmt_body",
-         "schedule" : "[n] -> { Stmt_body[i0] -> [i0, 0] }"
-      },
-      {
-         "accesses" : [
-            {
-               "kind" : "read",
-               "relation" : "[n] -> { Stmt_user[i0] -> MemRef_A[1] }"
-            },
-            {
-               "kind" : "read",
-               "relation" : "[n] -> { Stmt_user[i0] -> MemRef_A[1] }"
-            },
-            {
-               "kind" : "write",
-               "relation" : "[n] -> { Stmt_user[i0] -> MemRef_A[0] }"
-            }
-         ],
-         "domain" : "[n] -> { Stmt_user[i0] : 0 <= i0 < n }",
-         "name" : "Stmt_user",
-         "schedule" : "[n] -> { Stmt_user[i0] -> [i0, 1] }"
-      }
-   ]
-}

Copied: polly/trunk/test/Simplify/overwritten_3phi.ll (from r302986, polly/trunk/test/Simplify/identical_3phi.ll)
URL: http://llvm.org/viewvc/llvm-project/polly/trunk/test/Simplify/overwritten_3phi.ll?p2=polly/trunk/test/Simplify/overwritten_3phi.ll&p1=polly/trunk/test/Simplify/identical_3phi.ll&r1=302986&r2=302987&rev=302987&view=diff
==============================================================================
--- polly/trunk/test/Simplify/identical_3phi.ll (original)
+++ polly/trunk/test/Simplify/overwritten_3phi.ll Sat May 13 07:20:57 2017
@@ -15,7 +15,7 @@
 ;   A[0] = A[1];
 ; }
 ;
-define void @identical_3phi(i32 %n, double* noalias nonnull %A) {
+define void @overwritten_3phi(i32 %n, double* noalias nonnull %A) {
 entry:
   br label %for
 
@@ -51,11 +51,11 @@ return:
 
 
 ; CHECK: Statistics {
-; CHECK:     Identical writes removed: 2
+; CHECK:     Overwrites removed: 2
 ; CHECK: }
 
 ; CHECK:      Stmt_body
 ; CHECK-NEXT:         MustWriteAccess :=  [Reduction Type: NONE] [Scalar: 1]
-; CHECK-NEXT:             [n] -> { Stmt_body[i0] -> MemRef_phi1__phi[] };
+; CHECK-NEXT:             [n] -> { Stmt_body[i0] -> MemRef_phi3__phi[] };
 ; CHECK-NEXT:        new: [n] -> { Stmt_body[i0] -> MemRef_A[1] };
 ; CHECK-NEXT: Stmt_user

Copied: polly/trunk/test/Simplify/overwritten_3phi___%for---%return.jscop (from r302986, polly/trunk/test/Simplify/identical_3phi___%for---%return.jscop)
URL: http://llvm.org/viewvc/llvm-project/polly/trunk/test/Simplify/overwritten_3phi___%25for---%25return.jscop?p2=polly/trunk/test/Simplify/overwritten_3phi___%25for---%25return.jscop&p1=polly/trunk/test/Simplify/identical_3phi___%25for---%25return.jscop&r1=302986&r2=302987&rev=302987&view=diff
==============================================================================
    (empty)

Copied: polly/trunk/test/Simplify/overwritten_3phi___%for---%return.jscop.transformed (from r302986, polly/trunk/test/Simplify/identical_3phi___%for---%return.jscop.transformed)
URL: http://llvm.org/viewvc/llvm-project/polly/trunk/test/Simplify/overwritten_3phi___%25for---%25return.jscop.transformed?p2=polly/trunk/test/Simplify/overwritten_3phi___%25for---%25return.jscop.transformed&p1=polly/trunk/test/Simplify/identical_3phi___%25for---%25return.jscop.transformed&r1=302986&r2=302987&rev=302987&view=diff
==============================================================================
    (empty)

Copied: polly/trunk/test/Simplify/overwritten_scalar.ll (from r302986, polly/trunk/test/Simplify/identical.ll)
URL: http://llvm.org/viewvc/llvm-project/polly/trunk/test/Simplify/overwritten_scalar.ll?p2=polly/trunk/test/Simplify/overwritten_scalar.ll&p1=polly/trunk/test/Simplify/identical.ll&r1=302986&r2=302987&rev=302987&view=diff
==============================================================================
--- polly/trunk/test/Simplify/identical.ll (original)
+++ polly/trunk/test/Simplify/overwritten_scalar.ll Sat May 13 07:20:57 2017
@@ -14,7 +14,7 @@
 ;   A[0] = A[1];
 ; }
 ;
-define void @identical(i32 %n, double* noalias nonnull %A) {
+define void @overwritten_scalar(i32 %n, double* noalias nonnull %A) {
 entry:
   br label %for
 
@@ -46,11 +46,11 @@ return:
 
 
 ; CHECK: Statistics {
-; CHECK:     Identical writes removed: 1
+; CHECK:     Overwrites removed: 1
 ; CHECK: }
 
 ; CHECK:      Stmt_body
 ; CHECK-NEXT:     MustWriteAccess :=  [Reduction Type: NONE] [Scalar: 1]
-; CHECK-NEXT:            [n] -> { Stmt_body[i0] -> MemRef_phi__phi[] };
+; CHECK-NEXT:            [n] -> { Stmt_body[i0] ->  MemRef_val[] };
 ; CHECK-NEXT:       new: [n] -> { Stmt_body[i0] -> MemRef_A[1] };
 ; CHECK-NEXT: Stmt_user

Copied: polly/trunk/test/Simplify/overwritten_scalar___%for---%return.jscop (from r302986, polly/trunk/test/Simplify/identical___%for---%return.jscop)
URL: http://llvm.org/viewvc/llvm-project/polly/trunk/test/Simplify/overwritten_scalar___%25for---%25return.jscop?p2=polly/trunk/test/Simplify/overwritten_scalar___%25for---%25return.jscop&p1=polly/trunk/test/Simplify/identical___%25for---%25return.jscop&r1=302986&r2=302987&rev=302987&view=diff
==============================================================================
    (empty)

Copied: polly/trunk/test/Simplify/overwritten_scalar___%for---%return.jscop.transformed (from r302986, polly/trunk/test/Simplify/identical___%for---%return.jscop.transformed)
URL: http://llvm.org/viewvc/llvm-project/polly/trunk/test/Simplify/overwritten_scalar___%25for---%25return.jscop.transformed?p2=polly/trunk/test/Simplify/overwritten_scalar___%25for---%25return.jscop.transformed&p1=polly/trunk/test/Simplify/identical___%25for---%25return.jscop.transformed&r1=302986&r2=302987&rev=302987&view=diff
==============================================================================
    (empty)




More information about the llvm-commits mailing list