Commit Graph

86 Commits (f96b127ba96c78f615934a934fa87d551a37ed97)

Author SHA1 Message Date
Slava Pestov 57fe0dea48 Fix conflict 2009-11-22 02:12:44 -06:00
Slava Pestov c2b3d6b894 vm: fix fencepost error in write barrier on large object allocation; fixes benchmark.sort crash 2009-11-11 19:31:18 -06:00
Slava Pestov 57c541ea46 vm: eliminating literal table work in progress 2009-11-07 16:16:09 -06:00
Slava Pestov 72ab6ec548 vm: rewrite 'become' primitive so that it uses a slot visitor instead of GC 2009-11-05 19:03:51 -06: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 29a27cfde4 vm: data heap compaction work in progress 2009-10-24 04:18:33 -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 acdcb181e0 vm: working on making heap more generic 2009-10-20 10:22:06 -05:00
Slava Pestov 107c96f642 vm: code heap compaction at runtime using compact-gc primitive 2009-10-16 11:39:35 -05:00
Slava Pestov 43a21deb05 vm: rename data_gc.cpp to gc.cpp 2009-10-08 02:11:29 -05:00
Slava Pestov 6939759f46 vm: working on new object-oriented garbage collector 2009-10-07 15:48:09 -05:00
Slava Pestov 23e133e383 vm: make a new old_space type to encapsulate a few things, split up generations array somewhat 2009-10-07 14:05:09 -05:00
Slava Pestov 6c047127ee Change C++ exception usage back into a longjmp() due to GCC bugs 2009-10-05 03:27:28 -05:00
Slava Pestov c046ff4b23 vm: make heap data-type object-oriented 2009-09-25 20:32:00 -05:00
Phil Dawes a8d1e5187d Added -DREENTRANT option to Makefile
Also renamed FACTOR_MULTITHREADED to FACTOR_REENTRANT
2009-09-16 08:22:18 +01:00
Phil Dawes 1b349f6be7 Added TOOLCHAIN_PREFIX var to makefile 2009-09-16 08:16:17 +01:00
Slava Pestov 8379312bba Revert "Use $CC and $CPP if provided"
This reverts commit 8f9c4a78a4.
2009-06-19 15:04:06 -05:00
Thomas Deniau df6ea31e1c Use $CC and $CPP if provided
Let the user select the compiler he wants to use to compile Factor
by using the supplied $CC and $CPP instead of just discarding them.
If not present, we default to gcc and g++ (the current behaviour).
2009-06-19 18:29:00 +02:00
Slava Pestov 8e17e0a01e VM: use better abstractions for tagged pointers, eliminate get()/set() stuff, clean up array, string, and byte-array element access 2009-05-04 01:00:30 -05:00
Slava Pestov ec28b1ef85 Various VM cleanups, new approach for bignum GC root registration 2009-05-03 05:48:03 -05:00
Slava Pestov b923d548cf Move vmpp to vm 2009-05-02 20:37:18 -05:00
Slava Pestov c3a88ce57b Porting VM to C++ 2009-05-02 04:04:19 -05:00
Slava Pestov 982d409a8b Fix VM compilation on Windows 2009-05-01 02:01:43 -05:00
Slava Pestov 7fae35c414 Makefile: add -Werror 2009-04-29 22:24:36 -05:00
Slava Pestov 5f6c074edd Split up types.c/h into smaller files, remove optimized slot from F_WORD struct 2009-04-28 17:26:11 -05:00
Slava Pestov 4d10105802 Working on inline caching 2009-04-28 03:48:37 -05:00
Slava Pestov e45790a802 Split off parts of quotations.c into jit.c, which is a general codegen facility used by the non-optimizing compiler, and soon to be the profiler and PICs 2009-04-28 00:48:00 -05:00
Slava Pestov 15ef4f651b Sprinkle VM source with assertions, add a missing local root to quotations.c, fix GROWABLE_ARRAY macros for GC safety 2009-04-28 00:11:09 -05:00
Slava Pestov bba30dc284 Fix conflict from master 2009-04-27 17:09:09 -05:00
Slava Pestov 6b5b839e72 Makefile: add SITE_CFLAGS even if DEBUG=1 2009-04-26 16:05:23 -05:00
Slava Pestov dd306a6212 Merge branch 'master' into inline_caching 2009-04-24 16:45:56 -05:00
Slava Pestov 8c5b0373a8 Working on new method dispatch system 2009-04-24 15:31:06 -05:00
Ken Causey 7095ace2c1 Makes it possible to change the names of the exectables named in the variables at the top of the Makefile and still build. Also removes unused IMAGE variable. 2009-04-20 22:11:01 -05:00
Slava Pestov 959e659cdc Makefile: clean target should delete libfactor.dylib too 2009-04-06 21:59:52 -05:00
Doug Coleman 5460a5375e change makefile to use .so instead of .a on unix 2009-03-28 14:41:48 -05:00
Slava Pestov b34877f18e Makefile creates Factor.app/Contents/Frameworks/ if it doesn't already exist, since it's not present in fresh checkouts 2009-03-28 04:33:54 -05:00
Doug Coleman 45ed9b3b80 use -fPIC on all platforms for ffi lib 2009-03-27 15:39:13 -05:00
Doug Coleman 9daf3d2771 fix the makefile for linux64 ffi_test 2009-03-26 20:19:45 -05:00
Doug Coleman 785e3bcfd0 only use -fPIC on the ffi library 2009-03-26 10:47:25 -05:00
Doug Coleman 97283b9857 compile an ffi test library, reduce factor runtime by 6kb! 2009-03-25 13:06:20 -05:00
Doug Coleman 80860f62b2 remove dead freetype code from Makefile 2009-03-25 10:19:27 -05:00
unknown 4019752811 remove hacks from the makefile and build-support 2009-02-04 23:15:10 -06:00
unknown b6c3bc892d Fix the build support for windows again, have the makefile load Config.* files in the top level so that freetype.dll and zlib1.dll targets can make 2009-02-04 18:21:58 -06:00
Doug Coleman eec86d6043 Fix io.launcher on Windows -- Microsoft does the same thing with devenv 2009-02-04 13:05:52 -06:00
Doug Coleman ed7b49df78 Windows vm now tries vm-console.image or vm.image first, then removes -console if it exists and tries to find the image again 2009-01-29 19:57:01 -06:00
Doug Coleman 687b6d211d copying the factor-cygwin.sh script isn't working well, try a fix 2009-01-29 14:01:28 -06:00
Doug Coleman bcb52bb626 fix the Makefile for windows 2009-01-29 13:53:16 -06:00
Doug Coleman 2d960f4103 Create two binaries: factor.com and factor.exe. factor.com is the console version, factor.exe is win32. also make a factor shell script called factor to help cygwin out because it ignores the env vars 2009-01-29 13:15:16 -06:00
Slava Pestov c074740746 Split off data_heap.c from data_gc.c; split off write_barrier.h, local_roots.h from data_gc.h, misc other cleanups 2009-01-24 23:39:00 -06:00
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