Return Stack Buffer (RSB)
Ein kleiner Hardware-Stack in der CPU, der speziell die Rücksprungadresse von Funktionsaufrufen vorhersagt. Bei jedem Aufruf (call) wird die Rücksprungadresse zusätzlich hier abgelegt; bei der Rückkehr (ret) rät der RSB, wohin es zurückgeht — schneller und treffsicherer als ein allgemeiner Sprungprädiktor.
Warum getrennt: Funktionsrückgaben sind ein besonderer indirekter Sprung, dessen Ziel — die Rücksprungadresse — einem strikten Muster folgt: Last-in-first-out, genau wie ein Stack. Der RSB spiegelt die call/ret-Paare: Jeder call legt die erwartete Rücksprungadresse ab, jeder ret entnimmt sie und lässt die CPU spekulativ direkt von dort weiterlesen. Das ist für Rückgaben deutlich treffsicherer, als es dem allgemeinen BTB zu überlassen. Einschränkung: Der RSB ist klein (typischerweise 16-32 Einträge) — sehr tiefe Rekursion oder unpassende call/ret-Paare können ihn „überlaufen“ lassen und zu Fehlvorhersagen führen. Wie beim BTB wurde auch das RSB-Verhalten für Seitenkanalangriffe ausgenutzt (Spectre-RSB/Retbleed). Ein spezialisierter, aber wichtiger Vorhersagemechanismus, verwandt mit Branch Target Buffer und spekulativer Ausführung.