Register allocation in compiler optimisation

The invention enables a compiler to generate efficient code to access stack registers on a register stack. It operates by transforming, 305, a three-operand instruction, within the compiler's intermediate representation, to one or more fewer-than-three-operand instructions. The invention also t...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Hauptverfasser: DAVID M COX, DAVID A SEBERGER, SERGUEI L WENITSKY, DAVID R WALLACE, SERGUEI V MOROSOV
Format: Patent
Sprache:eng
Schlagworte:
Online-Zugang:Volltext bestellen
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
Beschreibung
Zusammenfassung:The invention enables a compiler to generate efficient code to access stack registers on a register stack. It operates by transforming, 305, a three-operand instruction, within the compiler's intermediate representation, to one or more fewer-than-three-operand instructions. The invention also transforms, 307, the instruction's operand addressing from an access to a pseudo-named-register to an access to a stack-register through stack offset into a register stack. The invention also determines the register stack state at each instruction responsive to register stack permutations and maps the stack offset accordingly for each subsequent access to a stack-register.