Commit Graph

10 Commits (7ffbbb13e0ffc533ab7086966cbca975f4f2866d)

Author SHA1 Message Date
Slava Pestov ed1a2855b5 Big code GC refactoring
- Move code block-specific parts of code_gc.c to code_heap.c
- code_gc.c is now a generic malloc-style heap
- New code_block.c to split up large code_heap.c
- Clean up relocation code and remove some duplication
- Fix problems with code heap not being updated properly with uninterned words (bug re
ported by doublec)
- Remove boolean parameter from modify-code-heap primitive
- Less unnecessary fixup speeds up bootstrap slightly
2009-01-24 20:13:17 -06:00
Slava Pestov 32bb531621 Move literal tables out of code heap, instead each code block holds a reference to the literal table 2009-01-24 17:01:01 -06:00
Slava Pestov cfa82cb474 New calling convention for VM primitives:
instead of the Factor side passing the stack pointer as the first parameter, and having the VM save it to stack_chain->top, we instead have the Factor side save it. Eliminates a lot of crud in the VM
2008-11-13 03:20:34 -06:00
Slava Pestov 727cfcba43 Move relocation info out of the code heap and into the data heap 2008-05-30 01:31:05 -05:00
Slava Pestov 4ef0ff1ca1 Remove unnecessary padding 2008-05-29 17:33:11 -05:00
Slava Pestov 4c08b7dc81 Add zip word, better code-room primitive 2008-04-07 20:19:49 -05:00
Slava Pestov b2cb88f497 GC: allocate large objects directly into tenured space 2008-04-05 04:01:46 -05:00
Slava Pestov c6bc074472 Simplify code heap layout 2008-01-16 15:45:04 -05:00
Slava Pestov ef22d57ef6 Improved profiler doesn't require all words to be recompiled to enable/disable 2007-10-28 04:33:36 -04:00
Slava Pestov a96457cecc Initial import 2007-09-20 18:09:08 -04:00