PROCESS AND SYSTEM FOR JAVA VIRTUAL METHOD INVOCATION
First Claim
1. A process for optimizing an invocation of a method, the process comprising the computer-implemented steps of:
- in response to a determination to compile a first method, detecting an invocation of a second method by the first method; and
inlining the second method in the first method without a conditional statement in the first method for conditional execution of the inlined second method.
1 Assignment
0 Petitions
Accused Products
Abstract
A process and system for optimizing an invocation of a method is provided. A determination is made to compile a calling method, and a call to a callee method is detected within the first method. The callee method may be a non-final, virtual method, and a determination may be made that the callee method has not been previously overridden. The callee method is then inlined within the first method. In addition, no conditional statements are inserted into the calling method along with the inlined method. The determination to compile and optimize these methods may be made by a just-in-time compiler, and if the methods are Java methods, then a Java just-in-time compiler performs the optimization process. If a determination is made to load a class that contains a method that overrides the callee method, then the calling method is recompiled or patched.
-
Citations
22 Claims
-
1. A process for optimizing an invocation of a method, the process comprising the computer-implemented steps of:
-
in response to a determination to compile a first method, detecting an invocation of a second method by the first method; and
inlining the second method in the first method without a conditional statement in the first method for conditional execution of the inlined second method. - View Dependent Claims (2, 3, 4)
-
-
5. A process for optimizing an invocation of a method, the process comprising the computer-implemented steps of:
-
in response to a determination to compile a first method, detecting a call to a second method within the first method, wherein the second method is a non-final, virtual method; and
inlining the second method within the first method. - View Dependent Claims (6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 17, 18, 19)
-
-
12. A data processing system for optimizing an invocation of a method, the data processing system comprising:
-
detecting means for detecting, in response to a determination to compile a first method, a call to a second method within the first method, wherein the second method is a non-final, virtual method; and
inlining means for inlining the second method within the first method.
-
-
20. A computer program product in a computer-readable medium for use in a data processing system for optimizing an invocation of a method, the computer program product comprising:
-
instructions for detecting, in response to a determination to compile a first method, a call to a second method within the first method, wherein the second method is a non-final, virtual method; and
instructions for inlining the second method within the first method. - View Dependent Claims (21, 22)
-
Specification