The present invention relates to data processing systems with built-in error
recovery from a given checkpoint. In order to checkpoint more than one instruction
per cycle it is proposed to collect updates of a predetermined maximum number of
register contents performed by a respective plurality of CISC/RISC instructions
in a buffer (CSB)(60) for checkpoint states, whereby a checkpoint state
comprises as many buffer slots as registers can be updated by said plurality of
CISC instructions and an entry for a Program Counter value associated with the
youngest external instruction of said plurality, and to update an Architected Register
Array (ARA)(64) with freshly collected register data after determining that
no error was detected in the register data after completion of said youngest external
instruction of said plurality of external instructions. Handshake synchronization
for consistent updates between storage in an L2-cache (66) via a Store Buffer
(65) and an Architected Register Array (ARA) (64) is provided which
is based on the youngest instruction ID (40) stored in the Checkpoint State
Buffer (CSB) (60).