Slava Pestov
eb8c621b6f
Faster generic arithmetic on fiixnums: both-fixnums? sub-primitive performs a check if the top two stack items are both fixnums with a single conditional branch
2008-11-28 08:35:02 -06:00
Slava Pestov
6dfce7d4e7
load-locals is a primitive now, change semantics of get-locals to bum out 2 instructions from the sub-primitive
2008-11-27 22:30:29 -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
f520823d5c
Minor speedup
2008-11-23 04:22:38 -06:00
Slava Pestov
7788b3e0db
Merge branch 'master' into microseconds
2008-11-23 03:06:32 -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
89440b2a23
curry and compose now check their inputs
2008-11-21 04:37:17 -06:00
Slava Pestov
ae4f9a2809
Add fixnum/mod-fast and fixnum/i-fast subprimitives
2008-11-21 02:11:36 -06:00
Slava Pestov
8819f23312
Replace millis primitive with micros primitive
...
Add millis as a library word
sleep now takes either a duration or a microsecond count; code using durations doens't need to be updated, code using millisecond counts updated to use durations for the most part
2008-11-19 01:50:05 -06:00
unknown
78eeaddcf2
Add winnt-x86.64 boot image name
2008-11-07 20:34:26 -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
44a2499c17
fixnum-shift-fast and fixnum-mod subprimitives
2008-11-03 01:18:35 -06:00
Slava Pestov
69a0ad5e42
Ricing locals
2008-10-23 05:49:32 -05:00
Doug Coleman
78a529b1c3
remove directory from the vm
2008-10-19 13:27:59 -05:00
Doug Coleman
27c36974a7
remove primitives from core, update usages
2008-10-18 21:42:01 -05:00
Slava Pestov
c19f2257f4
Fix permission bits
2008-10-02 08:34:49 -05:00
Slava Pestov
cc7f9e7731
Fixing make-image
2008-09-11 00:40:25 -05:00
Slava Pestov
6b07c85fec
Minor fixes here and there for delegation slot removal
2008-09-03 06:05:50 -05:00
Slava Pestov
e1716d92b3
Remove delegation slot
2008-09-03 03:46:56 -05:00
Slava Pestov
f5fbd94a4c
New compiled crossref implementation
2008-08-31 01:34:00 -05:00
Slava Pestov
86e04a81dc
Fix conflict
2008-08-30 02:32:17 -05:00
Slava Pestov
b3f3068bdc
Massive focused action #1
2008-08-30 00:09:45 -05:00
Slava Pestov
86f11713e3
Fixing some more bugs
2008-08-22 03:12:15 -05:00
Slava Pestov
6047429401
More unit test fixes
2008-07-29 16:57:30 -05:00
Slava Pestov
8a2f1d0451
More core cleanups
2008-07-28 22:57:43 -05:00
Slava Pestov
d66f887736
Create basis vocab root
2008-07-28 22:03:13 -05:00
Slava Pestov
1f39689e76
Fix bootstrap
2008-07-25 19:27:03 -05:00
Slava Pestov
9d7a1a70ee
Fix bootstrap
2008-07-20 04:24:04 -05:00
Slava Pestov
9e685d7ac4
Refactor curry/compose a bit for upcoming frontend changes
2008-07-20 01:15:58 -05:00
Slava Pestov
37af854b18
Move io.thread to stage2
2008-07-18 19:25:28 -05:00
Slava Pestov
ac2bf0b87d
Adding inline recursive declarations
2008-07-18 19:22:59 -05:00
Slava Pestov
d0ae6bdb8f
Make array length foldable
2008-07-16 16:48:09 -05:00
Slava Pestov
aea935638c
Fix bootstrap
2008-07-13 23:26:43 -05:00
Slava Pestov
16b85df5db
Fixes and a small optiimization
2008-07-12 22:27:28 -05:00
Slava Pestov
a876005c98
Clean up non optimizing compiler, rewrite more primitives in assembly
2008-07-11 17:25:46 -05:00
Slava Pestov
bdd5a79177
Compiler fix
2008-07-10 02:52:55 -05:00
Slava Pestov
5d9c1ea0a0
Documentation updates, rename unfold to produce
2008-07-10 01:00:27 -05:00
U-SLAVA-DFB8FF805\Slava
0051a50b75
Move general shufflers and combinators into generalizations, move narray there too
2008-07-07 19:36:33 -05:00
Slava Pestov
423ad4503b
Minor oversights
2008-07-07 19:11:49 -05:00
Slava Pestov
a8808b7087
Non-optimizing compiler now inlow inlines some primitives, this improves bootstrap time
2008-07-07 10:39:04 -05:00
Slava Pestov
9256e31d66
Fix feps on 64 bit
2008-07-05 21:00:05 -05:00
Slava Pestov
ef2fddb1ec
Fix conflict
2008-07-03 16:46:21 -05:00
Eduardo Cavazos
4238657a26
bootstrap.stage2: use count
2008-07-03 13:47:11 -05:00
Slava Pestov
f7eecc7893
Move bit-arrays and float-arrays to extra
2008-07-02 02:03:30 -05:00
Slava Pestov
f8fd065fc5
Initial value for alien slots is a BAD-ALIEN
2008-07-01 16:33:45 -05:00
Slava Pestov
f7b7001f39
BOA constructors now check types
2008-06-30 01:44:58 -05:00
Slava Pestov
3b41e31584
More tuple declaration work
2008-06-29 21:37:57 -05:00
Slava Pestov
0be00f03e6
Mirrors now check sot t slot types, support type coercion for setters, instance? now infers, better transform for 'new', more efficient 'case' where keys are all wrappers
2008-06-29 02:12:44 -05:00
Slava Pestov
b36e06d0d6
Builtinn types now use new slot accessors; tuple slot type declaration work in progress
2008-06-28 02:36:20 -05:00