US2002170047A1PendingUtilityA1
System and method for transforming object code
Priority: Feb 23, 2001Filed: Feb 23, 2001Published: Nov 14, 2002
Est. expiryFeb 23, 2021(expired)· nominal 20-yr term from priority
Inventors:Brian J. Swetland
G06F 9/445G06F 8/443G06F 9/44557
41
PatentIndex Score
0
Cited by
0
References
0
Claims
Abstract
A unified programming object is described comprising: a shared constant pool comprising global constant pool entries mapped from local constant pool entries of two or more class files; and a plurality of object code copied from the two or more class files to the unified programming object and identified by the global constant pool entries.
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1 . A method comprising:
mapping elements from two or more class files to form a unified programming object, said elements including a plurality of constant pool entries and one or more methods and/or fields.
2 . The method as in claim 1 wherein mapping further comprises:
combining redundant constant pool entries from said class files to form a global constant pool entry in a shared constant pool within said unified programming object.
3 . The method as in claim 2 wherein combining further comprises:
rewriting said global constant pool entries to point to elements contained within said unified programming object,
said elements corresponding to elements contained in said one or more class files and previously identified by said one or more redundant constant pool entries.
4 . The method as in claim 3 wherein one of said global constant pool entries is a methodref entry and said element identified by constant pool entry is a method copied to said unified programming object from said one or more class files.
5 . The method as in claim 4 further comprising:
converting numeric references to local entries within a bytecode in said method to pointers to global constant pool entries.
6 . The method as in claim 5 further comprising:
converting an exception table associated with said method to references to jop objects instead of numeric references to addresses of bytecodes.
7 . The method as in claim 3 wherein one of said global constant pool entries is a fieldref entry and said element identified by constant pool entry is a field copied to said unified programming object from said one or more class files.
8 . The method as in claim 1 further comprising:
validating said two or more class files before mapping said elements to form said unified programming object.
9 . A unified programming object comprising:
a shared constant pool comprising global constant pool entries mapped from local constant pool entries of two or more class files; and a plurality of object code copied from said two or more class files to said unified programming object and identified by said global constant pool entries.
10 . The unified programming object as in claim 9 wherein one of said global constant pool entries is a methodref entry and a portion of said object code is a method identified by said methodref entry.
11 . The unified programming object as in claim 9 wherein one of said global constant pool entries is a fieldref entry and a portion of said object code is a field identified by said fieldref entry.
12 . The unified programming object as in claim 10 wherein said method is comprised of one or more bytecodes including pointers to said global constant pool entries, said pointers being converted from numeric references to global entries when said method was part of one of said class files.
13 . The unified programming object as in claim 9 wherein said global constant pool entries are single-length entries.
14 . The unified programming object as in claim 13 wherein said object code is identified by an offset contained in one of said global constant pool entries.
15 . The unified programming object as in claim 9 wherein a portion of said object code is a Class Info object corresponding a headers of one of said class files.
16 . An article of manufacture containing a sequence of code which, when executed by a machine, cause said machine to perform the operations of:
mapping elements from two or more class files to form a unified programming object, said elements including a plurality of constant pool entries and one or more methods and/or fields.
17 . The article of manufacture as in claim 16 wherein mapping further comprises:
combining redundant constant pool entries from said class files to form a global constant pool entry in a shared constant pool within said unified programming object.
18 . The article of manufacture as in claim 17 wherein combining further comprises:
rewriting said global constant pool entries to point to elements contained within said unified programming object,
said elements corresponding to elements contained in said one or more class files and previously identified by said one or more redundant constant pool entries.
19 . The article of manufacture as in claim 18 wherein one of said global constant pool entries is a methodref entry and said element identified by constant pool entry is a method copied to said unified programming object from said one or more class files.
20 . The article of manufacture as in claim 19 comprising additional code to cause said machine to perform the operation of:
converting numeric references to local entries within a bytecode in said method to pointers to global constant pool entries.
21 . The article of manufacture as in claim 20 comprising additional code to cause said machine to perform the operation of:
converting an exception table associated with said method to references to jop objects instead of numeric references to addresses of bytecodes.
22 . The article of manufacture as in claim 18 wherein one of said global constant pool entries is a fieldref entry and said element identified by constant pool entry is a field copied to said unified programming object from said one or more class files.
23 . The article of manufacture as in claim 16 comprising additional code to cause said machine to perform the operation of:
validating said two or more class files before mapping said elements to form said unified programming object.Join the waitlist — get patent alerts
Track US2002170047A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.