Glossaire
Registre de lien (x30 / lr)
Le registre AArch64 qui contient l'adresse de retour ; bl l'écrit et ret y branche, de sorte que l'adresse de retour n'est pas sur la pile par défaut.
Le registre de lien (x30, aussi noté lr) contient l'adresse de retour sur AArch64. L'instruction de branchement avec lien bl fixe x30 à l'adresse qui la suit, et ret branche vers ce que contient x30. Une fonction feuille qui n'appelle rien ne perturbe jamais x30, elle n'a donc aucune adresse de retour sur la pile à écraser.
Une fonction non feuille doit préserver x30 à travers les appels qu'elle effectue, si bien que son prologue sauvegarde x29 (le pointeur de cadre) et x30 sur la pile, généralement avec stp x29, x30, [sp, #-N]!. C'est cette copie sauvegardée qu'un débordement de pile écrase pour détourner le contrôle, et que l'authentification de pointeurs signe pour empêcher la falsification. Voir le registre de lien et ret2win.