On 8/17/06, Rana Dasgupta <[EMAIL PROTECTED]> wrote:
- So we will write the inlinable fastpaths wherever possible in pure Java, using an annotated calling convention to call the slowpath ( to support developer freedom :-) ). - Where the fastpaths cannot be expressible in pure Java, we will first use asm to develop the helper and a custom calling convention to invoke and test it - As and when the magic classes are all available( I have not seen Alex and Weldon's code ), we will switch the second set above to Java + magic and start inlining these as well - We can start with the new object allocation helper and .Jet if we want to, I guess - For folks who are interested in this, the core helpers live in vmcore\src\jit\jit_runtime_support.cpp and the exports in vmcore\include\jit_export.h. There is platform specific stuff under vmcore\util\[platform]\base
These make sense. Only one addition is, if we want the work be reused by other GCs easily, the interfaces for fast path routines should be defined. If the set is small (I think it is), we can define one or more Java interfaces including all the methods, then any compatible GC can implement these interfaces to leverage the inlining advantage. The interfaces can be put into kernel class directory, and the implementation code will stay with GC. (I am using GC here as only an example.) Thanks, xiaofeng --------------------------------------------------------------------- Terms of use : http://incubator.apache.org/harmony/mailing.html To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]