Method and system for register allocation

Data processing: software development – installation – and managem – Software program development tool – Translation of code

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C717S153000, C717S154000

Reexamination Certificate

active

06925639

ABSTRACT:
A method, system, and apparatus for inserting spill code optimized for a complex instruction set computing (CISC) two-address machine, such as a machine utilizing an 80x86 processor is described. The spill code is generated in a single pass. Copy propagation and dead-code elimination are performed to remove unnecessary loads and stores from the stack. Instructions contained within the code block are processed in reverse order. Temporary variables are not extended to the point that they may become spilled by a register allocation procedure. A store to a stack location is inserted if the stack location is not dead, saving the use of a register. Memory operands are substituted when possible in place of load and store instructions on CISC machines.

REFERENCES:
patent: 6625723 (2003-09-01), Jourday et al.
patent: 428084 (1991-05-01), None
Lueh et al, “Call-cost directed register allocation”, ACM, pp. 296-307, 1997.
Chaitin, G. et al., “Register Allocation Via Coloring;”Computer Languages 6:1 (Jan. 1981), pp. 47-57.
Chaitin, G., “Register Allocation & Spilling Via Graph Coloring;”Proceedings of the ACM SIGPLAN '82 Symposium on Compiler Construction, Jun. 1982, pp. 98-105.
Chow, F. et al., “Register Allocation by Priority-Based Coloring;”Proceedings of the ACM SIGPLAN '84 Symposium on Compiler Construction, Jun. 1984, pp. 222-232.
Larus, J. et al., “Register Allocation in the SPUR Lisp Compiler;”Proceedings of the ACM SIGPLAN '86 Conference on Compiler Construction, Jul. 1986, pp. 255-263.
Bernstein, D. et al., “Spill Code Minimization Techniques for Optimizing Compilers;”Proceedings of the SIGPLAN '89 Conference on Programming Language Design and Implementation, Jun. 1989, pp. 258-263.
Chow, F. et al., “The Priority-Based Coloring Approach to Register Allocation;”ACM Transactions on Programming Languages and Systems 12:4 (Oct. 1990), pp. 501-536.
Callahan, D. et al., “Register Allocation Via Hierarchical Graph Coloring;”Proceedings of the ACM SIGPLAN '91 Conference on Programming Language Design and Implementation, Jun. 1991, pp. 192-203.
Briggs, P., “Register Allocation Via Graph Coloring;” PhD thesis, Rice University, Apr. 1992.
Briggs, P. et al., “Improvements to Graph Coloring Register Allocation;”ACM Transactions on Programming Languages and Systems 16:3 (May 1994), pp. 428-455.
Bergner, P. et al., “Spill Code Minimization Via Interference Region Spilling;”Proceedings of the SIGPLAN '97 Conference on Programming Language Design and Implementation, May 1997, pp. 287-295.
Lueh, G. et al., “Call-Cost Directed Register Allocation;”Proceedings of the SIGPLAN '97 Conference on Programming Language Design and Implementation, May 1997, pp. 296-307.
Fitzgerald, R. et al., “Marmot: An Optimizing Compiler for Java;”Software: Practice and Experience 30:3 (2000), pp. 199-232.

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

Method and system for register allocation does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Method and system for register allocation, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Method and system for register allocation will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-3444551

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.