[LLVMdev] Problem with LoopDependenceAnalysis

Duncan Sands baldrick at free.fr
Thu Mar 15 01:54:50 PDT 2012


Hi, did you do this on optimized IR?  These kind of analyses only do a decent
job if at least a basic set of optimizations has been applied.

Ciao, Duncan.

> I am using LLVM for implementing LoopFission pass.
> I am using LoopPass.
> I know that for checking circular dependency in loop I have to use
> LoopDependenceAnalysis
>
> This is what i want to do.
>          for(int i = 0; i< n ; i++){
>
> s1 :                 a[i] = a[i] + x[i];
> s2 :                 x[i] = x[i+1] + i*2 ;
>          }
>
> /**there is no dependence from s2 to s1/
> so after distribution(it should be) :
>
>          for(int i = 0; i<  n ; i++)
> s1:                a[i] = a[i] + x[i];
>
>          for(int i = 0; i<  n ; i++)
> s2:                x[i] = x[i+1] + i*2 ;
>
>
> but in llvm i couldn't able to find there is no dependency from s2 to s1.
>
> LoopDependenceAnalyis always gives there is a dependency from every load instructions to every store instructions.
>
>
> is there any other alternative to LoopDependencyAnalysis ?
> thank you
>
> ......
> Regards,
> Shanmukha Rao
> Compilers lab,
> Indian Institute of Science, Bangalore.
>
>
> _______________________________________________
> 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