A computer implemented method, apparatus, and computer usable program code
for ensuring forward progress of instructions in a pipeline of a
processor. Instructions are received in the pipeline. Instruction flushes
are counted in the pipeline to determine a flush count. A single step
mode in the pipeline is entered in response to the flush count exceeding
a threshold. The single step mode instructions are issued in serial such
that an instruction is not issued for execution until a prior instruction
has completed execution.