Patent ID: 7937569

Claim:
A system, comprising: a scheduler configured to store a speculative source tag and a non-speculative source tag for an operand of an operation; and an execution core configured to execute operations issued by the scheduler and to output result tags identifying operands generated by executing the operations; wherein the scheduler comprises circuitry with a first input port and a second input port configured to receive the speculative source tag and the non-speculative source tag, respectively, and an output port coupled to a third input port of a comparator, the output port configured to convey an output value corresponding to either the first or the second input port at any given time, wherein a fourth input port of the comparator is configured to receive result tags output by the execution core, wherein the scheduler is configured to: determine whether the operation is ready to issue by: comparing the speculative source tag, but not the non-speculative source tag, to the result tags output by the execution core unless an incorrect speculation has been detected; and comparing the non-speculative source tag, but not the speculative source tag, to the result tags output by the execution core if the incorrect speculation has been detected; and wherein the scheduler is further configured to issue the operation to the execution core subsequent to determining the operation is ready to issue.