Commit Graph

101 Commits

Author SHA1 Message Date
Joel Dice
75b3bf98ab pick only unfrozen frame sites in save 2008-12-20 11:13:58 -07:00
Joel Dice
d50febe088 various control-flow related bugfixes 2008-12-11 18:09:36 -07:00
Joel Dice
14e509dfd2 add additional jsr test to Subroutine 2008-11-17 08:21:20 -07:00
Joel Dice
fb770d10fb implement jsr/ret support
The Subroutine test won't pass due to a bug in the stack mapping code
such that objects may be missed during GC.
2008-11-13 17:59:21 -07:00
Joel Dice
4dd1d1eec8 add Subroutine test to cover jsr and ret instructions 2008-11-12 10:07:30 -07:00
Joel Dice
c80eb51c17 Merge branch 'master' into powerpc
Conflicts:

	makefile
	src/assembler.h
	src/compile.cpp
	src/compiler.cpp
	src/compiler.h
	src/finder.cpp
2008-11-11 08:21:48 -07:00
Joel Dice
cae5202be0 split Misc.java into four separate files 2008-11-10 17:07:15 -07:00
Joel Dice
1ba497d90a fix Exceptions test for amd64 2008-11-02 15:25:51 -07:00
Joel Dice
04da77e95b snapshot 2008-11-02 13:35:35 -07:00
Joel Dice
7d6ca28b2f snapshot 2008-10-18 18:15:57 -06:00
Joel Dice
011cbe44e3 test a simple loop in Simple.java 2008-09-07 20:22:27 -06:00
Joel Dice
42123c4c8c Merge branch 'master' of oss.readytalk.com:/var/local/git/avian into powerpc 2008-09-06 19:40:50 -06:00
Joel Dice
ed806ca740 working towards compiling simple methods 2008-09-06 15:25:41 -06:00
Joel Dice
e0e827596e make Long.parseLong more efficient 2008-08-29 11:37:53 -06:00
Zsombor
e1d712ef71 java.util.BitSet implementation 2008-07-13 18:16:55 -06:00
Joel Dice
a016eeaba0 fix Long.toString for Long.MIN_VALUE case 2008-07-13 17:54:44 -06:00
Joel Dice
107ac01304 fix addCR and subtractCR for cases of 64-bit constants on amd64 2008-07-02 08:52:35 -06:00
Joel Dice
e9c37f5ffd add more tests of operations on longs to Misc.java 2008-06-12 11:00:43 -06:00
Joel Dice
fc8c5a2ea9 fix a few bugs revealed by ProGuard optimizations, including too-early constant propagation during array loads and stores 2008-06-10 08:49:13 -06:00
Joel Dice
f05318b787 fix thinkos in d2i and friends 2008-05-22 18:08:41 -06:00
Joel Dice
3326aafdac various 32-bit fixes 2008-05-22 11:15:18 -06:00
Joel Dice
21cb1c3c8f remove Event::validate, since it is no longer needed and actually causes trouble 2008-05-20 16:47:53 -06:00
Joel Dice
36dbf1ad14 fix another local variable caching bug 2008-05-20 15:24:10 -06:00
Joel Dice
d604efd8f5 fix local variable caching bug 2008-05-20 13:11:42 -06:00
Joel Dice
c9f06933e2 test long addition and subtraction in Misc, as well as multidimensional array creation 2008-05-18 09:45:52 -06:00
Joel Dice
b6b84af123 various bugfixes 2008-05-17 21:32:14 -06:00
Joel Dice
7f72a6469d more register marshalling bugfixes; simple swt apps now run on amd64 2008-05-15 17:19:23 -06:00
Joel Dice
bbd1ee5540 various register marshalling bugfixes 2008-05-15 14:00:57 -06:00
Joel Dice
bf08cc4c53 fix array bounds checks 2008-04-30 11:47:25 -06:00
Joel Dice
918193fa60 fix 32-bit right unsigned shifts on amd64 2008-04-30 11:15:21 -06:00
Joel Dice
e2b24263a2 various bugfixes 2008-04-30 09:44:17 -06:00
Joel Dice
1b5f14d847 re-enable tests in Misc and get them working 2008-04-28 09:53:48 -06:00
Joel Dice
d6c3b2327f bugfixes; enums test now succeeds 2008-04-20 13:35:36 -06:00
Joel Dice
525f733171 Merge branch 'master' into compiler
Conflicts:

	src/compile.cpp
	src/compiler.cpp
	src/compiler.h
2008-04-13 13:48:20 -06:00
Joel Dice
907382bcee fix broken field alignment in parseFieldTable which caused longs to overlap other fields on 32-bit systems in certain cases 2008-03-31 18:34:57 -06:00
Joel Dice
9e2e614a15 various fixes to get invokevirtual working 2008-03-10 16:37:21 -06:00
Joel Dice
7cfb89bd2a Merge branch 'master' into compiler 2008-03-09 11:31:55 -06:00
Joel Dice
ec3f42c66e allow test.sh to work in debug-fast and fast modes 2008-03-06 13:28:28 -07:00
Joel Dice
9fe00836f7 fix stack mapping code to do as many passes as necessary
Previously, we had been doing exactly two passes over the event log to
caculate the stack object reference map at each trace point.  It turns
out the correct number of passes depends on how many incorrect
assumptions we make about what the stack looks like at instructions with
multiple predecessors (i.e. targets of jumps and branches).

Each time we detect we've made one or more incorrect assumptions during
a pass, we must do another pass to correct those assumptions.  That pass
may in turn reveal further incorrect assumptions, and so on.
2008-03-05 14:44:17 -07:00
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
b9fa7179d9 more work on new compiler; addition now works 2008-02-11 17:20:32 -07:00
Joel Dice
88a8e74a53 fix register to memory mov1 implementation 2008-01-18 15:01:50 -07:00
Joel Dice
f0d556b0ec fix handling of call target resolution for non-virtual calls 2008-01-11 15:16:24 -07:00
Joel Dice
a9a0252209 add another test to Misc.java 2008-01-10 15:47:54 -07:00
Joel Dice
4c938d496e fix 64-bit bitshifts on 32-bit systems 2008-01-10 13:47:55 -07:00
Joel Dice
259dd643e0 fix over-agressive state reset in state mapping code; logging tweaks 2008-01-07 14:32:41 -07:00
Joel Dice
888dce8f3c bugfixes and cleanups for new stack mapping code 2008-01-07 09:01:35 -07:00
Joel Dice
7a0079e258 add object lifetime tests to GC.java, which currently fail with JIT 2008-01-06 12:20:30 -07:00
Joel Dice
4e3e12e9d4 test fixed-sized object support in GC.java 2008-01-01 18:09:05 -07:00
Joel Dice
f151d85f4e intercept SIGSEGV and throw NullPointerExceptions 2007-12-31 15:40:56 -07:00