Christopher Kumar Anand
As part of a larger project, we have built a declarative assembly language. This language enables us to specify multiple code paths to compute
particular quantities, giving the instruction scheduler more flexibility in
balancing execution resources for superscalar execution. The instruction
scheduler is also innovative in that it includes aggressive pipelining, and
exhaustive (but lazy) search for optimal instruction schedules. We
present some examples where our approach has produced very promising results.