[PATCH] vm: open zipfiles in the classpath only once

2009-07-05 Thread Vegard Nossum
This fixes a performance issue with zip files that appeared because we used to open the zip files for _every_ class that we wanted to load. Signed-off-by: Vegard Nossum vegard.nos...@gmail.com --- vm/classloader.c | 186 +++--- 1 files changed,

[PATCH 2/3] vm: implement bytecode_offset_to_line_no()

2009-07-05 Thread Tomek Grabiec
Signed-off-by: Tomek Grabiec tgrab...@gmail.com --- include/vm/method.h |2 ++ jit/bc-offset-mapping.c | 18 +- test/arch-x86/Makefile |1 + vm/method.c | 11 ++- 4 files changed, 22 insertions(+), 10 deletions(-) diff --git

[PATCH 2/3] vm: implement native_vmruntime_maplibraryname()

2009-07-05 Thread Tomek Grabiec
Signed-off-by: Tomek Grabiec tgrab...@gmail.com --- vm/jato.c | 61 +++-- 1 files changed, 59 insertions(+), 2 deletions(-) diff --git a/vm/jato.c b/vm/jato.c index 865deda..fb7ecb0 100644 --- a/vm/jato.c +++ b/vm/jato.c @@ -130,8

[PATCH 3/3] vm: preliminary support for JNI

2009-07-05 Thread Tomek Grabiec
Support for loading objects with native code, invoking JNI native methods. Few JNI native interface functions implemented. Signed-off-by: Tomek Grabiec tgrab...@gmail.com --- Makefile |4 +- arch/x86/emit-code.c | 24 +++ arch/x86/insn-selector_32.brg |3

Re: [PATCH] vm: implement java/io/VMFile.isDirectory()

2009-07-05 Thread Vegard Nossum
2009/7/5 Tomek Grabiec tgrab...@gmail.com: Signed-off-by: Tomek Grabiec tgrab...@gmail.com ---  vm/jato.c |   24  1 files changed, 24 insertions(+), 0 deletions(-) diff --git a/vm/jato.c b/vm/jato.c index dfdd60b..9086f1d 100644 --- a/vm/jato.c +++ b/vm/jato.c

[PATCH 2/2] vm: fix native_vmobject_getclass()

2009-07-05 Thread Tomek Grabiec
Add missing return after throw_from_native() and put object-class check in assertion Reported-by: Vegard Nossum vegard.nos...@gmail.com Signed-off-by: Tomek Grabiec tgrab...@gmail.com --- vm/jato.c |5 - 1 files changed, 4 insertions(+), 1 deletions(-) diff --git a/vm/jato.c

[PATCH 1/7] regression: compile and run the test cases in alphabetic order

2009-07-05 Thread Vegard Nossum
This makes it somewhat easier to find tests if you're looking them up by name. It looks better too, in my opinion. Signed-off-by: Vegard Nossum vegard.nos...@gmail.com --- Makefile| 50 +++--- regression/run-suite.sh | 46

[PATCH 5/7] vm: add vmtype - bytecode type conversion

2009-07-05 Thread Vegard Nossum
I suspect that we should just make object allocation take a vm type instead (and convert the callers that need it to send a vm type instead of a bytecode type). But that's for a later cleanup, we need this now. Signed-off-by: Vegard Nossum vegard.nos...@gmail.com --- include/vm/types.h |1 +

[PATCH 7/7] regression: add CloneTest

2009-07-05 Thread Vegard Nossum
Signed-off-by: Vegard Nossum vegard.nos...@gmail.com --- Makefile |1 + regression/jvm/CloneTest.java | 64 + regression/run-suite.sh |1 + 3 files changed, 66 insertions(+), 0 deletions(-) create mode 100644

[PATCH 6/7] vm: implement [VM]Object.clone()

2009-07-05 Thread Vegard Nossum
Signed-off-by: Vegard Nossum vegard.nos...@gmail.com --- include/vm/object.h|2 + test/vm/preload-stub.c |1 + vm/class.c |5 ++- vm/jato.c |9 - vm/object.c| 78 5 files changed, 91

[PATCH 2/2] x86: fix bug in emit_jni_trampoline()

2009-07-05 Thread Tomek Grabiec
We cannot overwrite a register which is not saved (ESI) because this will lead to a corruption in JIT code. The proper solution is to copy the call arguments. Signed-off-by: Tomek Grabiec tgrab...@gmail.com --- arch/x86/emit-code.c| 37 +++--