Adding functionality to existing code at exits
First Claim
Patent Images
1. A method implemented on one or more machines for modifying existing object code, the method comprising:
- adding exit code to said existing object code, said existing object code includes a method having original byte code; and
adding a new entry in an exceptions data store for said existing object code, said new entry points to said exit code, said exceptions data store is an exception table for said method, said adding a new entry in said exceptions data store includes adding said new entry into said exception table for said method, said new entry indicates a range of indices corresponding to said original byte code, said new entry includes a reference to said exit code and said new entry indicates that said new entry pertains to multiple types of exceptions.
3 Assignments
0 Petitions
Accused Products
Abstract
New code is added to existing object code in order to add new functionality. For example, a call to start a profiler function can be added at the beginning of a Java method and a call to stop the profiler function can be added at the exits of the Java method. A method may have many different exits. To insure that the profiler process is stopped regardless of which exit is performed, the byte code and exception table are modified.
-
Citations
34 Claims
-
1. A method implemented on one or more machines for modifying existing object code, the method comprising:
-
adding exit code to said existing object code, said existing object code includes a method having original byte code; and adding a new entry in an exceptions data store for said existing object code, said new entry points to said exit code, said exceptions data store is an exception table for said method, said adding a new entry in said exceptions data store includes adding said new entry into said exception table for said method, said new entry indicates a range of indices corresponding to said original byte code, said new entry includes a reference to said exit code and said new entry indicates that said new entry pertains to multiple types of exceptions. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16)
-
-
17. One or more processor readable storage devices having processor readable code embodied thereon, said processor readable code for programming one or more processors to perform a method comprising:
-
adding exit code to existing object code, said existing object code includes a method having original byte code; and adding a new entry in an exceptions data store pointing to said exit code, said exceptions data store is an exception table for said method, said adding a new entry in said exceptions data store includes adding a new entry into said exception table for said method, said new entry indicates a range of indices corresponding to said original byte code, said new entry includes a reference to said exit code and indicates that said new entry pertains to multiple types of exceptions. - View Dependent Claims (18, 19, 20, 21)
-
-
22. A method implemented on one or more machines for adding functionality to existing object code, the method comprising:
-
adding new exit functionality to said existing object code, said existing object code includes a method having original byte code; creating a grouping of all or a portion of said existing object code; and associating said grouping of said existing object code with at least a portion of said new exit functionality that is to be performed if an exception occurs during execution of said grouping of said existing object code, said associating includes adding a new entry into an exception table for said method, said new entry indicates a range of indices corresponding to said original byte code, said new entry includes a reference to exit code and indicates that said new entry pertains to multiple types of exceptions. - View Dependent Claims (23, 24, 25, 26, 27, 28, 29)
-
-
30. One or more processor readable storage devices having processor readable code embodied thereon, said processor readable code for programming one or more processors to perform a method comprising:
-
adding new exit functionality to existing object code, said existing object code includes a method having original byte code; creating a grouping of all or part of said existing object code; and associating said new exit functionality as a clean up process for said all or part of said existing object code grouped together, said associating includes adding a new entry into said exception table for said method, said new entry indicates a range of indices corresponding to said original byte code, said new entry includes a reference to said new exit functionality and said new entry indicates that said new entry pertains to multiple types of exceptions. - View Dependent Claims (31, 32)
-
-
33. An apparatus, comprising:
-
one or more storage devices; and one or more processors in communication with said one or more storage devices, said one or more processors programmed to perform a method comprising; accessing existing object code, said existing object code includes a method having original byte code; and adding try and finally functionality to said existing object code; and adding a new entry in an exceptions data store for said existing object code, said new entry points to said exit code, said exceptions data store is an exception table for said method, said adding a new entry in said exceptions data store includes adding said new entry into said exception table for said method, said new entry indicates a range of indices corresponding to said original byte code, said new entry includes a reference to said try and finally functionality and indicates that said new entry pertains to multiple types of exceptions. - View Dependent Claims (34)
-
Specification