[LLVMdev] Modifying LoopUnrollingPass
Michael Zolotukhin
mzolotukhin at apple.com
Sat May 2 11:41:31 PDT 2015
Hi Yaduveer,
As far as I remember, unroller in LoopVectorizer pass does what you want to achieve (look for a message "LV: Trying to at least unroll the loops.” to locate this in the code).
Michael
> On May 2, 2015, at 9:00 AM, yaduveer singh <yaduveer99 at gmail.com> wrote:
>
> Hi Zhoulai,
>
> I am trying to modify "LoopUnrollPass" in llvm which produces multiple
> copies of loop equal to the loop unroll factor.Currently, using multicore
> architecture, say 3 for example and the execution goes like:
>
> for 3 cores if there are 9 iterations of loop
> core instruction
> 1 0,3,6
> 2 1,4,7
> 3 2,5,8
>
> But I want to to modify such that it can execute in following way:
>
> core instruction
> 1 0,1,2
> 2 3,4,5
> 3 6,7,8
>
> I am not able to get where to modify for this. I tried creating a sample
> pass using original LoopUnrollPass code and run "make", I received
> following error:
>
> loopunrollp.cpp:210:1: error: ‘void
> llvm::initializeLoopUnrollpPass(llvm::PassRegistry&)’ should have been
> declared inside ‘llvm’
> /bin/rm: cannot remove
> `/home/yaduveer/RP/LLVM/llvm/lib/Transforms/loopunrollp/Debug+Asserts/loopunrollp.d.tmp':
> No such file or directory
>
>
> Please help
>
> Thanks,
> Yaduveer
>
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
More information about the llvm-dev
mailing list