The loop transformation techniques include:
loop interchange and permutation
absence of loop-carried memory dependency with the IVDEP directive
runtime data dependencies checking (Itanium®-based systems only)
The loop transformations listed above are supported by data dependence. The loop transformation techniques also include:
induction variable elimination
and dead code elimination.
In addition to the loop transformations listed for both IA-32 and Itanium® architectures above, the Itanium architecture enables implementation of the collapsing techniques.