Method for optimizing a loop in a computer program by speculativ

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

Patent

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

G06F 945

Patent

active

061517046

ABSTRACT:
A method for optimizing a loop in a computer program. The loop contains at least a first statement that uses a variable. The method includes inserting a second statement that loads the variable. The second statement is inserted prior to the loop. The method also includes inserting a third statement that (i) checks whether the variable has been written to at any point between the second statement and the third statement and if and only if the variable has been written to, then loading the variable.

REFERENCES:
patent: 4435753 (1984-03-01), Rizzi
patent: 4567574 (1986-01-01), Saade et al.
patent: 4656582 (1987-04-01), Chaitin et al.
patent: 4656583 (1987-04-01), Auslander et al.
patent: 4710872 (1987-12-01), Scarborough
patent: 4773007 (1988-09-01), Kanada et al.
patent: 4782444 (1988-11-01), Munshi et al.
patent: 4802091 (1989-01-01), Cocke et al.
patent: 4821181 (1989-04-01), Iwasawa et al.
patent: 4833606 (1989-05-01), Iwasawa et al.
patent: 4885684 (1989-12-01), Austin et al.
patent: 4965724 (1990-10-01), Utsumi et al.
patent: 5202995 (1993-04-01), O'Brien
patent: 5287510 (1994-02-01), Hall et al.
patent: 5293631 (1994-03-01), Rau et al.
patent: 5448737 (1995-09-01), Burke et al.
patent: 5526499 (1996-06-01), Bernstein
patent: 5724536 (1998-03-01), Abramson et al.
patent: 5778210 (1998-07-01), Henstrom et al.
patent: 5802337 (1998-09-01), Fielden
patent: 5854933 (1998-12-01), Chang
patent: 5862384 (1999-01-01), Hirai
patent: 5966539 (1999-10-01), Srivastava
patent: 6026240 (2000-02-01), Subramanian
Koeman et al, "Optimize your code to run faster and jump higher with the Visual C+ + 2.0 compiler", microsoft systems Journal, v10,n3, p51(9), Mar. 1995.
McConnell et al, Using Static Single Assignment Form in a Code Optimizer, ACM, v1, n2, pp. 152-160, Jun. 1992.
Brandis, Marc et al, "Single Pass Generation of Static-Assignment Form for Structure Languages", ACM, v16, n6, pp. 1694-1698, Nov. 1994.
Ron Cytron, Jeanne Ferrante, Mark N. Wegman, Barry K. Rosen, and F. Kenneth Zadeck, "An Efficient Method of Computing Static Single Assignment Form", available from the Brown University Department of Computer Science as Technical Report No. CS-88-16 at techreports@cs.brown.edu or through http:/www.cs.brown.edu:80/techreports/reports/CS-19-21.html, in toto.
Ron Cytron, Jeanne Ferrante, Mark N. Wegman, Barry K. Rosen, and F. Kenneth Zadeck, "Efficiently Computing Static Single Assignment Form and the Control Dependence Graph," 13 ACM Transactions on Programming Languages and Systems (1991); also available from the Brown University Department of Computer Science as Technical Report No. CS-19-21 at techreports@cs.brown.edu or through http:/www.cs.brown.edu:80/techreports/reports/CS-91-21.html, in toto.
Mark N. Wegman and F. Kenneth Zadeck, "Constant Propagation with Conditional Branches," presented at the Twelfth Annual ACM Symposium on Principles of Programming Languages, Sponsored by the Special Interest Group on Automata and Computability Theory and the Special Interest Group on Programming Languages of the Association for Computing Machinery, Jan. 14-16, 1985, in New Orleans, Louisana, available from ACm Press and from the Brown University Department of Computer Science as Technical Report No. CS-91-22 at techreport@cs.brown.edu or through http:/www.cs.brown.edu:80/techreports/reports/CS-91-22.html, in toto.
Kathleen Knobe and Kenneth Zadeck, "Register Allocation Using Control Trees," available from the Brown University Department of Computer Science as Technical Report No. CS-92-13 at techreports@cs.brown.edu and through http:/www.cs.brown.edu:80/techreports/CS-92-13.html, in toto.
Eric Stolz, Harini Srinivasan, James Hook, and Michael Wolfe, "Static Single Assignment Form for Explicitly Parallel Programs: Theory and Practice," available at http:.backslash..backslash.www.cse.ogi.edu/Sparse/sparse.papers.html, in toto.
Barry K. Rosen, Mark N. Wegman, and F. Kenneth Zadeck, "Global Value Numbers and Redunant Computations," presented at the Fifteenth Annual ACM Symposium on Principles of Programming Languages, sponsored by the Special Interest Group on Automata and Computability Theory and the Special Interest Group on Programming Languages of the Association for Computing Machinery, Jan. 13-15, 1988, in San Diego, California, available from ACM Press, in toto.
Fred C. Chow and John L. Hennessy, "The Priority-Based Coloring Approach to Register Allocation," 12 ACM Transactions on Programming Languages and Systems 501 (Association for Computing Machinery 1990), in toto.
Gregory J. Chaitin, Marc A. Auslander, Ashok K. Chandra, John Cocke, Martin E. Hopkins, and Peter W. Markstein, "Register Allocation via Coloring," 6 Computer Languages 47 (Pergamon Press Ltd. 1981), in toto.
G. J. Chaitin, "Register Allocation & Spilling via Graph Coloring," Proceedings of the SIGPLAN '82 Symposium on Compiler Construction, presented Jun. 23-25, 1982, in Boston, Massachusetts , sponsored by the Association for Computing Machinery Special Interest Group on Programming Languages (ACM Order No. 548820), in toto.
Vugranam C. Sreedhar, Efficient Program Analysis Using DJ Graphs, Ph. D. Thesis, School of Computer Science, McGill University, Quebec Canada (1995), in toto.
Gagan Agrawal, Joel Saltz, and Raja Das, "Interprocedural Partial Redundancy and its Application to Distributed Memory Compilation," UMIACS and Department of Computer Science at the University of Maryland, in toto.
John H. Reif and Harry R. Lewis, "Efficient Symbolic Analysis of Programs," 32 Journal of Computer and System Sciences 280 (Academic Press, Inc. 1986), in toto.
Mark N. Wegman and F Kenneth Zadeck, "Constant Propagation with Conditional Branches," ACM Transactions on Programming Languages 181 (1991), in toto.
Gagan Agrawal and Joel Saltz, "Interprocedural Compilation of Irregular Applications for Distributed Memory Machines," (1995), in toto.
Peter Christy, "IA-64 and Merced-What and Why," 10 Microprocessor Rep. 17 (1996), in toto.

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 for optimizing a loop in a computer program by speculativ 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 for optimizing a loop in a computer program by speculativ, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Method for optimizing a loop in a computer program by speculativ will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-1267387

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