Patent
1995-08-14
1998-04-14
Heckler, Thomas M.
395709, G06F 945
Patent
active
057404437
ABSTRACT:
A compiler implemented method performs call-site specific selective automatic procedure integration over a program call graph. Individual call sites are selected for inlining based on two cost functions without the need for profiling. A routine cost function models each procedure and attempts to capture the cost of inlining a procedure. A call site cost function models the region around each call site, and attempts to capture the benefit of inlining or cloning a particular call site. Inlining is performed only at call sites for which both the routine cost function is less than a first threshold value and the call site cost function is less than a second threshold value.
REFERENCES:
patent: 5175856 (1992-12-01), Van Dyke et al.
patent: 5230050 (1993-07-01), Iitsuka et al.
patent: 5539907 (1996-07-01), Srivastova et al.
F. E. Allen et al., "A Catalogue of Optimizing Transformations", Prentice-Hall, Inc., chapter 1, pp. 1-30, (1972).
J. W. Davidson et al., "A Study of a C Function Inliner", Software-Practice and Experience, 18(8), pp. 775-790, Aug. 1988.
S. Richardson et al., "Interprocedural Analysis Vs. Procedure Integration", Information Processing Letters, 137-142, Aug. 1989.
W. -M. Hwu et al., "Inline Function Expansion for Compiling C Programs", SIGPLAN '89, Conf. on Programming Language Design and Implementation, vol. 24, pp. 246-255, Jun. 1989.
J. W. Davidson et al., "Subprogram Inlining: A Study of its Effects on Program Execution Time", IEEE Transactions on Software Engineering, vol. 18, No. 2, pp. 89-102, Feb. 1992.
K.D. Cooper et al., "Unexpected Side Effects of Inline Substitution: A Case Study", ACM Letters on Programming Languages and Systems, vol. 1, No. 1, pp. 22-32, Mar. 1992.
P. P. Chang et al., "Profile-guided Automatic Inline Expansion for C Programs", Software-Practice and Experience, vol. 22(5), pp. 349-369 (May 1992).
T. J. Marlowe, "Data Flow Analysis and Incremental Iteration", Rutgers University (Oct. 1989).
A. V. Aho et al., "Compilers: Principles, Techniques, and Tools", Addison-Wesley Publishing Co., pp. 602-604, (1986).
J. P. Banning, "An Efficient Way to Find the Side Effects of Procedure Calls and the Aliases of Variables", Sixth Annual ACM Sym. on Principles of Programming Languages, 29-41, Jan. 1979.
K. D. Cooper et al., "Interprocedural Side-Effect Analysis in Linear Time", SIGPLAN '88 Conference on Programming Language Design and Implementation, 57-66, (Jun. 1988).
Chaki Kakali
Heckler Thomas M.
International Business Machines - Corporation
Jordan Kevin M.
LandOfFree
Call-site specific selective automatic inlining does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with Call-site specific selective automatic inlining, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Call-site specific selective automatic inlining will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-647812