Commit Graph

26 Commits (af5e93078229bc13b93731d1b3f40ff52ae9992d)

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 a8d1459c08 Rename compiled slot of words to optimized, to reflect what it really means (all words are compiled) 2009-01-23 00:37:02 -06:00
Slava Pestov 2aaf860f47 Experimental optimizations 2008-11-24 06:40:51 -06:00
Slava Pestov 63d109cc04 Remove unused F_CURRY struct from layouts.h 2008-11-16 11:49:32 -06:00
Slava Pestov cc879fa9b7 Tuple layouts are now arrays, instead of built-in types. The superclass
array is now part of the tuple layout object itself, and class hashcodes
are stored alongside class words there. This removes 2 indirections when
reading a superclass, and 3 when reading a superclass hashcode.
2008-11-05 22:20:29 -06:00
Slava Pestov a876005c98 Clean up non optimizing compiler, rewrite more primitives in assembly 2008-07-11 17:25:46 -05:00
Slava Pestov f7eecc7893 Move bit-arrays and float-arrays to extra 2008-07-02 02:03:30 -05: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 c123129b95 Faster GC 2008-05-10 00:42:26 -05:00
Slava Pestov e1ad21a439 Working on shapes 2008-03-26 03:57:48 -05:00
Slava Pestov 98d8621ac1 First class compose, curry is now a tuple class 2008-02-11 13:50:29 -06:00
Slava Pestov d9f7acae0f VM changes for record1 strings 2008-01-31 23:03:10 -06:00
Slava Pestov 6530057512 Starting work on record1 strings 2008-01-31 20:11:46 -06:00
Slava Pestov fcf5801899 Data type cleanups 2008-01-29 23:13:47 -06:00
Slava Pestov c6bc074472 Simplify code heap layout 2008-01-16 15:45:04 -05:00
Slava Pestov b7327b6228 Redo the profiler 2008-01-02 20:36:36 -04:00
Slava Pestov 93e1bdfcd7 Simplify JIT, fix tuples unit tests 2007-12-26 20:02:41 -05:00
Slava Pestov c9646d20c5 Working on smarter recompilation 2007-12-16 15:17:28 -05:00
Slava Pestov f05f919973 Fix code heap compaction bug introduced recently 2007-11-17 04:31:26 -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
U-SLAVA-FB3999113\Slava 4d30644576 Got various things working on CE/ARM 2007-10-13 17:57:29 -04:00
Slava Pestov 98c9e69e1e Use same call frame struct on x86 and ppc 2007-10-05 17:35:51 -04:00
Slava Pestov f400729792 The JIT now compiles quotations when first invoked, not when constructed 2007-09-26 00:26:19 -04:00
Slava Pestov ae74818efa x86 fixes 2007-09-21 23:56:34 -04:00
Slava Pestov a96457cecc Initial import 2007-09-20 18:09:08 -04:00