Slava Pestov
dd479ffad1
Help lint fixes
2008-11-14 07:22:19 -06:00
Slava Pestov
e550d052ea
Merge branch 'master' of git://factorcode.org/git/factor
2008-11-14 04:01:54 -06:00
Slava Pestov
f6010d1672
Rename alias article
2008-11-14 04:01:43 -06:00
Slava Pestov
615c380015
Working on docs for furnace.json, furnace.redirection, and furnace.referrer
2008-11-14 04:01:26 -06:00
Doug Coleman
7bb5ab8752
fix load error, document directory.
2008-11-14 00:55:17 -06:00
Doug Coleman
7b5f7f95fb
make more words private
2008-11-14 00:51:14 -06:00
Slava Pestov
a6af48f812
Merge branch 'master' of git://factorcode.org/git/factor
2008-11-14 00:45:25 -06:00
Doug Coleman
867669f208
fix listing on unix
2008-11-14 00:44:01 -06:00
Doug Coleman
a6b894b8c5
Merge branch 'master' of git://factorcode.org/git/factor
2008-11-14 00:38:21 -06:00
Doug Coleman
739f02d7c0
move ls to io.files.listing
2008-11-14 00:25:00 -06:00
Doug Coleman
5f6421af5d
use win32-file-attributes word
2008-11-14 00:03:24 -06:00
Slava Pestov
29249e2a64
Document furnace.json
2008-11-13 23:59:30 -06:00
Slava Pestov
f78c5b4d20
Write furnace.db docs
2008-11-13 23:35:00 -06:00
Slava Pestov
faeacba224
furnace.alloy docs
2008-11-13 23:21:32 -06:00
Slava Pestov
b17dbcd394
Document furnace.actions and clean up a few things
2008-11-13 21:49:37 -06:00
Doug Coleman
7a58500b01
fix docs for hexdump
2008-11-13 21:06:41 -06:00
Doug Coleman
47124b8aaa
finish moving hexdump to tools.hexdump
2008-11-13 19:49:34 -06:00
Doug Coleman
c613eca829
move hexdump to tools.hexdump
2008-11-13 19:48:11 -06:00
Doug Coleman
89a5957033
add file-type>ch and ch>file-type
2008-11-13 19:32:34 -06:00
Slava Pestov
4e0dee6280
validators can use new regexps now
2008-11-13 18:26:09 -06:00
Slava Pestov
174f24a1f3
Merge branch 'master' of git://factorcode.org/git/factor
2008-11-13 17:45:53 -06:00
Doug Coleman
eef79c3766
Merge branch 'master' of git://factorcode.org/git/factor
2008-11-13 16:16:35 -06:00
Doug Coleman
afc071eaf8
fix docs
2008-11-13 16:15:57 -06:00
Doug Coleman
8f2d1353c0
remove -a option...
2008-11-13 16:10:43 -06:00
Doug Coleman
a5c47ac294
remove debug, add -a option
2008-11-13 16:09:03 -06:00
Doug Coleman
8a25012b55
fix line numbers with etexteditor
2008-11-13 16:07:01 -06:00
Doug Coleman
069d5b1795
add etexteditor
2008-11-13 15:47:39 -06:00
Doug Coleman
6d44e383b3
add rc files to scaffold since it's hard to create a file named .foo on windows
2008-11-13 14:27:28 -06:00
Joe Groff
a9f8856b0d
make shader code in spheres a little more readable
2008-11-13 09:49:18 -08:00
Slava Pestov
1498d94a53
Move suffix arrays to basis
2008-11-13 09:34:46 -06:00
Doug Coleman
c64749ccac
Merge branch 'master' of git://factorcode.org/git/factor
2008-11-13 06:48:48 -06:00
Slava Pestov
eef45a1cc3
Tweak PowerPC %dispatch
2008-11-13 05:58:49 -06:00
Slava Pestov
a14e1ebcb5
Fix PowerPC bootstrap
2008-11-13 05:55:34 -06:00
Doug Coleman
e089abd37f
Merge branch 'master' of git://factorcode.org/git/factor
2008-11-13 05:42:53 -06:00
Slava Pestov
5b4e8e9d09
Rename tests/templates.factor to tests/codegen.factor since that's really what its testing
2008-11-13 04:16:58 -06:00
Slava Pestov
eb05dd3a12
Optimize a ##dispatch that is applied to the result of a ##sub-imm or ##add-imm; this eliminates an instruction from the common 1 fixnum-fast { ... } dispatch and 8 fixnum-fast { ... } dispatch code sequences appearing in generic word expansions
2008-11-13 04:16:08 -06:00
Slava Pestov
029ee67525
Fix ppc make-image
2008-11-13 04:12:09 -06:00
Slava Pestov
6590c894bc
Forgot a constant
2008-11-13 04:10:21 -06:00
Slava Pestov
b1aa3697cb
Emit branches in the same order they're written in code
2008-11-13 03:52:01 -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
3723b2e640
vlists: immutable sequences with mostly-O(1) push and pop, O(n) behavior when sharing: optimized for the unshared case. also contains valists, which are assocs built on vlists with O(n) search starting from the end, and mostly-O(1) insertion that shadows prior entries. Behaves similar to Lisp/Scheme alists
2008-11-13 00:12:14 -06:00
Slava Pestov
3f4eb5a09a
Add changed-nth combinator: like change-nth but for persistent sequences
2008-11-13 00:10:55 -06:00
Slava Pestov
a81e737e02
Add passociate word: like associate but for persistent hashtables
2008-11-13 00:10:37 -06:00
Slava Pestov
3bb778eab4
Remove unnecessary stack-checker.transforms dependency from macros
2008-11-13 00:09:47 -06:00
Slava Pestov
5bae69426d
Stack checker cleanup and optimization
...
- stack-checker.state vocabulary split up into stack-checker.{state,values,recursive-state}
- code that modifies and searches recursive state factored out into stack-checker.recursive-state
- recursive state is now a set of three binary hash trees instead of an alist, and no longer contains unnecessary data
- binary hash trees are in stack-checker.recursive-state.tree: unbalanced, persistent
- ~8 second speedup on bootstrap, ~20 second speedup in "peg.javascript" require
2008-11-13 00:07:45 -06:00
Doug Coleman
db2f744f90
redo random-bytes* with a better algorithm
2008-11-12 22:10:34 -06:00
Slava Pestov
4a1bcacfd4
Refactoring recursive-state alist; now its a mapping from words to local state triples, reduces searching by a bit
2008-11-12 19:08:40 -06:00
Slava Pestov
8f6f666a2a
Neither here nor there
2008-11-12 14:40:01 -06:00
Doug Coleman
a8f1680bcd
slightly faster
2008-11-12 13:28:17 -06:00
Doug Coleman
b45c03877b
don't generate 4x the number of random bytes we actually need. map concat is slower than push-all
2008-11-12 12:40:09 -06:00
Eduardo Cavazos
6cc08f76dd
help/handbook: Fix some headings
2008-11-12 03:58:41 -06:00
Doug Coleman
44b0cf94ab
better fix for emacs
2008-11-12 01:14:19 -06:00
Doug Coleman
9656ce2e65
Merge branch 'master' of git://factorcode.org/git/factor
2008-11-12 00:40:11 -06:00
Doug Coleman
0d3a5e372a
allow setting of emacsclient
2008-11-12 00:39:56 -06:00
Slava Pestov
9f52ee50b0
Another speedup to >alist: create vector with right size up-front. 10 second bootstrap time reduction
2008-11-12 00:10:50 -06:00
Slava Pestov
eed1dd3d2b
Fix byte vector prettyprinting
2008-11-11 23:38:19 -06:00
Slava Pestov
c581311e03
Merge branch 'master' of git://factorcode.org/git/factor
2008-11-11 23:24:08 -06:00
Slava Pestov
cdb94e4c62
Word constructor was not invoking relocation on the profiled block, so words constructed while profiling was on could not be executed. This prevented profiling of PEGs
2008-11-11 23:07:40 -06:00
Slava Pestov
de02724135
Make a word inline for the win
2008-11-11 23:04:30 -06:00
Slava Pestov
ed3a81a503
Faster M: hashtable >alist performs less dispatch and allocates less junk
2008-11-11 23:03:50 -06:00
James Cash
c97e731d44
Fixing linked-assoc docs
2008-11-11 21:25:33 -05:00
Slava Pestov
fab60f94a7
Minor performance improvements
2008-11-11 19:51:26 -06:00
Slava Pestov
d970a632bb
Fix nodes>quot
2008-11-11 19:51:12 -06:00
Slava Pestov
26f309d2ae
Trying to make PEGs compile faster by reducing the number of low level IR nodes: merge functionality of #>r and #r> into #shuffle, and generate 1 node instead of 3 for calls to get-local
2008-11-11 18:46:31 -06:00
Slava Pestov
782671a50c
Merge branch 'master' of git://factorcode.org/git/factor
2008-11-11 17:43:25 -06:00
Slava Pestov
5c6860fd0f
Updating linked-assocs documentation, add <linked-assoc> word
2008-11-11 17:42:52 -06:00
Slava Pestov
b4683bb00b
Merge branch 'master' of git://factorcode.org/git/jamesnvc
2008-11-11 17:36:34 -06:00
Doug Coleman
5490b730b5
Merge branch 'master' of git://factorcode.org/git/factor
2008-11-11 15:37:42 -06:00
Doug Coleman
fa282c5053
remove duplicate using
2008-11-11 15:37:32 -06:00
Doug Coleman
1f85b7ec14
catch errors for windows file-systems word and return a tuple with just a mount point
...
this happens on empty floppy disk drives
2008-11-11 15:35:17 -06:00
Doug Coleman
146340690f
implement file-systems on windows
2008-11-11 15:17:35 -06:00
Doug Coleman
17916ed7f2
Merge branch 'master' of git://factorcode.org/git/factor
2008-11-11 14:04:25 -06:00
Doug Coleman
78ab09d8bb
move file-systems word to core
2008-11-11 14:04:05 -06:00
Doug Coleman
c860ab78b6
removed duplicate file-system-info definition. oops
2008-11-11 13:41:34 -06:00
Doug Coleman
bbaa8b95bd
mounted -> file-systems
2008-11-11 13:30:12 -06:00
Doug Coleman
482933f4d3
remove duplicated slot from linux statfs
2008-11-11 13:19:53 -06:00
Doug Coleman
aff4c9bda3
Merge branch 'master' of git://factorcode.org/git/factor
2008-11-11 13:07:26 -06:00
Doug Coleman
f6c0c43dd4
fix user-cache and add tests for this
2008-11-11 13:05:04 -06:00
Doug Coleman
e3533daf4d
make jedit behave nicely with scaffolding docs
2008-11-11 13:04:20 -06:00
Doug Coleman
51ecc18cd8
changed a bitwise word, updating usage for mersenne twister
2008-11-11 13:03:42 -06:00
Doug Coleman
7aeeb2c9ce
bitwise docs, fix some bugs in bitwise words
2008-11-11 13:03:08 -06:00
Slava Pestov
8a6ecec9f3
Fix broken link in ratios docs
2008-11-11 12:11:36 -06:00
Slava Pestov
a32acdcff0
Tweak grouping code for better method inlining
2008-11-11 12:11:13 -06:00
Slava Pestov
d7dd084b8d
Usability tweak: focus on listener input area when input presentation is clicked
2008-11-11 11:46:35 -06:00
Slava Pestov
fed799a32c
Fix circularity
2008-11-11 11:39:38 -06:00
Slava Pestov
4c0f2cc3f5
Move factor-2s from miller-rabin to math.functions; use it to make ^ more efficient
2008-11-11 11:30:47 -06:00
Slava Pestov
f1a1a4c1cb
Cloning a dlist did not clone its nodes, and so was useless
2008-11-11 10:56:58 -06:00
Slava Pestov
1d630b6cf2
Minor documentation fixes
2008-11-11 10:51:15 -06:00
Slava Pestov
f04b32ea02
Remove duplicated logic
2008-11-11 09:10:33 -06:00
Slava Pestov
d50f4275d4
Fix help lint
2008-11-11 08:53:11 -06:00
Slava Pestov
792df37431
Update unit test
2008-11-11 08:50:30 -06:00
Slava Pestov
5f4b247072
Propagation pass now uses a stack of hashtables for predicated constraints instead of cloning a hashtable. New strategy for recursive propagation; now converges with fewer iterations. ~15 sec bootstrap time improvement
2008-11-11 08:49:00 -06:00
Slava Pestov
7f9fbdaa4e
cleanup pass didn't properly handle conditionals where both branches were dead
2008-11-11 08:38:03 -06:00
Slava Pestov
43335d9c36
Intervals now use a special singleton for the full interval to eliminate FP math in the common case; fix a bug in value-info<=
2008-11-11 08:30:14 -06:00
Slava Pestov
bb44effcb3
Forgot to include this in the last patch
2008-11-11 02:35:27 -06:00
Slava Pestov
d579628d61
More OpenGL rendering tweaks
2008-11-11 02:31:56 -06:00
James Cash
da3399f31d
More tests for linked-assocs
2008-11-11 02:33:19 -05:00
James Cash
a5576bbb1d
Fixing extra space, replacing tuck ... swap with [ ... ] keep
2008-11-11 02:33:19 -05:00
James Cash
d9076407fb
Writing docs for linked-assocs
2008-11-11 02:33:19 -05:00
James Cash
143567c917
More tests for linked-assocs
2008-11-11 02:33:19 -05:00
James Cash
41b7853e08
Adding more assoc protocol methods to linked-assocs, bugfixes
2008-11-11 02:33:18 -05:00
James Cash
b3acebc350
linked-assocs passes tests
2008-11-11 02:33:18 -05:00
James Cash
b68d3c94a7
Adding linked-assocs
2008-11-11 02:33:18 -05:00
Slava Pestov
f0c61b9499
Rewrite OpenGL rendering code
...
- Don't use glPolygonMode to draw outline rectangles
- Use vertex arrays instead of glBegin/glVertex/glEnd
- Remove dead code from opengl vocabulary
- draw-interior and draw-boundary are now called with origin get [ ... ] with-translation
2008-11-11 00:28:37 -06:00
Slava Pestov
eabba96627
Merge branch 'master' of git://repo.or.cz/factor/jcg
2008-11-10 21:38:28 -06:00
Eduardo Cavazos
2489ac5205
bootstrap.stage2: Factor out 'print-time'
2008-11-10 21:27:48 -06:00
Eduardo Cavazos
78d9452b7e
basis/bootstrap/stage2: Show core bootstrap time in report
2008-11-10 20:05:50 -06:00
Joe Groff
6189bfd1f0
bring cairo bindings back from the dead
2008-11-10 17:01:14 -08:00
Slava Pestov
161c917748
Merge branch 'master' of git://factorcode.org/git/factor
2008-11-10 05:08:39 -06:00
Slava Pestov
d8a3439bc2
Fix indentation
2008-11-10 05:08:30 -06:00
Slava Pestov
eeb53283d4
Update code for builder removal
2008-11-10 05:07:25 -06:00
Eduardo Cavazos
0b33c52886
Merge branch 'master' of git://factorcode.org/git/factor
2008-11-10 03:36:26 -06:00
Eduardo Cavazos
17be33fb01
ui.gadgets.labelled: Simplify '<title-bar>'
2008-11-10 03:35:21 -06:00
Slava Pestov
8da65ff55c
Merge branch 'master' of git://factorcode.org/git/factor
2008-11-10 03:23:19 -06:00
sheeple
ffe4bd6787
Various updates
2008-11-10 03:18:58 -06:00
sheeple
067e9934e1
Merge branch 'master' of git://factorcode.org/git/factor
2008-11-10 03:02:17 -06:00
sheeple
5b7d40d9b4
We need to end the basic block after the ##prologue in the dispatch branch so that the GC check can go after the prologue
2008-11-10 02:58:05 -06:00
Eduardo Cavazos
6df7342b81
ui.gadgets.scrollers: Nicer version of 'find-scroller*'
2008-11-10 02:10:18 -06:00
Slava Pestov
4d317e2d46
Merge branch 'master' of git://github.com/glguy/factor
2008-11-10 00:30:27 -06:00
Slava Pestov
b8eebd5c2b
swap over == tuck; dupd swap == over
2008-11-10 00:16:11 -06:00
U-SLAVA-DFB8FF805\Slava
2bf9a55cea
Fix Windows deployment
2008-11-09 17:27:51 -06:00
U-SLAVA-DFB8FF805\Slava
429fe85f46
Fix compile error
2008-11-09 17:27:39 -06:00
Slava Pestov
28e397420d
Fix USING:
2008-11-08 21:43:55 -06:00
unknown
7a6a280b5c
Fix conflict
2008-11-08 21:41:33 -06:00
unknown
f7fe84e563
Working on Win64 FFI
2008-11-08 21:40:47 -06:00
Slava Pestov
f53e9c654c
Merge branch 'master' of git://factorcode.org/git/factor
2008-11-08 20:36:29 -06:00
Slava Pestov
65dea0aa26
PowerPC backend fixes
2008-11-08 20:36:14 -06:00
Slava Pestov
57242951b9
Better error reporting in FROM: and RENAME: words
2008-11-08 19:33:15 -06:00
Eduardo Cavazos
8262b50c87
ui.gadgets.scrollers: minor tweak in 'new-scroller'
2008-11-08 16:23:06 -06:00
Eduardo Cavazos
8e44e783cf
ui.gadgets.lists: minor tweak to 'select-gadget'
2008-11-08 15:59:21 -06:00
Peter Burns
a4cecaaf40
swap drop === nip
2008-11-08 13:45:45 -08:00
Peter Burns
64cdabf57a
A bit more refactoring and testing of json.reader
2008-11-08 12:08:58 -08:00
Slava Pestov
9cc193ea5b
Add unportable tags and fix my-arch word
2008-11-07 22:37:40 -06:00
Peter Burns
bca998bba5
Merge branch 'master' of git://factorcode.org/git/factor into json
2008-11-07 20:00:42 -08:00
Peter Burns
706da24b8c
Refactored json.reader, added a couple more unit tests, no more rationals
2008-11-07 20:00:19 -08:00
Slava Pestov
eb83b542d6
Fix unix x86.64 bootstrap
2008-11-07 21:54:13 -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
de0cc7f99a
Merge branch 'master' of git://factorcode.org/git/factor
2008-11-07 20:49:42 -06:00
Slava Pestov
639da2d335
Refactor OS-specific parts of PowerPC backend
2008-11-07 20:45:25 -06:00
unknown
cc7ab11881
Add more unit tests
2008-11-07 20:34:04 -06:00
unknown
7365959f01
Starting work on Win64 port
2008-11-07 20:33:32 -06:00
Peter Burns
6e22f39f46
Rewrote json.reader to use peg.ebnf
2008-11-06 21:45:24 -08:00
sheeple
070432d140
Merge branch 'master' of git://factorcode.org/git/factor
2008-11-06 19:15:13 -06:00
sheeple
d1f248dac6
Fixing PowerPC backend: prolog register clobberage, spilling, and general stack frame usage. Add some lame tests for spilling
2008-11-06 19:00:56 -06:00
Doug Coleman
a7595665fc
Merge branch 'master' of git://factorcode.org/git/factor
2008-11-06 16:54:05 -06:00
Doug Coleman
46aa56730b
better parsing for anchors
2008-11-06 16:53:00 -06:00
Slava Pestov
b7dc7296db
Implement stream-read on memory-streams. This allows alien>string to work with utf16 encoding
2008-11-06 13:42:53 -06:00
Doug Coleman
dd1b28ba7a
Merge branch 'master' of git://factorcode.org/git/factor
2008-11-06 13:17:54 -06:00
Doug Coleman
811026ce4d
removing some uses of at* in favor of at, simplifying code
2008-11-06 13:16:33 -06:00
Slava Pestov
63a9975a0e
Support inline, foldable, flushable on methods; add declarations in a couple of places for ricing purposes
2008-11-06 13:13:37 -06:00
Slava Pestov
751426f283
Remove dead code from math.intervals; we no longer need the operations to support f anymore
2008-11-06 11:57:31 -06:00
Slava Pestov
4e55cd973b
If a #dispatch branch is a call to another word which is not an intrinsic, we avoid generating the dispatch branch and just jump to the word directly
2008-11-06 11:48:55 -06:00
Slava Pestov
9366ad650d
Add unportable tag
2008-11-06 09:29:21 -06:00
Slava Pestov
64cbf619a9
Add more algebraic simplifications: comparison of a comparison, comparison where first is immediate
2008-11-06 09:27:52 -06:00
Slava Pestov
1c1333fbe9
Compile not and >boolean as branchless intrinsics by having the CFG builder detect certain code patterns
2008-11-06 09:09:21 -06:00
Peter Burns
e631e1ca08
Normalized spacing to 4 space tabs in json modules
2008-11-06 04:41:53 -08:00
Peter Burns
986ea40835
Changed json-null to a SINGLETON for method dispatch
2008-11-06 04:38:12 -08:00
sheeple
d2ec46e38f
PowerPC backend almost functional; some new compiler unit tests added,
...
better compilation of 'f eq?'; f becomes an immediate operand
move aux-offset to compiler.constants
2008-11-06 06:27:27 -06:00
Peter Burns
260862603c
Added some tests for json.writer, fixed a bug with t >json and json-null >json
2008-11-06 04:26:49 -08:00
Slava Pestov
7741096bff
Tweak PPC register usage; gcc doesn't like it when you mess with r31 for some reason
2008-11-06 03:36:46 -06:00
Slava Pestov
6f432811f5
Fix mirrors
2008-11-06 02:52:54 -06:00
Slava Pestov
29279f305e
Fix 32-bit bootstrap
2008-11-06 01:58:07 -06:00
Slava Pestov
5def7c5dea
Don't load random number generator on bootstrap
2008-11-06 01:30:59 -06:00
Slava Pestov
53cd75b06c
Add string-nth intrinsic
2008-11-06 01:11:28 -06:00
Slava Pestov
bfd119e3b5
I/O ricing: various hints added so that UTF8 and ASCII fastpaths compile with less dispatch. 25% improvement on reverse-complement
2008-11-06 00:02:44 -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
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
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
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
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
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
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
Slava Pestov
dc85ed3d56
Fix help lint: links to obsolete article
2008-11-03 08:08:28 -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
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
2445a83cb9
Clean up recursive-state usage
2008-11-03 03:06:11 -06:00
Slava Pestov
0250d7c1d2
Forgot a drop in unit test
2008-11-03 01:53:27 -06:00
Slava Pestov
08b277e892
Fix alias anlaysis bug: result of ##box-alien and ##box-float did not get an AC, so calling hi-tag would not compile
2008-11-03 01:52:55 -06:00
Slava Pestov
3230e0010f
-trace-compilation command line switch
2008-11-03 01:19:20 -06:00
Slava Pestov
7f3282bb39
Better error reporting
2008-11-03 01:19:06 -06:00
Slava Pestov
f253e74942
Inline subprimitives in optimizing compiler
2008-11-03 01:18:54 -06:00
Slava Pestov
44a2499c17
fixnum-shift-fast and fixnum-mod subprimitives
2008-11-03 01:18:35 -06:00
Slava Pestov
dd20b39cd6
fixnum-shift-fast subprimitive
2008-11-03 00:03:39 -06:00
Slava Pestov
1aefde994f
Cleanup
2008-11-03 00:03:22 -06:00
Slava Pestov
0d83873174
Fix regression
2008-11-03 00:03:15 -06:00
Slava Pestov
abb02f1784
Flesh out shift instructions
2008-11-03 00:03:00 -06:00
Slava Pestov
449c1191cc
Add another debug var
2008-11-02 23:25:42 -06:00
Slava Pestov
445e353337
Optimize away useless jumps
2008-11-02 23:09:31 -06:00
Slava Pestov
d11a779fdd
RicE
2008-11-02 03:58:32 -06:00
Slava Pestov
998637109a
Merge branch 'master' into new_codegen
2008-11-02 03:10:40 -06:00
Slava Pestov
3834eaeb05
Don't generate GC checks if the allocation instruction is optimized out
2008-11-02 01:50:48 -06:00
Slava Pestov
8df1aba71d
Coalescing
2008-11-02 01:49:57 -06:00
Doug Coleman
c5293819ce
Merge branch 'master' of git://factorcode.org/git/factor
2008-11-01 19:40:18 -05:00
Doug Coleman
9c5bd1e96d
remove debug from regexp
2008-11-01 19:39:49 -05:00
Slava Pestov
46b1fd652b
Merge branch 'master' of git://factorcode.org/git/factor into new_codegen
2008-11-01 19:11:40 -05:00
slava
1cd2874072
Uncomment a test
2008-11-01 18:56:12 -05:00
Slava Pestov
b5c3c19ebe
Merge branch 'master' of git://factorcode.org/git/factor into new_codegen
2008-11-01 16:38:04 -05:00
Doug Coleman
8a494a0da4
fix the way postgresql creates functions
2008-11-01 15:24:05 -05:00
Slava Pestov
804c6f93ea
Fix x86.32
2008-10-31 21:07:41 -05:00
Slava Pestov
db4db19cd9
Start working on coalescing
2008-10-28 02:38:37 -07:00
Slava Pestov
492a15e345
Move insn class to compiler.cfg.instructions
2008-10-24 09:17:06 -05:00
Doug Coleman
2937f71702
more usings
2008-10-23 13:38:26 -05:00
Doug Coleman
a42c8d4ab7
fix using
2008-10-23 13:37:14 -05:00
Doug Coleman
03d96cc1bd
rename name to mount-point
2008-10-23 13:18:00 -05:00
Slava Pestov
1912c57bb5
Fix comment
2008-10-23 05:55:50 -05:00
Slava Pestov
69a0ad5e42
Ricing locals
2008-10-23 05:49:32 -05:00
Slava Pestov
1c7d9c1066
Merge branch 'master' into new_codegen
2008-10-23 05:29:09 -05:00
Slava Pestov
885adc8dc9
Various improvements
2008-10-23 05:27:54 -05:00
Slava Pestov
7fb39a14c1
Compile compiler early
2008-10-23 02:49:55 -05:00
Slava Pestov
52967c5bf1
Improved value numbering
2008-10-23 02:49:26 -05:00
Doug Coleman
d7cbf8b1f3
Merge branch 'master' of git://factorcode.org/git/factor
2008-10-22 22:03:00 -05:00
Doug Coleman
e776bd29e1
add type to file-system-info
2008-10-22 22:02:33 -05:00
Slava Pestov
d723b69990
Value numbering
2008-10-22 21:59:07 -05:00
Slava Pestov
084e64d0bc
Tweak inheritance
2008-10-22 21:58:46 -05:00
Slava Pestov
ba0ed21e1d
Better error message
2008-10-22 21:58:37 -05:00
Doug Coleman
b85b0f6820
fix typo
2008-10-22 21:43:19 -05:00
Doug Coleman
c9167e2ab2
better file-system-info on mac
2008-10-22 20:32:39 -05:00
erg
bccf9d9698
add device-name and type to file-system-info
2008-10-22 20:28:30 -05:00
Doug Coleman
4ddfc83423
id_t type
2008-10-22 20:22:35 -05:00
Doug Coleman
46fbd8c520
mounton -> name
2008-10-22 20:18:58 -05:00
erg
278b55ee57
include mount point in file-system-info
2008-10-22 20:04:10 -05:00
Doug Coleman
89e9fa8b6b
mounted* -> mounted
2008-10-22 19:56:46 -05:00
erg
b4b02d29fa
fix mounted on linux
2008-10-22 19:54:22 -05:00
Doug Coleman
f9b90d035b
implement mounted on linux
2008-10-22 19:01:45 -05:00
Doug Coleman
371b1f8f20
fix mounted on macosx
2008-10-22 18:46:24 -05:00
Slava Pestov
9a07760542
CFG optimizer
2008-10-22 18:41:37 -05:00
Slava Pestov
3711aa3bca
Stack height normalization
2008-10-22 18:41:26 -05:00
Slava Pestov
6d812aaa52
Write barrier elimination
2008-10-22 18:41:10 -05:00
Slava Pestov
1f693b50b3
Massive focused action
2008-10-22 18:39:41 -05:00
Slava Pestov
73d01452cb
Replace ##gc with a gc flag in the basic block
2008-10-22 18:38:30 -05:00
Slava Pestov
f09813f6fd
Alias analysis
2008-10-22 18:37:47 -05:00
Doug Coleman
1d750b26d2
Merge branch 'master' of git://factorcode.org/git/factor
2008-10-21 23:44:02 -05:00