Björn Lindqvist
2f835d3666
compiler.tree.propagation.*: implements downgrading to fixnum for the
...
mod word, maybe a first step in solving #224
factor_vm::primitive_bignum_mod is changed so that it outputs a fixnum
if the value is small enough. Then the compiler can take advantage of
knowing that expressions like [ >bignum 10 mod ] always result in a
fixnum [-9,9] and inline more arithmetic.
2015-06-27 16:14:58 +02:00
Björn Lindqvist
72fe466ac9
compiler.tree.propagation.known-words: more precise output class
...
assignment for all mod words
The compiler can better optimize a quotation like [ 20 fixnum-mod 55 + ]
if it knows fixnum-mod outputs a fixnum.
2015-06-27 16:14:57 +02:00
Doug Coleman
44e8e7b344
primitives: Change PRIMITIVE: to check that the word is in that vocabulary and the stack effect is correct.
...
Use PRIMITIVE: in core/ and basis/
2015-06-25 18:02:03 -07:00
Doug Coleman
09e4606791
compiler.cfg.debugger: alien-invoke insn nodes were printing double quotes in the dot file output. If you would pprint a string, instead print that string so the double quotes are not present in the output.
2015-06-24 18:46:39 -07:00
Doug Coleman
9d2c641a99
io.standard-paths: On mac when you launch Factor from the doc it doesn't have the login shell PATH variable for paths such as /usr/local/bin for homebrew. Add a word that finds things in this path as well.
...
Note that launching a binary found this way needs the full path, as the PATH variable itself is not modified and the binary will still not be in PATH if it wasnt before.
2015-06-24 18:44:09 -07:00
John Benediktsson
8325837b84
locals.parser: fix help-lint warning.
2015-06-22 18:42:16 -07:00
John Benediktsson
e69d0a7b45
locals.parser: only need to clone manifest.
2015-06-22 15:59:15 -07:00
John Benediktsson
fc467b72a5
functors: make sure to unuse functor-words, some cleanup.
2015-06-22 15:58:59 -07:00
Björn Lindqvist
d32b9f9c90
locals.parser: docs for with-lambda-scope and some random doc additions
2015-06-22 11:15:48 +02:00
Björn Lindqvist
976961bfbd
locals.parser: new word with-lambda-scope to handle lexical variables
...
better, fixes #1338
By cloning the relevant parts of the manifest, you ensure that the
quotation with-lambda-scope runs can't "leak" local names in case of
restartable errors.
2015-06-22 11:15:47 +02:00
John Benediktsson
16abe47b03
compiler.tree.propagation: fix tests for bit? inlining.
2015-06-17 20:52:05 -07:00
John Benediktsson
621b50a8e5
cpu: enable bit-test intrinsic for fixnum-bit?.
2015-06-17 19:11:10 -07:00
John Benediktsson
fda90b2beb
math.primes.erato: add some comments at the top.
2015-06-17 10:19:00 -07:00
John Benediktsson
619ffe1884
persistent.vectors: bring private back (broken in 4191882a68).
2015-06-17 08:23:34 -07:00
Doug Coleman
3705d6e387
persistent.vectors: fix unbalanced private
2015-06-16 22:16:49 -07:00
John Benediktsson
423b2afb91
compiler.cfg.linear-scan.allocation: fix docs for free-position.
2015-06-16 20:38:34 -07:00
Doug Coleman
4eb6fd6624
gtk, opengl: try out update-library
...
opengl.gl: Only find the opengl library if we are on unix and not on macosx.
2015-06-16 20:14:04 -07:00
Doug Coleman
5908f301b9
alien.libraries: Add update-library. See #1185
2015-06-16 19:56:34 -07:00
John Benediktsson
b2adcaaac9
dlists: fix unbalanced-private-declaration.
2015-06-16 18:51:25 -07:00
John Benediktsson
8b6c743e02
math.primes.erato.fast: use literals to show how the wheel is calculated.
2015-06-16 18:44:08 -07:00
Björn Lindqvist
3678f62508
x86.64: change the register order so that RBX is allocated before RCX
2015-06-16 18:28:32 -07:00
Björn Lindqvist
8c8605d11a
compiler.cfg.linear-scan.*: more tests and docs for allocation and state
2015-06-16 18:28:32 -07:00
Björn Lindqvist
78fe8bf1dc
compiler.cfg.linear-scan.*: dont use a hashtable here, it fixes register
...
allocation so it's always in the same order as machine-registers
2015-06-16 18:28:32 -07:00
John Benediktsson
64db5c5bb4
math.primes.erato: faster compressed sieve by two improvements:
...
1) fixnum math in unmark-multiples
2) 3 upper sqrt 2 <range> in sieve
2015-06-16 08:26:48 -07:00
John Benediktsson
7e23c12c0f
math.primes.erato.fast: some bignum fixes and more tests.
2015-06-16 08:20:32 -07:00
John Benediktsson
e3ec051527
math.primes: fix "11 >bignum prime?".
2015-06-15 23:02:39 -07:00
John Benediktsson
1303d37358
editors.brackets.windows: need USE: editors.brackets.
2015-06-15 20:09:45 -07:00
John Benediktsson
db42e12853
math.primes.erato.fast: adding fast Sieve of Eratosthenes.
2015-06-15 19:51:02 -07:00
John Benediktsson
588a05bc62
editors.brackets: add support for Mac OS X.
2015-06-15 09:45:23 -07:00
Dimage Sapelkin
69a381085b
Create summary.txt
2015-06-15 09:35:38 -07:00
Dimage Sapelkin
ad21e9d904
Create authors.txt
2015-06-15 09:35:38 -07:00
Dimage Sapelkin
ee37e69cba
Create brackets.factor
2015-06-15 09:35:38 -07:00
Dimage Sapelkin
178b1971d5
Create brackets-docs.factor
2015-06-15 09:35:38 -07:00
John Benediktsson
d4e3adca57
compiler.cfg.ssa.destruction.coalescing: lookup variable once not twice.
2015-06-15 09:11:16 -07:00
John Benediktsson
c44aaf58be
cpu.ppc: remove use of with-scope in favor of locals.
2015-06-15 09:11:03 -07:00
John Benediktsson
255b60ef8d
cpu.x86: remove use of with-scope in favor of locals.
2015-06-15 09:10:52 -07:00
Björn Lindqvist
aeaed40d9c
compiler.cfg.ssa.destruction.coalescing: new vocab to refactor and
...
simplify the prepare-insn code in compiler.cfg.ssa.destruction
2015-06-15 12:28:31 +02:00
Björn Lindqvist
c5ec490f39
compiler.cfg.ssa.destruction: the natural-sort was malplaced, only sort
...
inputs from ##phi, should fix remainder of #1345
2015-06-15 12:28:30 +02:00
Björn Lindqvist
c0645ecafe
compiler.cfg.linear-scan.*: fix help-lint errors
2015-06-14 16:44:37 +02:00
Björn Lindqvist
5ad35fabd1
compiler.cfg.*: lots of more compiler docs
2015-06-14 16:44:37 +02:00
Björn Lindqvist
418438ab13
compiler.cfg.linear-scan.*: change compute-live-intervals so that it
...
returns only one sequence, it makes some words a little simpler
2015-06-14 16:44:37 +02:00
Björn Lindqvist
f37ab939f0
compiler.*: more compiler docs
2015-06-14 16:44:37 +02:00
Björn Lindqvist
91118ae5df
compiler.cfg.linear-scan.allocation.state: fix #1345 by adding vreg to
...
the heap key
By having { start end vreg } as the key in the min-heap ordering is
guaranteed even if two intervals share the same start and end.
2015-06-14 16:44:37 +02:00
Björn Lindqvist
9dbb3e9171
compiler.codegen.gc-maps: simplies largest-spill-slot and refactors serialize-gc-maps
2015-06-14 16:44:37 +02:00
Björn Lindqvist
ca2d64af68
compiler.cfg.ssa.destruction: try and sort the vreg pairs before
...
elimination, this way you always get the same leader info
2015-06-14 16:44:36 +02:00
Björn Lindqvist
be342e8638
compiler.cfg.ssa.destruction: refactors maybe/must-eliminate-copy into
...
one try-eliminate-copy
2015-06-14 16:44:36 +02:00
Björn Lindqvist
98ae0eb02e
compiler.cfg.ssa.destruction: small refactoring which removes
...
class-elements and maybe-eliminate-copy-later
2015-06-14 16:44:36 +02:00
Björn Lindqvist
ceff23339c
compiler.cfg.ssa.destruction: a bunch of new docs
2015-06-14 16:44:36 +02:00
Björn Lindqvist
b4f881a9be
compiler.cfg.ssa.destruction.tests: a bunch of new tests
2015-06-14 16:44:36 +02:00
John Benediktsson
54c4388a68
vocabs: remove little used words.
...
vocabs:vocab-name* => editors.private:public-vocab-name.
2015-06-11 20:04:44 -07:00