[LLVMdev] Polly and non affine branches in ScoPs

Marcello Maggioni hayarms at gmail.com
Wed Feb 8 11:08:19 PST 2012

Hi, I'm using Polly to analyze memory access patterns for an
university project and I'm trying to get polly working on some loops
that polly marks as "containing non affine branches" .

>From what I understand polly skips Scops that contain these branches
(which comprises something like "if (i % 2 == 0)" where i is a loop
varying variable) because these kind of branches can make , in
practice , non affine the accesses to the memory operands even if the
array subscript expression is affine itself, but I need a much more
"flow-insensitive" and less precise evaluation of the memory access
patterns , so, I would like polly to continue it's analysis on the
memory accesses of the scops even if these branches are present,
because even if the analysis gets wrong thanks to these branches it is
not that big of a deal for my project.

Can't this feature be implemented like the one that ignores the non
affine memory subscripts in ScoPs? To implement this would be needed a
change in TempScop and ScopInfo or a change only in the code that
verifies the branches in ScopDetection would be enough?



More information about the llvm-dev mailing list