LLVM description (for example, here says it is a framework for lifelong program analysis and transformation.
What does lifelong mean in this context?
LLVM description (for example, here says it is a framework for lifelong program analysis and transformation.
What does lifelong mean in this context?
"Such lifelong code optimization techniques encompass interprocedural optimizations performed at link-time (to preserve the benefits of separate compilation), machine-dependent optimizations at install time on each system, dynamic optimization at runtime, and profile-guided optimization between runs ('idle time') using profile information collected from the end-user."
This was extracted from the second paragraph of this paper: http://llvm.org/pubs/2004-01-30-CGO-LLVM.pdf
Lifelong in the phrase means the lifetime of the program. So to maximize the efficiency of a program it be analyzed at link-time, run-time, and in between runs as well.
In the paper (on the 5th page) they list out the requirements for lifelong program analysis and transformation: