Commit Graph

783 Commits

Author SHA1 Message Date
Joel Dice
d654c943f3 various bugfixes and tweaks in new compiler, primarily related to duplicating stack operands 2008-02-17 13:57:40 -07:00
Joel Dice
6271f878e8 include function prologue and epilogue when compiling 2008-02-12 08:21:51 -07:00
Joel Dice
fa513beb2f rework compiler interface to explicitly accept a size parameter for each operation where relevant 2008-02-11 19:06:12 -07:00
Joel Dice
b9fa7179d9 more work on new compiler; addition now works 2008-02-11 17:20:32 -07:00
Joel Dice
5b2f351f01 adapt compile.cpp to new compiler 2008-02-11 10:21:41 -07:00
Joel Dice
713ff23881 clean up sketch of new compiler 2008-02-09 13:11:37 -07:00
Joel Dice
dc04c63491 more work on new compiler 2008-02-08 16:18:57 -07:00
Joel Dice
7bb69b1c56 more work on new compiler 2008-02-07 17:24:54 -07:00
Joel Dice
4860060bf8 refine sketch of new compiler a bit 2008-02-07 16:47:48 -07:00
Joel Dice
52c447f68b early sketch of new compiler 2008-02-07 12:04:18 -07:00
Joel Dice
94404b7f89 remove unused major collection interval code 2008-02-02 13:34:29 -07:00
Joel Dice
2346714d60 move local reference cleanup from invoke() to invokeNative2(), where it belonged all along 2008-02-01 14:17:54 -07:00
Joel Dice
55e3e8871d trigger major GCs more aggressively under low memory conditions 2008-01-31 17:50:38 -07:00
Joel Dice
063c964d65 refine rule for classes extending Enum in vm.pro 2008-01-30 17:10:49 -07:00
Joel Dice
491955af05 fix recent regression in native method lookup on Windows 2008-01-30 17:09:21 -07:00
Joel Dice
eeac584474 fix thinko in invokeNative2 2008-01-30 17:08:47 -07:00
Dain
8a0ffe186f Adds appending of doubles to a StringBuffer 2008-01-30 16:26:30 -07:00
Joel Dice
34cc390286 fix uninitialized variable warning 2008-01-29 10:02:58 -07:00
Joel Dice
d693393293 remove Machine::lastLibrary and rename firstLibrary to libraries 2008-01-29 08:19:15 -07:00
Joel Dice
7a262d0578 add java.lang.OutOfMemoryError 2008-01-29 08:18:23 -07:00
Joel Dice
12fe480f1c Merge branch 'master' of dice:git/vm 2008-01-28 17:34:20 -07:00
Joel Dice
e15206ba77 update vm.pro to protect a few more classes and a method 2008-01-28 17:34:14 -07:00
Eric Scharff
2363d6e8eb Fix debug build for Mac OS X 2008-01-28 16:35:23 -07:00
Eric Scharff
e5f95ae89d Fix pesky compiler warning on unused variable in linux. 2008-01-28 16:22:16 -07:00
Eric Scharff
8a8a123e02 Merge branch 'master' of ssh://dice.ecovate.com/~dicej/git/vm 2008-01-28 16:17:28 -07:00
Eric Scharff
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
Dain
098e185ebe fixed compile error, function in vm namespace needed to call function in the anonymous namespace 2008-01-28 13:24:32 -07:00
Joel Dice
d68c2e6e2c when looking up native methods, check for both the undecorated and decorated symbol before moving on to the next library 2008-01-28 11:21:09 -07:00
Joel Dice
008ac07079 refactor native method resolution to be simpler and more robust 2008-01-28 10:27:02 -07:00
Joel Dice
de6a1ded92 ensure that we populate the interface vtables of a class which does not declare any new virtual methods but does implement new interfaces relative to its superclass 2008-01-28 08:12:06 -07:00
Joel Dice
707359d555 remove redundant synchronization from Collections.SynchronizedCollection 2008-01-28 08:10:23 -07:00
Joel Dice
941ca81e79 fix build breakage in windows.cpp 2008-01-25 17:48:03 -07:00
Joel Dice
8150b957c9 support JIT compiling methods with unsorted exception handler tables 2008-01-25 17:17:27 -07:00
Joel Dice
aa081089ce use compile-object to build jni-objects 2008-01-25 16:45:52 -07:00
Joel Dice
e403a625d1 second try to fix library symbol lookup 2008-01-25 16:38:26 -07:00
Joel Dice
4ea8b0a1fe Merge branch 'master' of dice:git/vm 2008-01-25 16:25:37 -07:00
Joel Dice
35ada0ea65 search libraries for symbols in the order they are loaded 2008-01-25 16:25:30 -07:00
Dain
6926ca6778 Added parsing of new line characters in properties files. 2008-01-23 16:39:45 -07:00
Joel Dice
6bca3a8665 additional tweaks to make embedded resources work on darwin 2008-01-23 10:12:56 -07:00
Joel Dice
618684de6e support embedded resources on darwin via binaryToMacho.cpp 2008-01-23 09:56:25 -07:00
Joel Dice
73ba3fcef7 fix build breakage in stress mode 2008-01-23 09:55:29 -07:00
Joel Dice
c3ce201a59 revert earlier change of breaking libclasspath.a out of libvm.a 2008-01-21 16:58:27 -07:00
Joel Dice
d3774d54bc build libclasspath.a, which contains native methods for the classpath 2008-01-21 16:51:23 -07:00
Joel Dice
f29b1b9b6f libvm.a should not include classpath code 2008-01-21 16:42:44 -07:00
Joel Dice
125fe3440e allow java.lang.Object with no virtual methods, which may occur due to code shrinking 2008-01-21 16:42:12 -07:00
Joel Dice
c9714c73f2 fix frame map calculations involving exception handlers 2008-01-20 16:03:28 -07:00
Joel Dice
422133d1ba initialize vtables with pointers to JIT function, including native methods, since this allows code shrinkers to eliminate unused methods without confusing the VM 2008-01-20 15:05:59 -07:00
Joel Dice
a60dafaf4f only non-static fields need be preserved in bootstrap classes 2008-01-20 15:00:19 -07:00
Joel Dice
a69c366d07 save 'this' pointer on entrance to synchronized, non-static, non-native methods so we can release the monitor on exit, reguardless of whether the pointer at local index zero is overwritten 2008-01-20 11:55:08 -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