System and method to reduce execution of instructions involving unreliable
data in a speculative processor. A method comprises identifying scratch
values generated during speculative execution of a processor, and setting
at least one tag associated with at least one data area of the processor
to indicate that the data area holds a scratch value. Such data areas
include registers, predicates, flags, and the like. Instructions may also
be similarly tagged. The method may be executed by an execution engine in
a computer processor.