Joel Dice
08b401f337
implement GetStringLength, GetStringChars, and ReleaseStringChars
2008-04-01 17:24:43 -06:00
Joel Dice
95a386f2a6
handle null values in IsSameObject
2008-04-01 16:40:53 -06:00
Joel Dice
4102c97be3
fix bugs wrt calling methods via JNI
2008-04-01 11:37:59 -06:00
Joel Dice
d8889bd4d8
protect local variables from GC in jnienv.cpp
2008-03-20 18:36:53 -06:00
Joel Dice
2edaa82801
prepend copyright notice and license to all source files; add license.txt and readme.txt
2008-02-19 11:06:52 -07:00
Joel Dice
e9826b2d7f
accept foo.bar.Baz as well as foo/bar/Baz in FindClass
2008-01-19 13:30:11 -07:00
Joel Dice
35160e46d8
don't include embedded boot classpath in libvm.a, only the executable
2008-01-18 17:54:36 -07:00
Joel Dice
7252fdcbf3
enter active state immediately upon entry to Release*ArrayElements
2008-01-17 18:26:46 -07:00
Joel Dice
81dde8bdbb
fix thinko in CallLongMethodV
2008-01-17 17:56:55 -07:00
Joel Dice
9a13df3024
fix marshalling return values when calling java methods from native code
2008-01-17 12:55:05 -07:00
Joel Dice
2f83468b80
remove context argument from Allocator::tryAllocate and Allocator::allocate, since we aren't using it after all
2008-01-14 16:37:24 -07:00
Joel Dice
029973943e
increase max heap size to 128MB
2008-01-14 09:38:14 -07:00
Joel Dice
0298865efa
refactor memory allocation to allow better detection and handling of low-memory conditions
2008-01-13 15:05:08 -07:00
Joel Dice
8e5ce11047
refactor memory management code
...
We now support immortal objects, which the GC will scan for references
but not consider for collection. On x86_64, we allocate JIT code memory
via mmap, which lets us map memory into the bottom 2GB of the address
space, ensuring that 32-bit relative jumps and calls work.
2008-01-09 18:20:36 -07:00
Joel Dice
0a63fc3865
fix a couple thinkos in jnienv.cpp
2007-11-29 08:04:07 -07:00
Joel Dice
0bbe9489a7
flesh out call tracing in new JIT code
2007-11-26 16:15:53 -07:00
Joel Dice
115622f54a
add GetArrayLength, NewObject, NewObjectV, MonitorEnter, and MonitorExit JNIEnv methods
2007-11-14 16:22:29 -07:00
Joel Dice
fe0e542afe
finish support for inline vtables in class objects; convert constant pools from arrays to singletons to reduce memory footprint
2007-11-05 14:40:17 -07:00
Joel Dice
6c0e0c37e2
snapshot
2007-11-05 07:28:46 -07:00
Joel Dice
94e9bd0fd2
clean up bootstrap type generation to eliminate redundancy (broken)
2007-11-04 14:15:28 -07:00
Eric Scharff
7f33b7371b
Factored JNIEXPORT into one place. Adopted the visbility attribute that
...
should allow strip to work on Mac OS X
2007-11-01 14:00:22 -06:00
Joel Dice
7f1837fecd
move fixed object (mark and sweep) support into heap.cpp and refine algorithms for determining when and how much to GC
2007-10-28 13:14:53 -06:00
Joel Dice
60072b9fdc
implement fixed object support
2007-10-27 19:54:30 -06:00
Joel Dice
85012ba5b0
fix thinko in NewString() and make NewStringUTF() more robust
2007-10-26 18:04:20 -06:00
Joel Dice
46ac6f92ee
implement JNIEnv::NewString()
2007-10-26 15:23:54 -06:00
Joel Dice
74701b0790
fix thinko parsing properties in JNI_CreateJavaVM
2007-10-25 17:17:38 -06:00
Joel Dice
20cc788fa4
support classloading from jar files compiled into the executable
2007-10-25 16:06:05 -06:00
Joel Dice
b12b779c7f
add support for passing properties to the VM via JNI; use vm.builtins property to specify builtin libraries
2007-10-25 12:33:43 -06:00
Joel Dice
1c90ea5fd6
rewrite main.cpp to use jni.h interface for creating the VM and invoking the main method of the specified class
2007-10-25 09:04:13 -06:00
Joel Dice
3e84d4438a
revise signatures of mark() and set() to take a target object and offset instead of a target object reference, paving the way for immovable objects
2007-10-22 11:22:30 -06:00
Joel Dice
a73f474f34
implement Processor::makeLocalReference()/disposeLocalReference()
2007-09-29 21:33:38 -06:00
Joel Dice
8d983c8a39
refactoring effort to pave the way for JIT compilation
2007-09-23 19:39:03 -06:00
Joel Dice
1f6c2dbbb1
implement Set<Primitive>ArrayRegion()
2007-09-17 16:15:42 -06:00
Joel Dice
dc34707f98
fix Call*Method() calls to wrong run() function
2007-09-13 10:43:33 -06:00
Joel Dice
542888a1d3
bugfixes
2007-09-12 21:15:16 -06:00
Joel Dice
7cb3a30a91
sketch of Runtime.exec() and Calendar; misc bugfixes
2007-09-12 18:21:37 -06:00
Joel Dice
e5987f2a22
JNIEnv and JavaVM method implementations
2007-09-10 17:33:58 -06:00
Joel Dice
a9f9755221
more JNIEnvVTable entries
2007-09-07 17:20:21 -06:00
Joel Dice
bd4d9fdeb2
several things: change object typedef to Object* instead of void* to improve type safety; add JNICALL attributes to JNI functions; implement additional JavaVM methods
2007-09-06 18:21:52 -06:00
Joel Dice
71c7013808
more bugfixes
2007-08-14 07:27:10 -06:00
Joel Dice
7212ba1c30
java/io bugfixes and coverage; jni bugfixes; minor refactoring
2007-07-26 18:06:05 -06:00
Joel Dice
0f7a2137bf
factor system.cpp and class-finder.cpp out of main.cpp
2007-07-20 08:36:31 -06:00
Joel Dice
a77693fb29
snapshot; known bug: finalizers and weak references don't work correctly wrt tenured objects
2007-07-07 19:06:32 -06:00
Joel Dice
f71c77298c
bugfixes
2007-07-07 17:47:35 -06:00
Joel Dice
3bd267b47a
more refactoring
2007-07-06 17:50:26 -06:00