Disclosed is a method and system for handling inline recovery from
speculatively executed instructions. Each register may be provided with an
E-tag, that, when set, indicates an exception occurred in the generation
of the value stored in its register, and an R-tag, which is used to manage
data flow dependencies in recovery mode. Recovery is performed by
re-executing speculatively those set of speculative instructions that are
data flow dependent upon a first excepting speculative instruction. The
disclosed invention provides an architecture and method for efficient
exception handling when combining control speculation, data speculation
and predication, thereby resulting in substantially enhanced instruction
level parallelism.
Révélée est une méthode et un système pour manipuler le rétablissement intégré des instructions spéculativement exécutées. Chaque registre peut être équipé d'ETAG, celui, une fois réglé, indique que une exception s'est produite dans la génération de la valeur stockée dans son registre, et une R-étiquette, qui est employée pour contrôler des données flux des dépendances dans le mode de rétablissement. Le rétablissement est exécuté en exécutant de nouveau spéculativement ces l'ensemble d'instructions spéculatives qui sont des données flux personne à charge sur une première sauf l'instruction spéculative. L'invention révélée fournit une architecture et une méthode pour la manipulation d'exception efficace en combinant la spéculation de commande, la spéculation de données et l'affirmation, de ce fait ayant pour résultat le parallélisme sensiblement augmenté de niveau d'instruction.