Apparatus and method for improved devirtualization of method...

Electrical computers and digital processing systems: interprogra – Dynamic linking – late binding

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C719S332000, C717S148000, C717S153000, C717S165000

Reexamination Certificate

active

06779188

ABSTRACT:

BACKGROUND OF THE INVENTION
1. Technical Field
The present invention provides apparatus and methods for improved devirtualization of method calls. More specifically, the present invention provides apparatus and methods for performing lookups of appropriate methods to be invoked on objects only when it has been determined that the method has been overridden or overloaded.
2. Description of Related Art
Many Java method calls are virtual. This means that the target method of the site of a call is dependent on the object upon which the method is invoked. This dependency requires a lookup of the appropriate method to be invoked on the object. The lookup takes time and reduces performance. A Java just-in-time compiler can make method calls with less overhead if the method is not overloaded, i.e. if the method does not have an alternative method with the same name and signature, defined in a subclass of the class of the original method, to be used instead of the original method for objects of type of the subclass.
Thus, it would be beneficial to have apparatus and methods for performing a lookup of a method to be invoked which reduces the amount of time used to perform lookups. It would further be beneficial to have an apparatus and method for performing lookups only when they are necessary to finding an appropriate method to be invoked on an object.
SUMMARY OF THE INVENTION
Apparatus and methods are provided for improving devirtualization of method calls in Java. The apparatus and methods reduce the amount of processing time used in performing lookups of methods by limiting such lookups to calls of methods that have been either overridden or overloaded. If a method has not been overridden or overloaded, a branch to the compiled method code is directly taken. If a method has been overridden or overloaded, a lookup routine is executed for looking-up the appropriate method to be invoked on the passed object. The identification of whether to use a lookup routine may be performed in many different ways including providing an extra field in a method block of the method, inserting code into a prolog of the method, and the like.


REFERENCES:
patent: 6151703 (2000-11-01), Crelier
patent: 6385660 (2002-05-01), Griesemer et al.
Fernandez, Simple and Effective Link-Time Optimization of Modula-3 Programs, Nov. 7, 1994, pp. 1-7.*
Ishizaki et al., Design, Implementation, and Evaluation of Optimizations in a Just-In-Time Compiler, ACM, Jun. 1999, pp. 119-122.

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

Apparatus and method for improved devirtualization of method... does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Apparatus and method for improved devirtualization of method..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Apparatus and method for improved devirtualization of method... will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-3303803

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