Welche Register durch einen Linux x86-64-Funktionsaufruf erhalten bleiben

Ich glaube ich verstehe, wie das Linux x86-64 ABI Register und Stack verwendet, um Parameter an eine Funktion zu übergeben (vgl.vorherige ABI Diskussion). Was mich verwirrt, ist, ob / welche Register bei einem Funktionsaufruf erhalten bleiben sollen. Das heißt, welche Register sind garantiert, um nicht überladen zu werden?