Manifest expression
A manifest expression is a programming language construct that a compiler can analyse to deduce which values it can take without having to execute the program. This information can enable compiler optimizations, in particular loop nest optimization, and parallelization through data dependency analysis. An expression is called manifest if it is computed only from outer loop counters and constants (a more formal definition is given below).
When all control flow for a loop or condition is regulated by manifest expressions, it is called a manifest loop resp. condition.
Most practical applications of manifest expressions also require the expression to be integral and affine (or stepwise affine) in its variables.
Definition: A manifest expression is a compile time computable function which depends only on
- compile-time constants,
- manifest variable references, and
- loop counters of loops surrounding the expression.
- a single, unambiguous definition of its value,
- which is itself a manifest expression.
(From Wikipedia)