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

Sebastian Pop spop at codeaurora.org
Fri May 24 10:05:04 PDT 2013


Tobias Grosser wrote:
> 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.

I think I have a solution, although I don't know if you will like it: so let's
discuss my solution ;-)

I would like to transform the independent blocks pass into an iterative pass
(until no more changes happens).  The second time we will call independent
blocks we will get that the phi node is not anymore SCEV-analyz-able, and thus
we will put on the stack more things.  Eventually, nothing will change in a
third round of independent blocks pass, and we will have a representation of
SCEVs identical to the verifier.

In practice the cost of the iterative independent blocks pass would be twice the
cost of the current independent pass, given that ther are not that many examples
in which this corner case ICEs (these need 3+ runs of independent blocks pass).

I am definitely with you on removing the independent blocks pass: let me think a
bit more through it.

Sebastian
-- 
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum,
hosted by The Linux Foundation



More information about the llvm-commits mailing list