[polly] ICE with scev-codegen after removal of RegionSimplify

Tobias Grosser tobias at grosser.es
Fri May 24 08:39:38 PDT 2013


On 05/23/2013 03:00 PM, Sebastian Pop wrote:
> Sebastian Pop wrote:
>> I also have noted several
>> new regressions after we removed RegionSimplify. Even in our current testsuite,
>> we have an ICE with scev-codegen on: Isl/CodeGen/20110226-PHI-Node-removed.ll
>
> The ICE also occurs before the patch to remove RegionSimplify if we remove the
> -region-simplify flag from the testcase.  The bug was apparently hidden by the
> fact that regionsimplify would create a block before the entry block of the
> region "<label>:0" to make the region SESE.  Here is the original code:
>
> I'm not yet sure how to fix the problem.  I think it is good to speak about the
> fix before coding something.

Thanks for the analysis. Yes, I agree there does not seem to be good 
solution in the independent blocks pass. Maybe we can use this as a 
motivation to get rid of the independent blocks pass and to generate the 
relevant one-element arrays during code generation.

This is not yet well thought through on my side. Especially I don't know 
yet how to approach this in small steps, but I believe it should 
actually not be too difficult. We would need one patch that models 
scalar dependences in the polyhedral model and a second that introduces 
the allocs/loads/stores if it encounters scalar dependences during code
generation.

What do you think about it?

Tobi




More information about the llvm-commits mailing list