2005
DOI: 10.1145/1064978.1065031
|View full text |Cite
|
Sign up to set email alerts
|

Differential register allocation

Abstract: Micro-architecture designers are very cautious about expanding the number of architected registers (also the register field), because increasing the register field adds to the code size, raises I-cache and memory pressure, complicates processor pipeline. Especially for low-end processors, encoding space could be extremely limited due to area and power considerations. On the other hand, the number of architected registers exposed to the compiler could directly affect the effectiveness of compiler analysis and o… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
2
1

Citation Types

0
8
0

Year Published

2007
2007
2012
2012

Publication Types

Select...
2
2
1

Relationship

1
4

Authors

Journals

citations
Cited by 6 publications
(8 citation statements)
references
References 27 publications
0
8
0
Order By: Relevance
“…Differential Register Allocation can also double the number of registers, but the mechanism is different [16]. It encodes the register field using the difference between consecutive register accesses to allow the compiler to allocate more registers than can be specified using a regular encoding, while this work uses the underutilized condition bits to double the number of architectural registers.…”
Section: Related Workmentioning
confidence: 99%
See 2 more Smart Citations
“…Differential Register Allocation can also double the number of registers, but the mechanism is different [16]. It encodes the register field using the difference between consecutive register accesses to allow the compiler to allocate more registers than can be specified using a regular encoding, while this work uses the underutilized condition bits to double the number of architectural registers.…”
Section: Related Workmentioning
confidence: 99%
“…The number of architectural registers exposed to the compiler and the programmer is crucial to the code quality, as a small number of architectural registers might restrict compilers from effectively performing compilation and optimization or prevent programmers from storing some frequently used data [16]. Therefore, it is critical that more architectural registers are available to the compiler and programmer without expanding the code size significantly.…”
Section: Introductionmentioning
confidence: 99%
See 1 more Smart Citation
“…A preliminary version of this article will appear in the Proceedings of the ACM SIGPLAN 2005 Conference on Programming Language Design and Implementation (PLDI 2005) [Zhuang and Pande 2005]. We would like to thank anonymous PLDI referees for their comments and suggestions and also Mr. Josh Fryman from Georgia Tech for his help on the architecture side.…”
Section: Acknowledgmentsmentioning
confidence: 99%
“…Our approach is also more flexible than register windows because it allows various subsets of 8 registers to be active. Differential Register Allocation [15] proposes encoding the register specifier using the difference between consecutive register accesses, allowing the compiler to allocate more registers than can be specified using a regular encoding. This scheme, unlike ours, does not provide backward compatibility of binaries.…”
Section: Related Workmentioning
confidence: 99%