Data processing: software development – installation – and managem – Software program development tool – Translation of code
Patent
1999-11-17
2000-10-10
Hafiz, Tariq R.
Data processing: software development, installation, and managem
Software program development tool
Translation of code
717 9, 712228, G06F 945
Patent
active
06131188&
ABSTRACT:
Program routines normally requiring windowed register allocation using conventional assembly code generation in a compiler are examined for eligibility for a wrapper routine optimization procedure in which wrapper routine assembly code instructions are generated in response to the application of high level programming language instructions specifying routines. If not eligible, the compiler generates assembly code instructions in a conventional way, allocating windowed registers to each routine. If the routine is eligible for wrapper routine optimization, the routine is further examined to determine whether the routine includes tail routine calls only or calls within the body of the routine. If the former, the routine is examined to determine whether local stack usage is required. For a routine having tail routine calls only and a requirement of local stack usage, wrapper routine assembly code instructions of a first type are generated. If the routine includes tail calls only and no requirement for local storage, wrapper routine assembly code instructions of a second type are generated. If the routine incorporates one or more calls within the body thereof, the routine is further examined to determine whether a live register is required over any of the calls. If so, wrapper routine assembly code instructions of a third type are generated. If the routine incorporates calls within the body thereof and a live register is not required over any call, wrapper routine assembly code instructions of a fourth type are generated.
REFERENCES:
patent: 4571678 (1986-02-01), Chaitin
patent: 4667290 (1987-05-01), Goss et al.
patent: 4763255 (1988-08-01), Hopkins et al.
patent: 4782444 (1988-11-01), Munshi et al.
patent: 5175856 (1992-12-01), Van Dyke et al.
patent: 5233691 (1993-08-01), Ando et al.
patent: 5249295 (1993-09-01), Briggs et al.
patent: 5418958 (1995-05-01), Goebel
patent: 5481706 (1996-01-01), Peek
patent: 5530866 (1996-06-01), Koblenz et al.
patent: 5590329 (1996-12-01), Goodnow et al.
patent: 5659754 (1997-08-01), Grove et al.
patent: 5734908 (1998-03-01), Chan et al.
patent: 5815719 (1998-09-01), Goebel
David L. Weaver et al., "The SPARC Architecture Manual," Prentice Hall, (1994) Version 9, pp. 293-299.
Book: Compilers Principles, Techniques, and Tools, Authors: Alfred V. Aho, Ravi Sethi and Jeffrey D. Ullman, Publisher: Addison-Wesley, Printed: Mar. 1988, Chapter 8--Intermediate Code Generation, pp. 463-512.
Book: Computer Languages vol. 6, Article: "Register Allocation Via Coloring", Author(s): Gregory J. Chaitin, Marc A. Auslander, Ashok K. Chandra, John Cooke, Martin E. Hopkins and Peter W. Markstein, Publisher: Pergamon Press Ltd, Printed: 1981, pp. 47-57.
Book: ACM Transactions on Programming Languages and Systems, vol. 12, No. 4, Article: The Priority-Based Coloring Approach to Register Allocation, Author(s): Fred C. Chow and John L. Hennessy, Printed: Oct. 1990, pp. 501-536.
Publication: IEEE, Article: "Direct Synthesis of Optimized DSP Assembly Code From Signal Flow Block Diagrams", Author(s): Douglas B. Powell, Edward A. Lee and William C. Newman, Printed: 1992, pp. V-553-V-556.
Article: "Optimizing Compiler Exploits DSP Features", Section: Software Developments, Author(s): Ronald E. Kole, Published By: High Performance Systems, Date Published: Feb. 11, 1990, pp. 40-42 and 44-45.
Publication: EDN--Electronic Design News, Section: Technology Update, Article: "HLL Compilers and DSP Run-Time Libraries Make DSP-System Programming Easy", Author(s): David Shear, Regional Editor, Date Published: Jun. 23, 1988, six pages total.
Publication: IEEE, Article: "GEM Optimizing Compilers for Alpha AXP Systems", Author(s): R.B. Grove, D.S. Blickstein, K.D. Glossop and W.B. Noyce, Date Publised: Feb. 22, 1993, pp. 465-473.
Russell et al., "Shifting Register windows", IEEE Micro, IEEE, 1993, pp. 28-35.
Wall, "Register windows vs. register allocation", ACM SIGPLAN '88, ACM, 1988, pp. 67-78.
Quammen et al., "Flexible register management for sequential programs", ACM, 1991, pp. 320-329.
Chaki Kakali
Hafiz Tariq R.
Sun Microsystems Inc.
LandOfFree
System and method for reducing the occurrence of window use over does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with System and method for reducing the occurrence of window use over, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and System and method for reducing the occurrence of window use over will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-2264039