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
|
b3918a0d7d
|
support encoding instructions with indexed and scaled memory offsets
|
2007-12-13 18:59:56 -07:00 |
|
Joel Dice
|
ec8fc80ebe
|
refactor compile.cpp to delay code generation until after all byte code has been visited; bugfixes
|
2007-12-13 17:27:09 -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
|
33b2a4a1e8
|
support absolute operands on virtual stack and absolute to memory movs
|
2007-12-11 17:27:04 -07:00 |
|
Joel Dice
|
740e86a084
|
remove unused function; call logicalFlush in pop functions
|
2007-12-11 17:08:55 -07:00 |
|
Joel Dice
|
d70e3aaefb
|
JIT progress: new, invokespecial, etc.
|
2007-12-11 16:52:28 -07:00 |
|
Joel Dice
|
396c979de8
|
fix interpret.cpp build breakage
|
2007-12-11 14:29:04 -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 |
|
Joel Dice
|
6b1f01511b
|
refactor logical stack mechanism in JIT code
|
2007-12-09 16:06:47 -07:00 |
|
Joel Dice
|
f8cda0cd85
|
more JIT compiler progress
|
2007-12-09 15:45:43 -07:00 |
|
Joel Dice
|
5b5a4fe8d7
|
progress on JIT compiler sketch
|
2007-12-09 13:03:21 -07:00 |
|
Joel Dice
|
55b956916f
|
initial sketch of JIT compiler
|
2007-12-08 16:22:13 -07:00 |
|
Joel Dice
|
22edd2e6a4
|
set Verbose to false in heap.cpp
|
2007-12-08 16:19:48 -07:00 |
|
Joel Dice
|
00b7fa3b9d
|
assert that fixed object has object mask before marking it
|
2007-12-07 15:58:38 -07:00 |
|
Joel Dice
|
d057ac6a47
|
mark classes containing object array fields as needing an object mask in type-generator.cpp
|
2007-12-07 10:05:10 -07:00 |
|
Joel Dice
|
c096c8f1e4
|
only consider gen2 oversized if its capacity exceeds (InitialGen2CapacityInBytes / BytesPerWord)
|
2007-12-07 08:35:28 -07:00 |
|
Joel Dice
|
612f4fa0b8
|
shrink gen2 segment if it grows too large
|
2007-12-07 08:31:41 -07:00 |
|
Joel Dice
|
edf415102a
|
assert heap count is empty in System::dispose()
|
2007-12-07 08:30:30 -07:00 |
|
Joel Dice
|
0a63fc3865
|
fix a couple thinkos in jnienv.cpp
|
2007-11-29 08:04:07 -07:00 |
|
Joel Dice
|
d8374a76e2
|
check again for entry in monitorMap after entering the exclusive state in objectMonitor() in case another thread beat us to creating a monitor for the object
|
2007-11-29 08:03:45 -07:00 |
|
Joel Dice
|
5b6a63cbca
|
avoid uninitialized value warnings
|
2007-11-27 16:04:15 -07:00 |
|
Joel Dice
|
5fa7b074b4
|
various threading bugfixes
|
2007-11-27 15:23:00 -07:00 |
|
Joel Dice
|
56a5cf2503
|
fix thinko in jsr_w implementation
|
2007-11-27 15:22:05 -07:00 |
|
Joel Dice
|
6ac124f2fb
|
protect local variables in red-black tree implementation from GC
|
2007-11-27 08:46:31 -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
|
856935acc2
|
more work on new JIT code
|
2007-11-21 15:15:33 -07:00 |
|
Joel Dice
|
a017dab73a
|
handle weak maps properly in hashMapResize, hashMapRemove, etc.; move Processor::parameterFootprint() into machine.h/machine.cpp
|
2007-11-20 15:24:02 -07:00 |
|
Joel Dice
|
ded1016b32
|
clean up compile2.cpp so it compiles (but does not yet link)
|
2007-11-20 09:21:17 -07:00 |
|
Joel Dice
|
6c8a35c341
|
move populateMultiArray from interpret.cpp to process.h
|
2007-11-20 09:20:26 -07:00 |
|
Joel Dice
|
37a1aa72f9
|
sketch of Frame class implementation for new JIT code
|
2007-11-19 14:37:50 -07:00 |
|
Joel Dice
|
2eeff1d50e
|
sketch implementations of lookupswitch and tableswitch
|
2007-11-19 08:11:39 -07:00 |
|
Joel Dice
|
7eb49f272c
|
sketch or stub-out remaining instructions in new JIT code
|
2007-11-18 13:32:31 -07:00 |
|
Joel Dice
|
e9fc1d9057
|
initial sketch of new JIT code
|
2007-11-18 12:19:27 -07:00 |
|
Joel Dice
|
cab88c7e1f
|
remove JIT-related data structures from types.def since that code is being reworked
|
2007-11-18 12:18:37 -07:00 |
|