HyperLink   Compiler-Assisted Multiple Instruction Retry.
Publication Year:
  Chung-Chi Jim Li, Shyh-Kwei Chen, W. Kent Fuchs, Wen-mei Hwu
  IEEE Transactions on Computers, Vol.44, No.1, Jan. 1995

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