[PATCH] Loop Rerolling Pass

Hal Finkel hfinkel at anl.gov
Tue Oct 15 14:11:01 PDT 2013


----- Original Message -----
> 
> On 15 October 2013 21:17, Nadav Rotem < nrotem at apple.com > wrote:
> 
> 
> 
> 
> Hi Hal,
> 
> Thanks for working on this. The motivation for loop-rolling is clear
> and I agree that it has the potential for reducing code size and
> increasing performance.
> 
> 
> Hi Hal,
> 
> 
> Yes, I agree with this, too.
> 
> 
> 
> I have another generic question, I could see that you're inspecting
> the types, ranges and variables directly, and some of the work the
> loop vectorizer uses SCEV for (like induction ranges, exit counts,
> etc). Have you considered using SCEV, too?

I made use of SCEV everywhere that I could (I think). SCEV is used to analyze the induction variables, and then at the end to help with the rewriting. I don't think that I can use SCEV everywhere, however. For one thing, I need to check for equivalence of instructions, with certain substitutions, for instructions (like function calls) that SCEV does not interpret.

Thanks,
Hal

> 
> 
> cheers,
> --renato

-- 
Hal Finkel
Assistant Computational Scientist
Leadership Computing Facility
Argonne National Laboratory



More information about the llvm-commits mailing list