Joel Dice
|
a755368add
|
sketch of new stack mapping algorithm
|
2008-01-07 07:51:07 -07:00 |
|
Joel Dice
|
e30302722e
|
Merge branch 'master' of dice.ecovate.com:git/vm
Conflicts:
src/compile.cpp
|
2008-01-03 16:54:35 -07:00 |
|
Joel Dice
|
4bda925e08
|
fix thinko in Frame::mapSizeInWords; code cleanup
|
2008-01-03 16:53:37 -07:00 |
|
Joel Dice
|
ce2f5dd375
|
fix use of clobbered stack register in multianewarray
|
2008-01-03 14:28:29 -07:00 |
|
Joel Dice
|
2d6d69a573
|
fix thinko in invokeNative2
|
2008-01-03 12:49:07 -07:00 |
|
Joel Dice
|
651a27f73e
|
sign-extend array indexes from 32 to 64 bits on amd64; provide useful messages for certain runtime exceptions
|
2008-01-03 11:37:00 -07:00 |
|
Joel Dice
|
1d7931a654
|
fix GC safety bugs in compile.cpp
|
2008-01-01 18:07:12 -07:00 |
|
Joel Dice
|
bdd62011eb
|
fix up access violation handling on windows; refactor posix segv handling to match API change needed for windows
|
2008-01-01 10:08:47 -07:00 |
|
Joel Dice
|
100fc304ad
|
sketch of windows access violation handling; posix segv handling bugfixes
|
2007-12-31 16:21:57 -07:00 |
|
Joel Dice
|
f151d85f4e
|
intercept SIGSEGV and throw NullPointerExceptions
|
2007-12-31 15:40:56 -07:00 |
|
Joel Dice
|
069a760918
|
snapshot
|
2007-12-30 15:24:48 -07:00 |
|
Joel Dice
|
c147ef4e5c
|
allow concurrent reads and writes on trace node hashtable, requiring only writes to acquire the the class lock
|
2007-12-28 09:50:26 -07:00 |
|
Joel Dice
|
5d65e7c220
|
handle synchronized methods properly in JIT mode
|
2007-12-27 17:02:05 -07:00 |
|
Joel Dice
|
bc44f468de
|
set Verbose=false in compile.cpp
|
2007-12-27 13:33:58 -07:00 |
|
Joel Dice
|
00c095b564
|
pop address off stack in jsr instruction before compiling the code which follows
|
2007-12-27 13:32:34 -07:00 |
|
Joel Dice
|
ea2935f5f1
|
use storeObjectOrAddress in all astore* instructions
|
2007-12-27 09:02:03 -07:00 |
|
Joel Dice
|
848a67b397
|
implement jsr, jsr_w, and ret; various bugfixes to get SWT example working in JIT mode
|
2007-12-26 16:59:55 -07:00 |
|
Joel Dice
|
c0cf15bb37
|
add missing instructions and fix shift long instructions to pop an int instead of a long as the shift count
|
2007-12-26 12:19:45 -07:00 |
|
Joel Dice
|
b361e1b637
|
refactor JIT code to make operand size an explicit part of each applicable instruction
|
2007-12-26 09:56:14 -07:00 |
|
Joel Dice
|
8cd18d6193
|
more JIT bugfixes
|
2007-12-23 13:06:24 -07:00 |
|
Joel Dice
|
271797bead
|
GC safety fix in resolveTarget
|
2007-12-23 12:26:35 -07:00 |
|
Joel Dice
|
f87a78833b
|
fix JIT regressions on amd64
|
2007-12-23 12:18:34 -07:00 |
|
Joel Dice
|
15857135c0
|
more JIT fixes; all tests now pass on x86-32
|
2007-12-23 11:48:22 -07:00 |
|
Joel Dice
|
a020a3f6bb
|
handle various return types properly in invokeNative2
|
2007-12-23 11:09:41 -07:00 |
|
Joel Dice
|
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 |
|
Joel Dice
|
6c532e2ba4
|
fix register allocation bugs in floating point instructions
|
2007-12-22 17:15:46 -07:00 |
|
Joel Dice
|
f116225933
|
fix 64-bit arithmetic support on x86-32
|
2007-12-22 17:00:35 -07:00 |
|
Joel Dice
|
a867e4d587
|
snapshot
|
2007-12-21 17:26:55 -07:00 |
|
Joel Dice
|
06109792e5
|
JIT build fixes
|
2007-12-20 16:19:48 -07:00 |
|
Joel Dice
|
be42c325d8
|
32-bit JIT bugfixes; still broken
|
2007-12-19 18:42:12 -07:00 |
|
Joel Dice
|
7dd81c803a
|
fix native call argument marshalling regression
|
2007-12-19 17:02:32 -07:00 |
|
Joel Dice
|
6895ffaa99
|
GC safety and sign extension fixes
|
2007-12-17 19:09:32 -07:00 |
|
Joel Dice
|
b2cb8e0a69
|
JIT bugfixes; implement or and xor
|
2007-12-17 17:22:37 -07:00 |
|
Joel Dice
|
5c807a4ddc
|
implement shl; fix thinko in Frame::Protector; fix uninitialized value warnings
|
2007-12-17 15:38:59 -07:00 |
|
Joel Dice
|
4c3a2575ba
|
lots of JIT bugfixes; all top-level tests now pass
|
2007-12-17 13:55:31 -07:00 |
|
Joel Dice
|
25ea07aed5
|
snapshot - JIT broken
|
2007-12-16 18:46:46 -07:00 |
|
Joel Dice
|
56a8ce8fb1
|
more JIT bugfixes; implement mul instruction
|
2007-12-16 16:52:38 -07:00 |
|
Joel Dice
|
e4fbadd051
|
JIT-related GC safety fixes
|
2007-12-16 15:41:07 -07:00 |
|
Joel Dice
|
fb29fd11d8
|
more JIT bugfixes
|
2007-12-16 14:30:19 -07:00 |
|
Joel Dice
|
86218ebcb8
|
fix stack pointer calculation in unwind code and set rbx to thread pointer when unwinding
|
2007-12-15 18:00:25 -07:00 |
|
Joel Dice
|
796a64a426
|
lots of JIT bugfixes and cleanups
|
2007-12-15 17:24:15 -07:00 |
|
Joel Dice
|
403a6b0200
|
lots of JIT bugfixes
|
2007-12-14 18:11:01 -07:00 |
|
Joel Dice
|
12e10b57f5
|
JIT bugfixes and new instructions; exception propagation and stack traces are functional but not yet entirely correct
|
2007-12-14 11:27:56 -07:00 |
|
Joel Dice
|
c4347bd7d3
|
more JIT bugfixes and new instructions
|
2007-12-12 17:18:31 -07:00 |
|
Joel Dice
|
b2147c2c99
|
lots of JIT bugfixes and a few new instructions
|
2007-12-12 15:19:13 -07:00 |
|
Joel Dice
|
fe24005ff0
|
remove virtual stack code due to problems with jumps, to be revisited along with other optimizations when everything is working; various bugfixes
|
2007-12-12 11:59:45 -07:00 |
|
Joel Dice
|
fab77e4d96
|
don't call prologue and epilogue from compileDefault, since we want the original rbp and rsp values
|
2007-12-11 18:19:03 -07:00 |
|
Joel Dice
|
d70e3aaefb
|
JIT progress: new, invokespecial, etc.
|
2007-12-11 16:52:28 -07:00 |
|
Joel Dice
|
fdeafe46fd
|
2+2 test now works with new JIT code
|
2007-12-11 14:26:59 -07:00 |
|
Joel Dice
|
286f290665
|
more JIT progress
|
2007-12-10 17:48:09 -07:00 |
|