Vectorization and IR detail

I want to know what happens on LLVM IR during Loop Vectorization and SLP Vectorization.
There are some references but don’t explain matter with IR detail.
For doing this LLVM should use specific instructions like Vector Type instructions and extractelement and insertelement and etc.
Thanks if you help me.

Could you elaborate what your goal is? Or are you working on a school assignment? Depending on your angle, different resources might be interesting to you.

I am working in a compiler as a serious project (not for school) and learn from LLVM or use it in future.
Now the only thing that is not clear for me is designing an IR suitable for Vectorization Optimization Passes.
If this become clear for me I continue to coding.

Have you watched 2013 LLVM Developers’ Meeting: “Vectorization in LLVM” - YouTube ?

1 Like

VPlan and the Youtube vides works on its IR at higher abstraction.

For the more general loop optimisations, I found:
Automatic selection of high-order transformations in the IBM XL FORTRAN compilers

I am studying them thanks