Return stack buffer (RSB)
Une petite pile matérielle du CPU, dédiée à la prédiction de l'adresse de retour des appels de fonction : à chaque appel, l'adresse de retour y est aussi empilée, et au retour le RSB devine où le code doit revenir — plus vite et plus précisément qu'un prédicteur de branchement généraliste.
Pourquoi une structure à part : un retour de fonction est un type particulier de saut indirect dont la cible (l'adresse de retour) suit un schéma strict — dernier entré, premier sorti, exactement comme une pile. Le RSB reflète les paires call/ret : chaque call empile l'adresse de retour attendue, chaque ret la dépile et permet au CPU de lire spéculativement les instructions à cet endroit sans attendre. C'est bien plus précis pour les retours que de laisser le BTB généraliste deviner.
Limite : le RSB est petit (typiquement 16 à 32 entrées) → une récursion très profonde ou des paires call/ret non appariées peuvent le faire « déborder » et provoquer des erreurs de prédiction. Comme le BTB, le comportement du RSB a été exploité dans des attaques par canal auxiliaire (Spectre-RSB, retbleed). Un mécanisme de prédiction spécialisé, mais important.