Hi there!
With a running version of SableVM, it should be feasible to split tasks
around. Using a good debugger, you should be able to look a little
around and see how the beast works. In my last code, I have taken a few
shortcuts (like not worrying too much about memory error conditions,
etc.) to get the thing up and running, but the core structures are in
place and working.
I would ideally like to put my energy in the core interpreter parts. I
have to implement the few missing bytecodes, add threads and GC (and
make the JNI implementation safe in their presence), and patch all the
shortcuts taken.
If you would like to work in a particular area, please let me know.
Also, for starters, there are a few relatively easy cleaning tasks
available like:
- putting all debugging code in functions (debug.[ch])
- making debugging output conditional (2 levels):
- level 1: vm options (verbose jni/gc/class,
Runtime.traceInstructions/traceMethodCalls, etc.)
- level 2: static compiler conditional (#ifdef DEBUG)
- verifying that all necessary "volatile" modifiers are there (and
no spurious ones), and checking that prototypes are consistent with
definitions on their use of modifiers
Have fun!
Etienne
----------------------------------------------------------------------
Etienne M. Gagnon, M.Sc. e-mail: eg...@j-...
Author of SableVM: http://www.sablevm.org/
----------------------------------------------------------------------
|