Commit Graph

177 Commits

Author SHA1 Message Date
9d76d6a04e implement a few more classpath methods, including Collection.addAll and Collection.toArray 2008-02-28 11:37:10 -07:00
b2e7099bbc add javadoc target to makefile 2008-02-26 17:19:15 -07:00
2edaa82801 prepend copyright notice and license to all source files; add license.txt and readme.txt 2008-02-19 11:06:52 -07:00
c1f3d28d24 Fixes dynamic symbol loading bug on Mac OS X.
On OS X, when you call dlopen() on a null library, and then call dlsym(),
the most recently loaded symbols are always used, no matter what flags
we seem to pass to dlopen().  The solution is to explicitly find the name
of the running executable, and open that as a library.
2008-01-28 16:17:22 -07:00
008ac07079 refactor native method resolution to be simpler and more robust 2008-01-28 10:27:02 -07:00
aa081089ce use compile-object to build jni-objects 2008-01-25 16:45:52 -07:00
6bca3a8665 additional tweaks to make embedded resources work on darwin 2008-01-23 10:12:56 -07:00
618684de6e support embedded resources on darwin via binaryToMacho.cpp 2008-01-23 09:56:25 -07:00
c3ce201a59 revert earlier change of breaking libclasspath.a out of libvm.a 2008-01-21 16:58:27 -07:00
d3774d54bc build libclasspath.a, which contains native methods for the classpath 2008-01-21 16:51:23 -07:00
f29b1b9b6f libvm.a should not include classpath code 2008-01-21 16:42:44 -07:00
35160e46d8 don't include embedded boot classpath in libvm.a, only the executable 2008-01-18 17:54:36 -07:00
e6aea41a88 make the default compilation mode 'fast' 2008-01-11 17:35:27 -07:00
48e532f8e9 add debug-fast compilation mode 2008-01-11 17:15:34 -07:00
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
324744d525 makefile cleanups 2008-01-08 15:05:56 -07:00
6057ffd693 whitespace tweak 2008-01-03 19:17:42 -07:00
e81a534986 misc makefile tweaks 2008-01-03 12:49:42 -07:00
f151d85f4e intercept SIGSEGV and throw NullPointerExceptions 2007-12-31 15:40:56 -07:00
5d65e7c220 handle synchronized methods properly in JIT mode 2007-12-27 17:02:05 -07:00
a2181e88c0 include boot classpath in vm arguments on darwin, since we don't build those classes into the executable 2007-12-27 08:46:17 -07:00
6ed28a13c3 fix x86-32 regressions due to JIT refactoring 2007-12-26 10:16:21 -07:00
b361e1b637 refactor JIT code to make operand size an explicit part of each applicable instruction 2007-12-26 09:56:14 -07:00
8cd18d6193 more JIT bugfixes 2007-12-23 13:06:24 -07:00
f87a78833b fix JIT regressions on amd64 2007-12-23 12:18:34 -07:00
15857135c0 more JIT fixes; all tests now pass on x86-32 2007-12-23 11:48:22 -07:00
a020a3f6bb handle various return types properly in invokeNative2 2007-12-23 11:09:41 -07:00
31cf1754ce fix frame trace bug leading to incomplete stack coverage during GC; fix thinko pushing arguments in vmInvoke 2007-12-23 11:01:41 -07:00
6c532e2ba4 fix register allocation bugs in floating point instructions 2007-12-22 17:15:46 -07:00
be42c325d8 32-bit JIT bugfixes; still broken 2007-12-19 18:42:12 -07:00
7dd81c803a fix native call argument marshalling regression 2007-12-19 17:02:32 -07:00
4c3a2575ba lots of JIT bugfixes; all top-level tests now pass 2007-12-17 13:55:31 -07:00
56a8ce8fb1 more JIT bugfixes; implement mul instruction 2007-12-16 16:52:38 -07:00
e4fbadd051 JIT-related GC safety fixes 2007-12-16 15:41:07 -07:00
86218ebcb8 fix stack pointer calculation in unwind code and set rbx to thread pointer when unwinding 2007-12-15 18:00:25 -07:00
796a64a426 lots of JIT bugfixes and cleanups 2007-12-15 17:24:15 -07:00
fdeafe46fd 2+2 test now works with new JIT code 2007-12-11 14:26:59 -07:00
f8cda0cd85 more JIT compiler progress 2007-12-09 15:45:43 -07:00
466c958d2b implement persistent red-black tree in util.cpp based on PersistentSet.java 2007-11-26 18:40:47 -07:00
0bbe9489a7 flesh out call tracing in new JIT code 2007-11-26 16:15:53 -07:00
49ed41daa0 refactor stack walking interface in processor.h and sketch stack walking implementation in compile2.cpp 2007-11-25 16:00:55 -07:00
3570beaba9 specify -DNDEBUG cflag in debug mode to improve performance when debugging large apps 2007-11-14 16:23:15 -07:00
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
19d36cc463 implement impdep1 instruction for lazily loading bootstrap classes 2007-11-05 08:29:43 -07:00
6c0e0c37e2 snapshot 2007-11-05 07:28:46 -07:00
514be2dc87 snapshot 2007-11-04 16:10:33 -07:00
94e9bd0fd2 clean up bootstrap type generation to eliminate redundancy (broken) 2007-11-04 14:15:28 -07:00
bea4a73f54 Merge branch 'singleton' 2007-11-02 15:56:48 -06:00
7dfbd87a40 bugfixes 2007-11-02 15:42:19 -06:00
e820b6a8a4 sketch of singleton support 2007-11-02 15:08:14 -06:00