James Cash
db1a69f6aa
Adding support for ' quote syntax in lisp.parser
2008-11-06 00:20:51 -05: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
Aaron Schaefer
c9449cf3f5
Merge branch 'master' of git://factorcode.org/git/factor
2008-11-05 23:05:37 -05:00
Aaron Schaefer
15257b91ac
Refactor math.text.english using new combinators
2008-11-05 22:59:06 -05:00
Slava Pestov
4e98751ce0
Remove a conditional branch from all tuple dispatches, since we don't have to check if the class height is at least 1; and remove memory accesses from tuple dispatch where all tuples are height 1
2008-11-05 20:23:38 -06:00
Slava Pestov
fbb958da82
Fix lambda-method forget
2008-11-05 18:59:58 -06:00
Slava Pestov
4fd1767768
Old fix for classes-intersect? no-method bug was incorrect; we were
...
ignoring anonymous classes in compiled-generic-crossref. Also,
forget* now calls reset-word so that references to predicates of
forgotten classes don't break the compiler with a similar error.
2008-11-05 18:32:02 -06:00
Aaron Schaefer
373c05ee49
Forgot to inline collect-benchmarks word
2008-11-05 19:24:19 -05:00
Slava Pestov
81c7320f7b
mason.updates was calling download-my-image, which uses the current CPU/OS instead of target-cpu and target-os. So doing 32-bit builds from a 64-bit Factor instance didn't work... oops
2008-11-05 05:14:35 -06:00
Slava Pestov
7f59942219
Change title to be more consistent
2008-11-05 04:28:13 -06:00
Slava Pestov
affb48a067
Fix docs
2008-11-05 04:27:12 -06:00
Slava Pestov
2239f4fb99
More work on PowerPC backend; change register usage, free up some more integer and float regs (untested)
2008-11-05 04:20:35 -06:00
Slava Pestov
7aa530c64e
Fix ABOUT: docs
2008-11-05 04:16:15 -06:00
Slava Pestov
dae41147fe
%bignum>integer now takes a temporary register since this is useful on both x86 and ppc
2008-11-05 04:16:08 -06:00
Slava Pestov
8b7c47a68b
Clean up x86 backend: move cpu.x86.architecture to cpu.x86, use branchless arithmetic in some intrinsics
2008-11-05 04:15:48 -06:00
Slava Pestov
10d3b4a55d
New PPC backend (untested)
2008-11-05 00:31:08 -06:00
Aaron Schaefer
db7002effa
Merge branch 'master' of git://factorcode.org/git/factor
2008-11-05 01:11:58 -05:00
Aaron Schaefer
b5b207a484
Add test files for all Project Euler solutions
2008-11-05 01:11:15 -05:00
Slava Pestov
c8521ad826
Add tool to dump live intervals
2008-11-04 17:23:20 -06:00
Slava Pestov
22f11f24c9
Move simple-table. to prettyprint since its generally useful and not specific to tools.time
2008-11-04 17:23:08 -06:00
Slava Pestov
d8345b5eda
Update PPC non-optimizing compiler backend: there are three new sub-primitives to support
2008-11-04 06:07:19 -06:00
Slava Pestov
fb64c1cb45
Fix class<=; a predicate class derived from a union was not reported as being contained in the union
2008-11-04 04:59:54 -06:00
Slava Pestov
cc94894441
Fix notorious classes-intersect? bug, or at least one manifestation thereof. Turns out that we may temporarily end up with forgotten classes in the compiled-generic-crossref table. This is not a problem, since subsequently the words that reference forgotten classes will presumably be redefined and recompiled, but it does mean that (compiled-generic-usage) does need to handle this case
2008-11-04 03:38:44 -06:00
Slava Pestov
9b492b55e0
Fix minor leak: class-caches were not reset if a class was forgotten
2008-11-04 02:17:37 -06:00
Slava Pestov
7134fad54c
Add more unit tests highlighting the problem: predicate -vs- union comparison is broken
2008-11-04 02:17:22 -06:00
U-SLAVA-DFB8FF805\Slava
18fdf64931
Merge branch 'master' of git://factorcode.org/git/factor
2008-11-04 00:05:04 -06:00
Slava Pestov
88d5dac02f
Remove obsolete code from unfinished
2008-11-04 00:54:57 -06:00
Slava Pestov
46830bb38d
Fix another name clash in tests; putting all compiler tests in compiler.tests vocab is probably not good
2008-11-04 00:46:06 -06:00
Slava Pestov
4a37bcb757
Strip out remake-generics-hook, since otherwise it slurps in a lot of meta-programming machinery, increasing deployed image size by about 200kb for hello-world
2008-11-04 00:36:16 -06:00
Slava Pestov
1af3b8ed65
If a register is spilled and the reload location is also a copy, we chicken out and don't coalesce. This is suboptimal but it's not clear to me how to implement it cleanly, and SSA graph coloring will solve this problem eventually anyway
2008-11-04 00:32:56 -06:00
U-SLAVA-DFB8FF805\Slava
72b34c7b47
Fix visibility of check_sse2 symbol; DDLEXPORT doesn't work in gas source
2008-11-04 00:04:18 -06:00
Aaron Schaefer
e763b5a335
Add unit tests for Project Euler
2008-11-04 01:04:03 -05:00
Aaron Schaefer
e923ec16d3
Rewrite of collect-benchmarks in ave-time vocab
2008-11-03 22:56:32 -05:00
Slava Pestov
efcb916e35
Handle a jump to a jump by cloning the block, in the same way we optimize jumps to returns
2008-11-03 21:02:34 -06:00
Slava Pestov
b4d3473d5e
Tuple parsing didn't handle line breaks properly; if scan returns f, must throw unexpected-eof
2008-11-03 21:01:50 -06:00
Slava Pestov
3e75e0f8b5
Update word naming conventions
2008-11-03 21:00:27 -06:00
Slava Pestov
06b99c31ee
Fix regression. If a parsing word called the compiler, it might compile a caller of a generic before the generic gets built, which would throw an error since the inferred effect of the generic might have less inputs than the combination's dispatch#
2008-11-03 20:59:48 -06:00
Aaron Schaefer
9d06315809
Clean up of common Project Euler code
2008-11-03 20:14:37 -05:00
Aaron Schaefer
9be67e7df7
Add meta data to Project Euler problem 186
2008-11-03 19:02:57 -05:00
Aaron Schaefer
9152b6d5f0
Cleanup of Project Euler problem 92
2008-11-03 18:25:50 -05:00
Aaron Schaefer
b13b120244
Merge branch 'master' of git://factorcode.org/git/factor
2008-11-03 16:22:44 -05:00
Aaron Schaefer
92e2ee3509
Clean up Projece Euler solutions
2008-11-03 16:20:36 -05:00
Slava Pestov
dc85ed3d56
Fix help lint: links to obsolete article
2008-11-03 08:08:28 -06:00
Slava Pestov
4d25f1fff6
Add some missing meta-data
2008-11-03 08:06:59 -06:00
Slava Pestov
00fc4eb179
Fix Windows bootstrap: check_sse2 was not DLLEXPORT
2008-11-03 07:27:14 -06:00
Slava Pestov
82e9eedd39
Forgot about float= intrinsic
2008-11-03 07:15:09 -06:00
Slava Pestov
75e9708488
Oops
2008-11-03 06:50:59 -06:00
Slava Pestov
e6f6cd5d93
Fix USING: -- you can now make ppc images, they just don't work yet
2008-11-03 06:40:14 -06:00
Slava Pestov
b649c01de6
Fix name clash with templates.factor
2008-11-03 06:34:56 -06:00
Slava Pestov
59f4f25b91
Loop alignment: appears to be a small win for reverse-complement
2008-11-03 06:20:51 -06:00