Compiler-Based Multiple Instruction Retry

Chung Chi Jim Li, Shyh Kwei Chen, W. Kent Fuchs, Wen Mei W. Hwu

Research output: Contribution to journalArticle

Abstract

This paper describes a compiler-based approach to providing multiple instruction rollback capability for general purpose processor registers. The objective is achieved by having the compiler remove all forms of A -instruction antidependencies. Pseudoregister antidependencies are removed by loop protection, node splitting, and loop expansion techniques; machine register antidependencies are prevented by introducing antidependency constraints in the interference graph used by the register allocator. To support separate compilation, inter-procedural antidependency constraints are added to the code generator to guarantee the termination of machine register antidependencies across procedure boundaries. The algorithms have been implemented in the IMPACT C compiler. Experiments illustrating the effectiveness of this approach are described.

Original languageEnglish (US)
Pages (from-to)35-46
Number of pages12
JournalIEEE Transactions on Computers
Volume44
Issue number1
DOIs
StatePublished - Jan 1995

    Fingerprint

ASJC Scopus subject areas

  • Software
  • Theoretical Computer Science
  • Hardware and Architecture
  • Computational Theory and Mathematics

Cite this