[LLVMdev] [Polly] Compile-time and Execution-time analysis for the SCEV canonicalization

Sebastian Pop spop at codeaurora.org
Thu Sep 26 13:16:59 PDT 2013

Tobias Grosser wrote:
> On 09/17/2013 04:12 AM, Star Tan wrote:
> >Now, we come to more evaluations on
> Hi Star Tan,
> thanks for this very extensive analysis. The results look very
> interesting. As you found out, just removing some canonicalization
> passes will reduce compile time, but this reduction may in large
> part being due to Polly not being able to optimise certain pieces of
> code.
> Instead of removing canonicalization passes, I believe we may want
> to move Polly to a later place in the pass manager. Possibly at the
> beginning of the loop optimizer right before
> PM.add(createLoopRotatePass());
> We would then only need a very low number of canonicalization passes
> (possibly zero) and instead would put a couple of cleanup passes
> right
> after Polly. What do you think?

We experimented with moving Polly down the pass pipeline: when moving Polly past
CSE, PRE and other scalar opts, Polly stops recognizing a number of loops.

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

More information about the llvm-dev mailing list