Slava Pestov
|
6f7607eed7
|
vm: clean up card unmarking
|
2009-10-30 03:15:50 -05:00 |
Slava Pestov
|
5536003cf8
|
vm: new GC policy: mark sweep after N megabytes promoted, mark compact if tenured space cannot fit nursery+aging in one contiguous block. N = 32 on 32-bit and 64 on 64-bit
|
2009-10-30 02:26:57 -05:00 |
Slava Pestov
|
a1aac42786
|
vm: clean up gc events, remove -verbosegc switch, fix compaction bug
|
2009-10-27 21:31:28 -05:00 |
Slava Pestov
|
a7b55e7068
|
vm: use STL in free list, makes finding largest contiguous free block slightly faster
|
2009-10-27 18:22:08 -05:00 |
Slava Pestov
|
d95a98eb9c
|
vm: add primitives for getting at GC events, data-room and code-room primitives now return structs instead of arrays
|
2009-10-27 03:32:28 -05:00 |
Slava Pestov
|
91cec17e52
|
vm: get GC events working, -verbosegc switch now produces more info
|
2009-10-26 23:57:26 -05:00 |
Slava Pestov
|
a60bf14673
|
vm: add gc_event
|
2009-10-26 22:12:44 -05:00 |
Slava Pestov
|
e793a72060
|
vm: remove crummy old GC stats, split off free list code, clean up various other things
|
2009-10-26 22:08:35 -05:00 |
Slava Pestov
|
c30df42e48
|
vm: make compaction its own gc_op
|
2009-10-25 14:02:14 -05:00 |
Slava Pestov
|
7d8c85443e
|
vm: vm: fix large object allocation logic and change default heap image size for 2009
|
2009-10-25 13:27:40 -05:00 |
Slava Pestov
|
cf247c23a2
|
vm: room. now prints mark stack size, and total/contiguous free space
|
2009-10-25 13:18:06 -05:00 |
Slava Pestov
|
49baf397f4
|
vm: tagged typechecks work better with DEBUG=1
|
2009-10-25 08:07:36 -05:00 |
Slava Pestov
|
b7181d14a8
|
vm: debugging compaction
|
2009-10-25 08:07:21 -05:00 |
Slava Pestov
|
b6a21b19a9
|
vm: fix compaction when callback heap has entries in it
|
2009-10-25 00:06:45 -05:00 |
Slava Pestov
|
0c1e266302
|
vm: got data heap compaction working
|
2009-10-24 23:51:14 -05:00 |
Slava Pestov
|
0b65b194c9
|
vm: fix 'data-room' primitive to report correct sizes for tenured space
|
2009-10-24 23:49:33 -05:00 |
Slava Pestov
|
fae27fb361
|
vm: make some more ctors explicit just for kicks
|
2009-10-24 23:02:58 -05:00 |
Slava Pestov
|
62e718eaa9
|
vm: combine heap_block and code_block structs, eliminates some boilerplate
|
2009-10-24 21:33:31 -05:00 |
Slava Pestov
|
45a955b5bb
|
vm: fix typo in card tracing logic
|
2009-10-24 04:43:11 -05:00 |
Slava Pestov
|
d855593f1f
|
vm: clean up code heap visitor
|
2009-10-24 04:36:29 -05:00 |
Slava Pestov
|
03f4b4cdd6
|
vm: move binary_payload_start() method from factor_vm to object class
|
2009-10-24 04:27:45 -05:00 |
Slava Pestov
|
29a27cfde4
|
vm: data heap compaction work in progress
|
2009-10-24 04:18:33 -05:00 |
Slava Pestov
|
fd1e992e7d
|
vm: factor out code that visits object slots and code heap blocks into slot_visitor and code_block_visitor
|
2009-10-24 03:54:53 -05:00 |
Slava Pestov
|
810e309e0c
|
vm: rename userenv to special_objects
|
2009-10-23 00:33:53 -05:00 |
Slava Pestov
|
6597e0ea3a
|
vm/mark_bits.hpp: fix incorrect constructor argument order
|
2009-10-22 23:41:02 -05:00 |
Slava Pestov
|
3394309659
|
Merge branch 'master' into new_gc
|
2009-10-22 05:40:57 -05:00 |
Slava Pestov
|
3d5c3935ad
|
vm: fix compilation
|
2009-10-22 06:38:02 -04:00 |
Slava Pestov
|
f24942e063
|
vm: clean up signal handling and add EXC_BAD_INSTRUCTION Mach exception handler for OS X, since signal handlers cannot change the stack pointer
|
2009-10-22 05:22:59 -05:00 |
Joe Groff
|
432d4f79e9
|
give better error message for windows exceptions, and don't lop off the top end of the exception code when the vm throws the error
|
2009-10-21 23:37:51 -05:00 |
Slava Pestov
|
606a805d7d
|
vm: debugging mark and sweep
|
2009-10-21 23:24:35 -05:00 |
Slava Pestov
|
40351d40be
|
vm: use iostreams instead of printf for debug messages, clean up a few things
|
2009-10-21 20:12:57 -05:00 |
Slava Pestov
|
af855b7fa9
|
vm: debugging mark-sweep
|
2009-10-21 19:41:54 -05:00 |
Slava Pestov
|
814f6371d6
|
vm: mark sweep gc for tenured space work in progress
|
2009-10-20 22:20:49 -05:00 |
Slava Pestov
|
f0816d72f1
|
vm: split off free_list_allocator from heap class, rename zone to bump_allocator
|
2009-10-20 15:26:11 -05:00 |
Slava Pestov
|
a9dbbd1efb
|
vm: simplify code heap by eliminating HeapLayout template parameter
|
2009-10-20 14:01:46 -05:00 |
Slava Pestov
|
e482940dca
|
vm: object start recording in cards is now independent of allocation strategy
|
2009-10-20 13:47:04 -05:00 |
Slava Pestov
|
d22d5466fc
|
vm: move factor_vm::untagged_object_size() to object::size()
|
2009-10-20 13:13:39 -05:00 |
Slava Pestov
|
d85d84697a
|
Change data heap alignment to 16 bytes
|
2009-10-20 12:45:00 -05:00 |
Slava Pestov
|
50f9bf67a7
|
vm: fix crash when converting a callstack to an array
|
2009-10-20 12:19:02 -05:00 |
Slava Pestov
|
acdcb181e0
|
vm: working on making heap more generic
|
2009-10-20 10:22:06 -05:00 |
Slava Pestov
|
838a44e901
|
vm: change code heap layout somewhat, remove unused allocation bitmap from mark_bits
|
2009-10-20 09:37:24 -05:00 |
Slava Pestov
|
d585aa861c
|
Merge branch 'master' of git://factorcode.org/git/factor
|
2009-10-19 21:44:56 -05:00 |
Slava Pestov
|
cafa838588
|
Merge branch 'master' of git://factorcode.org/git/factor into new_gc
|
2009-10-19 21:44:36 -05:00 |
Slava Pestov
|
21d29b3961
|
vm: change code heap alignment to 16 bytes instead of 32 to reduce image size
|
2009-10-19 06:10:39 -05:00 |
Slava Pestov
|
4ddd63d83e
|
vm: move compaction algorithm to mark_bits.hpp since it doesn't rely on properties of heaps per se
|
2009-10-19 03:05:20 -05:00 |
Slava Pestov
|
ac25b8ebbb
|
vm: new mark_bits data structure replaces hashtable when compacting code heap
|
2009-10-19 02:21:11 -05:00 |
Slava Pestov
|
8ef0d411ac
|
vm: cleanup
|
2009-10-19 00:16:32 -05:00 |
Slava Pestov
|
464aac14cf
|
vm: working on new compaction implementation
|
2009-10-19 00:07:43 -05:00 |
Slava Pestov
|
a81f757a62
|
vm: fix conflict in image.cpp
|
2009-10-18 20:54:13 -05:00 |
Slava Pestov
|
2e65366c6b
|
vm: rename myvm and parent_vm instance variables to parent, clean up casts in primitive definitions
|
2009-10-18 20:31:59 -05:00 |