[PATCH] [LoopAccesses] Add canAnalyzeLoop

Adam Nemet anemet at apple.com
Mon Feb 16 17:49:43 PST 2015

Comment at: lib/Analysis/LoopAccessAnalysis.cpp:835
@@ +834,3 @@
+  if (!TheLoop->empty()) {
+    emitAnalysis(VectorizationReport() << "loop is not the innermost loop");
+    return false;
hfinkel wrote:
> anemet wrote:
> > hfinkel wrote:
> > > These should say LoopAccessReport(), not VectorizationReport(), right? Or do we have a special subclass for the analysis itslef? If not, maybe we should?
> > > 
> > Yes, these should be LoopAccessReport, thanks for noticing!
> > 
> > Also I just notices that the comment should be adjust not to mention vectorization in this context.
> > 
> > Why do you think that we'd need a subclass for the analysis?  The base class (LoopAccessReport) seems to be sufficient for now.
> The vectorizer's subclass says something like "could not vectorize", should the analysis one say something like, "could not analyze for memory dependencies"? (just a though)
The way I see it is that LoopAccessReport gives you the report on the analysis and then the transform passes extended it with their interpretation of the analysis (e.g. could not vectorize).

For the analysis pass itself I don't think there is much to add but we'll have to see if the reports makes sense on their own...



More information about the llvm-commits mailing list