Registr odkazů - Link register
![]() | tento článek potřebuje další citace pro ověření.duben 2013) (Zjistěte, jak a kdy odstranit tuto zprávu šablony) ( |
A registr odkazů je speciální účel Registrovat který obsahuje adresu, na kterou se má vrátit, když a funkce hovor je dokončen. To je efektivnější než tradičnější schéma ukládání návratů adresovaných na a zásobník volání, někdy nazývaný zásobník strojů. Registr odkazů nevyžaduje zápisy a čtení paměti obsahující zásobník, což může ušetřit značné procento času provádění opakovanými voláními malých podprogramů.
V mnoha případech se používá registr odkazů architektury instrukční sady, jako PowerPC, PAŽE, a PA-RISC. Další architektury (např SPARC ) mají registr se stejným účelem, ale s jiným názvem (v tomto případě "výstupní registr 7" nebo o7).[1]
Použití registru odkazů (nebo registru pro všeobecné účely, jak je tomu v některých jiných architekturách sady instrukcí) umožňuje rychlejší volání na listové podprogramy. Pokud je podprogram nelistový, předání zpáteční adresy v registru může stále vést k vygenerování efektivnějšího kódu pro thunks, např. pro funkci, jejíž jediným účelem je zavolat jinou funkci s nějakým způsobem přeskupenými argumenty. Jiné podprogramy mohou těžit z použití registru odkazů, protože je lze uložit v dávce s jinými volanými registry - např. podprogram ARM posílá registry 4-7 spolu s registrem spojení, LR, jedinou instrukcíSTMDB SP !, {R4-R7, LR}
pipeline všechny potřebné zápisy do paměti.
Reference
- ^ „Dodatek k aplikacím RTEMS SPARC“ (PDF). Květen 2000. Citováno 2013-04-19.
![]() | Tento počítačový hardware článek je a pahýl. Wikipedii můžete pomoci pomocí rozšiřovat to. |