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