HyperLink   Effective Compiler Support for Predicated Execution Using the Hyperblock.
Received Micro Test-of-Time Award / Paper of IMPACT - Cited Greater Than 700 Times
   
Publication Year:
  1992
Authors
  Scott A. Mahlke, David C. Lin, William Y. Chen, Richard E. Hank, Roger A. Bringmann
   
Published:
  Proceedings of the 25th International Symposium on Microarchitecture, pp. 45-54, Dec. 1992
   
Abstract:

Predicated execution is an effective technique for dealing with conditional branches in application programs. However, there are several problems associated with conventional compiler support for predicated execution. First, all paths of control are combined into a single path regardless of their execution frequency and size with conventional if-conversion techniques. Second, speculative execution is difficult to combine with predicated execution. In this paper, we propose the use of a new structure, referred to as the hyperblock, to overcome these problems. The hyperblock is an efficient structure to utilize predicated execution for both compile-time optimization and scheduling. Preliminary experimental results show that the hyperblock is highly effective for a wide range of superscalar and VLIW processors.