Commit Graph

13 Commits (5d3c2c874a91c24b96f3d862a41371ebd45cca47)

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 833d9f9c0b Fix quotation pooling 2008-12-08 21:24:45 -06:00
slava fbc0f33c86 The deploy tool would coalesce equal quotations into one. This created a problem
for the non-optimizing compiler because if the new 'leader' quotation was not
compiled but some of the ones that it replaces were, then calls to the quotation
from contexts where they have to be compiled (eg, compiled if and dip) would no
longer work. Add a `jit-compile' primitive to compile quotations, and call it
as appropriate in `compress-quotations`.
2008-11-24 15:59:27 -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 98d8621ac1 First class compose, curry is now a tuple class 2008-02-11 13:50:29 -06:00
Slava Pestov 028e0075d8 PowerPC support work in progress 2008-01-09 01:33:40 -05:00
Slava Pestov af41a0efe7 Re-implement callstack>array 2007-12-30 16:54:01 -05:00
Slava Pestov 93e1bdfcd7 Simplify JIT, fix tuples unit tests 2007-12-26 20:02:41 -05:00
Slava Pestov c09af2f2c6 Improved JIT compiler design; better REGISTER_ROOT/UNREGISTER_ROOT stuff 2007-12-26 01:45:16 -05:00
Slava Pestov 2e78ce3d4a Profiler fixes 2007-10-29 01:12:27 -04:00
Slava Pestov 5c58a50ac8 VM portion of improved deployment 2007-10-09 02:08:20 -04:00
Slava Pestov fab1453bfc Re-implemented single stepper for new evaluation model 2007-10-03 16:56:49 -04:00
Slava Pestov d3ae70c53d VM cleanup 2007-10-02 17:53:05 -04:00