vix.ing · top · new · best · stats · spec

Trace Register Allocation Policies

2017/09/15 by Josef Eisl, Stefan Marr, Thomas Würthinger +1 · 2 citations
Computer Science · #Parallel Computing and Optimization Techniques #Logic, programming, and type systems #Security and Verification in Computing #Register allocation #Allocator #Computer science #TRACE (psycholinguistics) #Compiler #Processor register #Parallel computing #Register (sociolinguistics) #Code (set theory) #Just-in-time compilation #Programming language #Operating system

paper · doi:10.1145/3132190.3132209

openalex publication_date 2017/09/15 · openalex created_date 2025/10/10 · openalex updated_date 2026/08/01

Abstract

Register allocation is an integral part of compilation, regardless of whether a compiler aims for fast compilation or optimal code quality. State-of-the-art dynamic compilers often use global register allocation approaches such as linear scan. Recent results suggest that non-global trace-based register allocation approaches can compete with global approaches in terms of allocation quality. Instead of processing the whole compilation unit (i.e., method) at once, a trace-based register allocator divides the problem into linear code segments, called traces.

Citations

Cited by

Related