Commit Graph

142 Commits

Author SHA1 Message Date
Joel Dice
796a64a426 lots of JIT bugfixes and cleanups 2007-12-15 17:24:15 -07:00
Joel Dice
fdeafe46fd 2+2 test now works with new JIT code 2007-12-11 14:26:59 -07:00
Joel Dice
f8cda0cd85 more JIT compiler progress 2007-12-09 15:45:43 -07:00
Joel Dice
466c958d2b implement persistent red-black tree in util.cpp based on PersistentSet.java 2007-11-26 18:40:47 -07:00
Joel Dice
0bbe9489a7 flesh out call tracing in new JIT code 2007-11-26 16:15:53 -07:00
Joel Dice
49ed41daa0 refactor stack walking interface in processor.h and sketch stack walking implementation in compile2.cpp 2007-11-25 16:00:55 -07:00
Joel Dice
3570beaba9 specify -DNDEBUG cflag in debug mode to improve performance when debugging large apps 2007-11-14 16:23:15 -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
19d36cc463 implement impdep1 instruction for lazily loading bootstrap classes 2007-11-05 08:29:43 -07:00
Joel Dice
6c0e0c37e2 snapshot 2007-11-05 07:28:46 -07:00
Joel Dice
514be2dc87 snapshot 2007-11-04 16:10:33 -07:00
Joel Dice
94e9bd0fd2 clean up bootstrap type generation to eliminate redundancy (broken) 2007-11-04 14:15:28 -07:00
Joel Dice
bea4a73f54 Merge branch 'singleton' 2007-11-02 15:56:48 -06:00
Joel Dice
7dfbd87a40 bugfixes 2007-11-02 15:42:19 -06:00
Joel Dice
e820b6a8a4 sketch of singleton support 2007-11-02 15:08:14 -06:00
Joel Dice
d3592f2dbd tweak makefile to recompile all dirty java files in a single javac invocation for efficiency 2007-11-02 08:01:10 -06:00
Eric Scharff
eb3bd1ce7c Got strip working for Mac OS X 2007-11-01 14:37:51 -06: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
Eric Scharff
b3891debb2 Fixes build for Mac OS X.
If the binary is stripped on Mac OS X, dlsym fails, so builtin native library
calls do not work.  The solution, in this case, is to not strip the binary.
2007-10-30 16:22:53 -06:00
Joel Dice
956106f518 implement StringBuilder.delete() more efficiently 2007-10-29 15:40:05 -06:00
Joel Dice
7aecdb6ce0 undo accidentally-committed makefile change 2007-10-28 18:54:21 -06:00
Joel Dice
a80677d673 fix aliasing warnings 2007-10-28 18:51:38 -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
Eric Scharff
8f604ca7e1 makefile cleanups 2007-10-26 16:16:47 -06:00
Eric Scharff
789cc8e9a2 On the Mac, building in the vm object is complicated. Instead,
rely on external files.
2007-10-26 16:10:12 -06:00
Joel Dice
476a0d70f2 Merge branch 'master' of dice:git/vm
Conflicts:

	makefile
2007-10-26 15:03:53 -06:00
Joel Dice
f354abb4a0 build fixes and refactoring 2007-10-26 15:02:39 -06:00
Eric Scharff
e2ae3201f7 Fix for mac's lacking objcopy - rely on the version in MacPorts 2007-10-26 13:43:14 -06:00
Eric Scharff
4088387cf0 Fix typo in makefile - path must be specified to find 2007-10-26 13:32:19 -06:00
Joel Dice
ccdc7fdda3 eliminate bin2c and use objcopy instead to translate binary data to an object file 2007-10-26 11:38:36 -06:00
Joel Dice
d0089c4d88 makefile fixes 2007-10-26 08:34:54 -06:00
Joel Dice
448d48adc9 superficial makefile tweak 2007-10-25 18:03:26 -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
2de0decfe3 Merge branch 'master' of dice:git/vm
Conflicts:

	src/interpret.cpp
2007-10-25 09:05:24 -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
Eric Scharff
b91307224d Fixed broken mac commit 2007-10-25 09:03:24 -06:00
Eric Scharff
5131cac38a Fix regression for non Mac OS X platforms linking in archives 2007-10-25 08:58:44 -06:00
Eric Scharff
782f7e8feb Fixes build parameters for Mac 2007-10-25 08:55:48 -06:00
Joel Dice
eaf1d205cd more windows port fixes 2007-10-24 11:24:19 -06:00
Joel Dice
75b79e133e use /usr/local/win32 include and lib directories in makefile when cross-compiling for windows 2007-10-24 09:46:44 -06:00
Joel Dice
4dfcaa0f91 build standalone executable (no seperate .so) on all platforms; build libvm.a too 2007-10-23 17:23:55 -06:00
Joel Dice
c686d1ca60 add -k to dlltool command 2007-10-23 14:18:42 -06:00
Joel Dice
eb4cea6291 more work on the windows port; we now have some tests passing 2007-10-23 14:05:59 -06:00
Joel Dice
1381267e70 mork work on the windows port 2007-10-23 11:22:48 -06:00
Joel Dice
58dec050c8 sketch of windows port 2007-10-22 19:00:57 -06:00
Joel Dice
ac4b28ffe6 refactor build system to support cross-compiling 2007-10-22 14:56:27 -06:00
Joel Dice
5fb1495f4d bugfixes and new instructions in compile.cpp 2007-10-16 19:21:35 -06:00
Joel Dice
96ed27c55c various bugfixes to get Tree.java to work 2007-10-16 11:21:26 -06:00