We disclose a function unit based finite state automata data structure for
use in computer program compilers. According to an aspect of an
embodiment, the data structure comprises a function unit vector, having
no more used bits than there are issue ports for any particular
microprocessor, and a plurality of valid template assignments for each
function unit vector. In a preferred embodiment, the template assignments
are constructed so as to account for dispersal rules associated with the
particular microprocessor. Further, the template assignments can be
sorted according to priority data.