Commit Graph

23 Commits (14fb58f448c1f32c5e09b4407b9813e599cfe1be)

Author SHA1 Message Date
Doug Coleman 14fb58f448 swap ... 3append -> surround in basis 2008-12-06 18:58:45 -06:00
Slava Pestov e256846acd Tweak string representation; high bit indicates if character has high bits in aux vector. Avoids memory access in common case. Split set-string-nth into two primitives; set-string-nth-fast is open-coded by optimizing compiler. 13% improvement on reverse-complement 2008-12-05 06:38:51 -06:00
Doug Coleman ed2c3a22fe remove >r r> 2008-11-29 13:40:43 -06:00
Slava Pestov ab689c098b Clean up direct literal code and make a first attempt at PowerPC support 2008-11-24 08:16:14 -06:00
Slava Pestov d86524f4bc Non-optimizing compiler now compiles dip, 2dip, 3dip, if, with direct branches instead of indirect branches. 8% bootstrap time improvement on Core Duo 2 2008-11-24 00:23:17 -06:00
Slava Pestov a4d9cdfeb3 Refactor all usages of >r/r> in core to use dip, 2dip, 3dip
Non-optimizing compiler now special-cases dip, 2dip, 3dip following a
literal quotation: this allows us to break the dip/slip meta-circle
without explicit calls to >r/r>
2008-11-23 02:44:56 -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 9cc193ea5b Add unportable tags and fix my-arch word 2008-11-07 22:37:40 -06:00
Slava Pestov 000affca5a Merge branch 'master' of git://factorcode.org/git/factor 2008-11-07 21:09:45 -06:00
Slava Pestov 1b744ab14b Updating code for boot image renaming 2008-11-07 21:09:42 -06:00
unknown 7365959f01 Starting work on Win64 port 2008-11-07 20:33:32 -06:00
Slava Pestov 29279f305e Fix 32-bit bootstrap 2008-11-06 01:58:07 -06:00
Slava Pestov be798dd5e9 We need to internalize tuple layouts in bootstrap, but since they're arrays we have to use a predicate class to detect them 2008-11-06 00:01:50 -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 cdb5c30bd3 Only build a generic word once, even if a compilation unit defines several methods on it, by adding generics to a set and building them at the end. 25% improvement on bootstrap time 2008-11-03 03:51:28 -06:00
Slava Pestov c19f2257f4 Fix permission bits 2008-10-02 08:34:49 -05:00
Slava Pestov 34952ff5c4 Faster call-next-method 2008-10-01 08:20:49 -05:00
Slava Pestov 562118e158 Better fix for *BSD resource path 2008-09-18 00:20:51 -05:00
Slava Pestov 34faf1f786 Fix cache polution issue 2008-09-17 23:28:54 -05:00
Slava Pestov 44f53de164 Move make to its own vocabulary, remove fry _ feature 2008-09-10 20:07:00 -05:00
Slava Pestov 079cbbfb77 Fix generation of 32-bit images on a 64-bit machine 2008-09-10 03:17:22 -05:00
Slava Pestov ac97c1e14c Working on removing delegation slot 2008-09-02 23:21:08 -05:00
Slava Pestov d66f887736 Create basis vocab root 2008-07-28 22:03:13 -05:00