Joel Dice
a8e9cc521c
move some generally useful bitset functions from heap.cpp to common.h
2008-01-06 12:21:38 -07:00
Joel Dice
6cecdc8295
relax rules for doing major collection; fix overconstrained assertion
2008-01-03 10:09:43 -07:00
Joel Dice
df20ce92f7
set Verbose=false
2008-01-01 18:48:04 -07:00
Joel Dice
eff3ba1418
fix thinko in visitDirtyFixies()
2008-01-01 18:45:23 -07:00
Joel Dice
e797a8f1ca
fix GC bugs involving old fixed objects pointing to new objects
2008-01-01 18:08:27 -07:00
Joel Dice
e4fbadd051
JIT-related GC safety fixes
2007-12-16 15:41:07 -07:00
Joel Dice
b3918a0d7d
support encoding instructions with indexed and scaled memory offsets
2007-12-13 18:59:56 -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
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
94bae01b39
never call wasCollected() on a fixed object, since it will give a random result
2007-10-29 16:12:16 -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
Joel Dice
3e1dbab0f0
move bitmap helper functions to common.h; preserve callee-saved registers in vmInvoke()
2007-10-11 20:52:16 -06:00
Joel Dice
8b17df5b48
set verbose constants to false in heap.cpp
2007-09-19 08:33:43 -06:00
Joel Dice
cd990969cd
fix allocation of large objects in allocate2(); remove references to jscheme and SWT in makefile and test directory
2007-09-19 08:16:49 -06:00
Joel Dice
542888a1d3
bugfixes
2007-09-12 21:15:16 -06:00
Joel Dice
bd4d9fdeb2
several things: change object typedef to Object* instead of void* to improve type safety; add JNICALL attributes to JNI functions; implement additional JavaVM methods
2007-09-06 18:21:52 -06:00
Joel Dice
af6f2bbc46
always call bitsetHasMore() from bitsetNext(), regardless of whether assertions are enabled
2007-08-20 20:30:22 -06:00
Joel Dice
59638543c7
various performance tweaks and bugfixes
2007-08-19 13:45:51 -06:00
Joel Dice
747e7b0371
set minimum value for initial nextGen2 capacity; profile support
2007-08-18 16:42:11 -06:00
Joel Dice
215a52ba54
simplify heap.cpp by allocating segments pessimistically
2007-08-18 15:24:29 -06:00
Joel Dice
a2bd7d0668
GC stress fixes and other bugfixes; classpath progress
2007-07-29 17:32:23 -06:00
Joel Dice
d5a00c4556
break native hashMap type into hashMap and weakHashMap; start investgating GC stress failures related to or uncovered by new string interning support
2007-07-29 12:52:08 -06:00
Joel Dice
9ab88ef619
a static jni method takes the jclass for that method as its second argument; simplify pad() and divide(), and rename divide() to ceiling(); sketch FileInputStream.cpp and FileOutputStream.cpp
2007-07-25 18:48:28 -06:00
Joel Dice
0f7a2137bf
factor system.cpp and class-finder.cpp out of main.cpp
2007-07-20 08:36:31 -06:00
Joel Dice
de9213ce30
finish java/lang/ref/* support; add wrapper classes for primitives
2007-07-19 21:18:25 -06:00
Joel Dice
32dff71994
GC stress fixes
2007-07-19 17:45:44 -06:00
Joel Dice
65c876b5f7
more GC stress fixes
2007-07-17 19:33:00 -06:00
Joel Dice
b848c09a34
more GC stress fixes
2007-07-17 07:22:29 -06:00
Joel Dice
6bac351874
more GC stress fixes
2007-07-16 18:23:23 -06:00
Joel Dice
7dab93de00
fix stack overflow in stress() due to StateResource destructor
2007-07-15 19:07:13 -06:00
Joel Dice
b70e4b368f
sketch of finalizer/weak reference overhaul; type generator bugfixes involving array member layout
2007-07-09 19:43:43 -06:00
Joel Dice
32b5d070fb
simplify monitor lookup; add finalization
2007-07-02 08:19:05 -06:00
Joel Dice
bb16d8e62b
snapshot (broken)
2007-07-01 19:42:35 -06:00
Joel Dice
38cea04322
progress towards thread support
...
This includes support for using the least significant bits of the class
pointer to indicate object state, which we'll use to indicate the
presence of a monitor pointer, among other things.
2007-07-01 15:34:22 -06:00
Joel Dice
137fdcb69e
specify a more conservative initial capacity in initNextGen{1,2}()
2007-06-22 17:29:15 -06:00
Joel Dice
39bbcc03eb
refactor assertions so they can be disabled easily at compile time; fix a couple of method invocation bugs
2007-06-22 17:17:13 -06:00
Joel Dice
5ee38e259a
enable large object support; various GC bugfixes and tweaks
2007-06-22 16:47:57 -06:00
Joel Dice
4d202e4945
fix iinc instruction to use set() instead of direct assignment; add Thread::HeapSizeInWords and Thread::StackSizeInWords
2007-06-22 15:31:45 -06:00
Joel Dice
3a6da507ec
various GC bugfixes
2007-06-22 14:55:11 -06:00
Joel Dice
09f6a34510
snapshot
2007-06-21 21:16:42 -06:00
Joel Dice
d5ce307a2a
switch to a linked heap implementation
2007-06-21 20:13:17 -06:00
Joel Dice
c1d70499c2
add Debug and Verbose constants to heap.cpp
2007-06-21 16:51:55 -06:00
Joel Dice
31e2da3e05
various GC bugfixes
2007-06-21 16:23:35 -06:00
Joel Dice
8d0c5f4186
snapshot
2007-06-21 14:44:35 -06:00
Joel Dice
1992482236
snapshot
2007-06-21 13:43:33 -06:00
Joel Dice
29f9bb84ca
snapshot
2007-06-21 12:35:24 -06:00
Joel Dice
91b9dc7382
various bugfixes
2007-06-20 15:27:22 -06:00
Joel Dice
4e07acb26c
it builds!
2007-06-20 13:20:25 -06:00
Joel Dice
d4d155c834
snapshot
2007-06-20 11:42:13 -06:00
Joel Dice
1a05eb2739
snapshot
2007-06-20 10:58:35 -06:00
Joel Dice
a6e79cc417
snapshot
2007-06-19 23:16:43 -06:00
Joel Dice
459acc3419
snapshot
2007-06-19 22:26:36 -06:00
Joel Dice
caac00e5ff
start rough sketch of GC code in heap.cpp
2007-06-19 20:28:31 -06:00