Loop-dead optimization

  • Authors:
  • Sachin Shaw;Pawan Kumar

  • Affiliations:
  • Indian Institute of Technology, Kharagpur, India;Indian Institute of Technology, Kharagpur, India

  • Venue:
  • ACM SIGPLAN Notices
  • Year:
  • 2005

Quantified Score

Hi-index 0.00

Visualization

Abstract

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.