Abstract
A register allocator is difficult to write and debug. The task is to assign hardware registers to as many program variables as possible, assign memory locations to the rest, and avoid memory traffic to the extent possible. A good register allocator can produce code that is 2.5 times faster than code generated by a naive register allocator.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Naik, M., Palsberg, J.: Correctness of ILP-based register allocation (2004)
Nandivada, V.K., Pereira, F.M.Q., Palsberg, J.: A framework for end-to-end verification and evaluation of register allocators. In: Proceedings of SAS’07, International Static Analysis Symposium, Kongens Lyngby, Denmark, August 2007, pp. 153–169 (2007)
Ohori, A.: Register allocation by proof transformation. Science of Computer Programming 50(1–3), 161–187 (2004)
Pereira, F.M.Q., Palsberg, J.: Register allocation by puzzle solving (2007), http://compilers.cs.ucla.edu/fernando/projects/puzzles
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 2008 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Palsberg, J. (2008). Verification of Register Allocators. In: Logozzo, F., Peled, D.A., Zuck, L.D. (eds) Verification, Model Checking, and Abstract Interpretation. VMCAI 2008. Lecture Notes in Computer Science, vol 4905. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-78163-9_4
Download citation
DOI: https://doi.org/10.1007/978-3-540-78163-9_4
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-78162-2
Online ISBN: 978-3-540-78163-9
eBook Packages: Computer ScienceComputer Science (R0)