[PATCH] [Polly] Allow multidimensional accesses in the IslExprBuilder.

Tobias Grosser tobias at grosser.es
Fri Oct 3 22:20:13 PDT 2014


Very nice (both the itself patch and the fact that it exists)

One miner stylistic comment. Feel free to adapt it or not.

================
Comment at: lib/Analysis/ScopDetection.cpp:210
@@ -209,3 +205,1 @@
-  }
-
   if (AllowNonAffine) {
----------------
Nice!!

================
Comment at: lib/CodeGen/IslCodeGeneration.cpp:61
@@ -60,2 +60,3 @@
       : Builder(Builder), Annotator(Annotator),
-        ExprBuilder(S, Builder, IDToValue), P(P), LI(LI), SE(SE), DT(DT) {}
+        Rewriter(*(new SCEVExpander(SE, "polly"))),
+        ExprBuilder(S, Builder, IDToValue, Rewriter), P(P), LI(LI), SE(SE),
----------------
Instead of using new * here, could we change the type to "SCEVExpander Rewriter" and
ititialize it with "Rewriter(SE, "polly"))"? This would remove the need for the delete &Rewriter?

================
Comment at: lib/CodeGen/IslExprBuilder.cpp:106
@@ -105,3 +104,1 @@
-         "Multidimensional access functions are not supported yet");
-
   Value *Base, *IndexOp, *Access;
----------------
Nice!

http://reviews.llvm.org/D5614






More information about the llvm-commits mailing list