SIRALib
Sid Touati and Sebastien Briais.

SCEDA is a Small Collection of Efficient Data structures and Algorithms. SCEDA library provides implementation of lists, sets, maps, trees, heaps, graphs as well as related algorithms.

GDD is a Graph Data Dependency library. It depends on SCEDA. It provides specific data structures and algorithms to manipulate data dependency graphs.

RS is a Register Saturation library. It depends on GDD and SCEDA. It implements two polynomial heuristics to compute the register saturation of acyclic data dependency graphs, as well as an optimal exponential algorithm. The algorithms and their experimental efficiency are reported in the following research document:

Sebastien Briais and Sid Touati. Experimental Study of Register Saturation in Basic Blocks and Super-blocks: Optimality and heuristics. Research report number HAL-INRIA-00431103. University of Versailles Saint-Quentin en Yvelines, France. October 2009.

SIRA is a Schedule Independant Register Allocation library. It depends on GDD and SCEDA. It provides one heuristic to reduce register saturation of acyclic data dependency graphs and two heuristics to reduce register pressure of innermost loops.

Download: SIRAlib-1.5.tar.gz