1. Within a computer, a method of automatically generating multithreaded datapaths from a circuit description comprising: identifying a plurality of process threads from a circuit description, wherein each process thread comprises at least one function; representing each of the plurality of process threads as a separate order of operations graph comprising nodes that correspond to functions and edges that indicate dependencies between the functions; identifying at least one conditional edge from the order of operations graphs by identifying each edge that is not found within each other order of operations graph; generating an updated circuit description specifying a multiplexer for each conditional edge; and storing the undated circuit description in memory wherein identifying a plurality of process threads, representing each of the plurality of process threads, identifying at least one conditional edge generating an updated circuit description, and storing the updated circuit description are performed by the computer.