C++ links: compilers - optimization - Induction Variables & Scalar Evolution (SCEV)
See also:
- How LLVM optimizes power sums
- 2019; Krister Walfridsson
- https://kristerw.blogspot.com/2019/04/how-llvm-optimizes-geometric-sums.html
- An excellent post on scalar evolution (includes links to the relevant papers at the end of the blog post)
- CS 6120 Course Blog
- 2019; Cornell CS 6120
- https://www.cs.cornell.edu/courses/cs6120/2019fa/blog/
- Induction Variable Optimizations - https://www.cs.cornell.edu/courses/cs6120/2019fa/blog/ive/
- Loop Invariant Code Motion and Loop Reduction for Bril (also discusses induction variable analysis) - https://www.cs.cornell.edu/courses/cs6120/2019fa/blog/loop-reduction/
- Strength Reduction Pass in LLVM (note the part Finding Induction Variables) - https://www.cs.cornell.edu/courses/cs6120/2019fa/blog/strength-reduction-pass-in-llvm/
- Loop-Level Automatic Vectorization (as an example of making use of induction variable analysis) - https://www.cs.cornell.edu/courses/cs6120/2019fa/blog/autovectoring/
- LLVM Loop Autovectorization (another example) - https://www.cs.cornell.edu/courses/cs6120/2019fa/blog/llvm-autovec/
- FPL: Fast Presburger Arithmetic through Transprecision
- OOPSLA 2021; Arjun Pitchanathan, Christian Ulmann, Michel Weber, Torsten Hoefler, Tobias Grosser
- https://doi.org/10.1145/3485539
- https://grosser.science/FPL/
- Integer Set Library (ISL) - A Primer
- 2025; Jeremy Kun
- https://www.jeremykun.com/2025/10/19/isl-a-primer/
- isl, the Integer Set Library - https://libisl.sourceforge.io/
- Scalar Evolution (SCEV) Education
- LLVM Loop Optimization Working Group Dec 4, 2019; Philip Reames
- https://www.youtube.com/watch?v=y07BE1og4VI
- Scalar Evolution - Demystified
- 2018 EuroLLVM Developers' Meeting; Javed Absar
- https://www.youtube.com/watch?v=AmjliNp0_00
- ScalarEvolution and Loop Optimization