Compilers use register coalescing to avoid generating code for copy instructions. For architectures with register aliasing such as x86, Smith, Ramsey, and Holloway (2004) presented...
Speculative execution is an important technique that has historically been used to extract concurrency from sequential programs. While techniques to support speculation work well ...
Lukasz Ziarek, Suresh Jagannathan, Matthew Fluet, ...
A dynamic object process graph is a view on the control flow graph from the perspective of a single object. It has been shown that such a graph can be a useful starting point for...
Genetic Programming uses trees to represent chromosomes. The user defines the representation space by defining the set of functions and terminals to label the nodes in the trees. ...
We want to perform compile-time analysis of an SPMD program and place barriers in it to synchronize it correctly, minimizing the runtime cost of the synchronization. This is the b...