 |
LANCE includes a number of both classical ("Dragon Book") and advanced IR-level code optimization engines. They are implemented as separate tools and can be combined and iterated by a predefined IR optimization script that can be modified or extended to optimize code quality for a specific class of target machines or to plug in new optimization tools. Currently, the following optimization engines are available:
 |
constant folding |
 |
 |
 |
constant propagation |
 |
 |
copy propagation |
 |
 |
dead code elimination |
 |
 |
common subexpression elimination |
 |
 |
function inlining |
 |
 |
induction variable elimination |
 |
 |
jump optimization |
 |
 |
loop invariant code motion |
 |
 |
SSA conversion |
 |
 |
reassociation |
 |
|
 |