1997-06-30
2000-10-31
Hafiz, Tariq R.
G06F 944
Patent
active
061392006
ABSTRACT:
Techniques for allocating registers when generating code is described. A snapshot is generated when generating code. The snapshot contains sufficient information to restore the state of generating code that existed at the point when the snapshot was generated so that the generation of code can proceed from that point. A first set of code optimizations is generated. In response to determining that the first set of code optimizations fails to meet efficiency criteria, the generation of code proceeds based on the snapshot without incorporating the first set of code optimizations. Feedback is generated by analyzing the allocation of registers based on the first set of code optimizations. A second set of code optimizations is based on the feedback. Feedback includes information such as the number of spills occurring based on the first set of code optimizations. In addition, an allocation of registers based on a second set of code optimizations is performed in parallel with an allocation of registers based on the first set of code optimizations. Generation of code proceeds based on the second set of code optimizations when the second set of code optimizations causes less spilling the first set of code optimizations.
REFERENCES:
patent: 4571678 (1986-02-01), Chaitin
patent: 4763255 (1988-08-01), Hopkins et al.
patent: 4782444 (1988-11-01), Munshi el al.
patent: 5233691 (1993-08-01), Ando et al.
patent: 5249295 (1993-09-01), Briggs et al.
patent: 5418958 (1995-05-01), Goebel
patent: 5428793 (1995-06-01), Odnert et al.
patent: 5481706 (1996-01-01), Peek
patent: 5517643 (1996-05-01), Davy
patent: 5590329 (1996-12-01), Goodnow, II et al.
patent: 5651124 (1997-07-01), Shen et al.
patent: 5659721 (1997-08-01), Shen et al.
patent: 5751985 (1998-05-01), Shen et al.
Weaver, David L. et al., "The SPARC Architecture Manual", Prentice Hall, (1994) Version 9, pp. 294-298.
Aho, Alfred V. et al., "Intermediate Code Generation", Compilers Principles, Techniques and Tools, Chapter 8, Addison-Wesley, (1988) pp. 463-512.
Fred C. Chow et al., "The Priority-Based Coloring Approach to Register Allocation", 10872 ACM Transactions on Programming Languages and Systems, vol. 12, No. 4, Oct. 1990, pp. 501-536.
Gregory J. Chaitin et al., "Register Allocation Via Coloring", 10871 Computer Languages, vol. 6, 1981, pp. 47-57.
Hafiz Tariq R.
Sun Microsystems Inc.
Zhen Wei
LandOfFree
Register resource allocation feedback does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with Register resource allocation feedback, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Register resource allocation feedback will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-2044278