Compilers: principles, techniques, and tools
Compilers: principles, techniques, and tools
Advanced compiler design and implementation
Advanced compiler design and implementation
An improved algorithm for loop dead optimization
ACM SIGPLAN Notices
An improved algorithm for loop dead optimization
ACM SIGPLAN Notices
Hi-index | 0.00 |
A loop is a critical part of any program. A loop is normally executed a large number of times, hence if any statement can be moved outside the loop then computation can speed-up. Loop invariant computations have been studied in great detail [1, 2]. Here a computation, which does not change inside the loop (on successive execution of the loop), is done before the loop. Such a computation involves only the loop invariant variables. These are variables, whose value does not change inside the loop.Here we talk about a variable, which changes inside the loop, but only the last value is useful. The computation needed in the definition of this variable can be moved outside the loop (after the loop).Formally a loop-dead variable is that which is defined in the loop but not used in the loop. Later we extend this definition as follows: A loop-dead variable is that which is not used inside the loop except in the definition of the other loop dead variables.