Jeremy Hughes
0d88577890
Merge branch 'inlinec' into marshall
...
* inlinec:
alien.inline.compiler: changed windows compiler options
2009-07-11 20:52:01 +12:00
Jeremy Hughes
d2077b1670
alien.inline.compiler: changed windows compiler options
2009-07-11 20:51:34 +12:00
Jeremy Hughes
11183fa5db
alien.inline.*: fixed merge breakage
2009-07-11 20:50:27 +12:00
Slava Pestov
d03a8dff44
Merge branch 'inlinec' of git://github.com/jedahu/factor
2009-07-11 03:25:44 -05:00
Jeremy Hughes
579aba5625
Merge branch 'inlinec' into marshall
...
* inlinec: (49 commits)
alien.inline.compiler: documentation
alien.inline.compiler: fixed library-path and made other words private
alien.inline: renamed compiler-args to linker-args
alien.inline: added with-c-library word
alien.inline: added documentation
alien.inline: better names
alien.inline: remove vocab argument from define-c-struct
alien.inline: made define-c-function and define-c-function' standalone
alien.inline: fix library name and us remove-library
alien.inline.compile: write library files to resource:alien-inline-libs
Revert "Remove unused vocabulary" -- committed patch from the wrong machine
Remove unused vocabulary
Fixing some test failures after url.encoding change
FUEL: Font lock/indentation for M::.
replace 2array "." join with "." glue
contributors: exclude merges to make patch counts more reasonable
alien.libraries: add remove-library word, fix dlclose and dll-valid? VM primitives
alien.libraries: add dispose method for library tuple, and remove-library word; add-library first calls remove-library to properly close the library when reloading
changed single byte writes to write1
removed usages of sprintf
...
Conflicts:
basis/alien/inline/compiler/compiler.factor
basis/alien/inline/inline.factor
2009-07-11 19:58:25 +12:00
Jeremy Hughes
f2380aab7f
alien.inline.compiler: documentation
2009-07-11 19:24:09 +12:00
Jeremy Hughes
eb72ba84f6
alien.inline.compiler: fixed library-path and made other words private
2009-07-11 19:23:49 +12:00
Jeremy Hughes
b03b769966
alien.inline: renamed compiler-args to linker-args
2009-07-11 19:23:21 +12:00
Joe Groff
45293cc7fb
Merge branch 'master' of git://factorcode.org/git/factor
2009-07-10 08:28:19 -05:00
Slava Pestov
949b527ed5
Help lint fixes for urls.encoding and mongodb.driver
2009-07-10 07:52:20 -05:00
Slava Pestov
1cf6bb7f99
compiler.cfg.linear-scan: disable unit test for unimplemented feature
2009-07-10 07:48:49 -05:00
U-SLAVA-DFB8FF805\Slava
e6e6490156
Merge branch 'inlinec' of git://github.com/jedahu/factor
2009-07-10 07:15:25 -05:00
Jeremy Hughes
4a5cb3aac3
alien.inline: added with-c-library word
2009-07-11 00:08:40 +12:00
Jeremy Hughes
dc80d8575f
alien.inline: added documentation
2009-07-10 23:55:32 +12:00
Jeremy Hughes
864a6e7508
alien.inline: better names
2009-07-10 23:55:05 +12:00
Jeremy Hughes
0851823ba9
alien.inline: remove vocab argument from define-c-struct
2009-07-10 23:54:40 +12:00
Jeremy Hughes
2e7f337b3d
alien.inline: made define-c-function and define-c-function' standalone
2009-07-10 23:53:50 +12:00
Slava Pestov
ae67de6f90
compiler.cfg.linear-scan: fix fencepost error in spill insertion
2009-07-10 03:58:51 -05:00
Slava Pestov
11347e784c
insn. doesn't print numbers
2009-07-10 03:05:45 -05:00
Daniel Ehrenberg
500c784bd7
Minor reorganization of stack-checker.call-effect
2009-07-10 01:05:03 -05:00
Daniel Ehrenberg
23b8f48267
stack-checker.known-words:infer-special uses a word property
2009-07-10 00:52:08 -05:00
Slava Pestov
dea872c7e3
compiler.cfg.linear-scan.allocation: fix broken spill slot reuse logic
2009-07-10 00:25:46 -05:00
Joe Groff
4dd6992c7e
Merge branch 'master' of git://factorcode.org/git/factor
2009-07-09 23:20:11 -05:00
Slava Pestov
7edb2df01c
Merge branch 'master' of git://factorcode.org/git/factor
2009-07-09 23:14:45 -05:00
Slava Pestov
789d82745c
compiler.cfg.value-numbering: factor out value renaming into a separate compiler.cfg.renaming vocabulary
2009-07-09 23:14:26 -05:00
Slava Pestov
6810b922ee
compiler.cfg: move back-edge? word from stack-analysis to top-level vocab
2009-07-09 23:13:30 -05:00
Slava Pestov
d02854b04e
compiler.cfg.linear-scan: two live intervals which are coalesced will use the same spill slot
2009-07-09 23:12:49 -05:00
Daniel Ehrenberg
4b29d13fda
Adding authors to compiler.tree.modular-arithmetic
2009-07-09 23:09:49 -05:00
Daniel Ehrenberg
cf3038b7d6
Improving modular arithmetic optimization to be aware of words like set-alien-unsigned-2
2009-07-09 23:07:38 -05:00
Jeremy Hughes
59f0dbb516
alien.inline: fix library name and us remove-library
2009-07-10 13:14:43 +12:00
Jeremy Hughes
289c963dd2
Merge branch 'master' into inlinec
...
* master: (39 commits)
Revert "Remove unused vocabulary" -- committed patch from the wrong machine
Remove unused vocabulary
Fixing some test failures after url.encoding change
FUEL: Font lock/indentation for M::.
replace 2array "." join with "." glue
contributors: exclude merges to make patch counts more reasonable
alien.libraries: add remove-library word, fix dlclose and dll-valid? VM primitives
alien.libraries: add dispose method for library tuple, and remove-library word; add-library first calls remove-library to properly close the library when reloading
changed single byte writes to write1
removed usages of sprintf
fixed signed number decoding problem
added >upper to push-utf8 to conform with RFC 3986 section 2.1. recommendation
io.launcher: unnecessary word
compiler.cfg.optimizer: fix irrelevant test
compiler.tree.propagation: better length propagation
compiler.cfg.linear-scan: fixing unit tests
compiler.cfg.linear-scan: more code cleanups, and working on split-to-fit algorithm
compiler.cfg.linear-scan: code cleanups
compiler.cfg.linear-scan: split off parallel mapping code from resolve pass, use it in assignment pass to resolve parallel copies
updated llvm.invoker test to use install-bc
...
2009-07-10 13:03:07 +12:00
Jeremy Hughes
8281c2fb55
alien.inline.compile: write library files to resource:alien-inline-libs
2009-07-10 13:00:23 +12:00
Slava Pestov
bb701bed7e
Revert "Remove unused vocabulary" -- committed patch from the wrong machine
...
This reverts commit 04c3c15411
.
2009-07-09 19:50:15 -05:00
Jeremy Hughes
e0c0399d24
alien.inline.compile: write library files to resource:alien-inline-libs
2009-07-10 12:45:27 +12:00
Slava Pestov
8008bfb1f9
Remove unused vocabulary
2009-07-09 19:10:36 -05:00
Slava Pestov
c4f4c6749f
Fixing some test failures after url.encoding change
2009-07-09 19:02:15 -05:00
Slava Pestov
baff251d1e
alien.libraries: add remove-library word, fix dlclose and dll-valid? VM primitives
2009-07-09 06:51:31 -05:00
Slava Pestov
15c7499ef5
alien.libraries: add dispose method for library tuple, and remove-library word; add-library first calls remove-library to properly close the library when reloading
2009-07-09 06:41:51 -05:00
Slava Pestov
93195e2914
Merge branch 'for-slava' of git://github.com/x6j8x/factor
2009-07-09 06:40:52 -05:00
Sascha Matzke
097487a9f3
added >upper to push-utf8 to conform with RFC 3986 section 2.1. recommendation
2009-07-09 13:34:38 +02:00
Slava Pestov
128c6c8e03
Merge branch 'master' of git://factorcode.org/git/factor
2009-07-09 06:32:04 -05:00
Slava Pestov
d0f2b1c606
io.launcher: unnecessary word
2009-07-09 06:31:38 -05:00
Slava Pestov
522da6fc0f
Merge branch 'master' of git://github.com/abeaumont/factor
2009-07-09 06:20:58 -05:00
U-SLAVA-DFB8FF805\Slava
508b7272b5
compiler.cfg.optimizer: fix irrelevant test
2009-07-09 06:17:10 -05:00
Slava Pestov
e0d84eb3a2
compiler.tree.propagation: better length propagation
2009-07-09 02:28:30 -05:00
Slava Pestov
d0980edafe
compiler.cfg.linear-scan: fixing unit tests
2009-07-09 00:48:00 -05:00
Slava Pestov
5a64290386
compiler.cfg.linear-scan: more code cleanups, and working on split-to-fit algorithm
2009-07-09 00:20:03 -05:00
Slava Pestov
4507bdcbc0
compiler.cfg.linear-scan: code cleanups
2009-07-08 23:28:28 -05:00
Slava Pestov
c20e6c290f
compiler.cfg.linear-scan: split off parallel mapping code from resolve pass, use it in assignment pass to resolve parallel copies
2009-07-08 23:07:06 -05:00
Jeremy Hughes
e56617cc05
Merge branch 'inlinec' into marshall
...
* inlinec:
alien.inline.compile: compiler: use eg++ on openbsd
2009-07-09 14:03:59 +12:00
Jeremy Hughes
5b46a22297
alien.inline.compile: compiler: use eg++ on openbsd
2009-07-09 14:03:35 +12:00
Jeremy Hughes
d49b637efd
alien.marshall.syntax-tests: added struct tests
2009-07-09 10:36:53 +12:00
Jeremy Hughes
426d173b7c
alien.marshall: unmarshaller fixes
2009-07-09 10:36:21 +12:00
Jeremy Hughes
e2c6b21bfb
alien.marshall.syntax: added CM-STRUCTURE:
2009-07-09 10:35:49 +12:00
Jeremy Hughes
c4aabe2fb4
alien.marshall.structs: generate struct constructors
2009-07-09 10:35:18 +12:00
Jeremy Hughes
ac6c207de8
alien.marshall.struct: struct getter fix
2009-07-09 10:34:41 +12:00
Jeremy Hughes
cfc3372867
alien.marshall.*: added missing vocabs
2009-07-09 10:33:54 +12:00
Jeremy Hughes
3d5b9f1651
alien.marshall.syntax: changed naming scheme
...
Prefixes:
C- generates inline C code
M- marshalls arguments and return values
CM- does both
2009-07-08 17:35:17 +12:00
Jeremy Hughes
eab6d79ac4
alien.marshall.syntax: added M-STRUCTURE:
2009-07-08 17:33:21 +12:00
Jeremy Hughes
7d708a17c2
Merge branch 'inlinec' into marshall
...
* inlinec:
alien.inline: added RAW-C: word
struct-arrays and struct-vectors: fix unit tests
oops
byte-length for struct-vectors
fix struct-vectors
sequences: fix replicate example
byte-length method for struct-arrays
growable vocabulary: make 'contract' generic so that only real vectors clear popped elements; add resize method for struct-arrays, add new struct-vectors vocabulary
Add vectors.functor for generating vector types from arrays; re-implement bit-vectors and specialized-vectors using this. Add DEFERS directive to functors
compiler.cfg.linear-scan: debugging spilling, add more assertions
threads: better error messages
benchmark.hashtables: throw something together
Remove A+s shortcut for saving image in UI
compiler.cfg.linear-scan: code cleanup
compiler.cfg.linear-scan: Re-implement spilling, add some additional runtime assertions, simplify assignment pass since it doesn't have to track spill slots anymore; just assume a live value that's not in active or inactive is spilled
2009-07-08 17:21:53 +12:00
Jeremy Hughes
f93e7dd859
Merge branch 'master' into inlinec
...
* master:
struct-arrays and struct-vectors: fix unit tests
oops
byte-length for struct-vectors
fix struct-vectors
sequences: fix replicate example
byte-length method for struct-arrays
growable vocabulary: make 'contract' generic so that only real vectors clear popped elements; add resize method for struct-arrays, add new struct-vectors vocabulary
Add vectors.functor for generating vector types from arrays; re-implement bit-vectors and specialized-vectors using this. Add DEFERS directive to functors
compiler.cfg.linear-scan: debugging spilling, add more assertions
threads: better error messages
benchmark.hashtables: throw something together
Remove A+s shortcut for saving image in UI
compiler.cfg.linear-scan: code cleanup
compiler.cfg.linear-scan: Re-implement spilling, add some additional runtime assertions, simplify assignment pass since it doesn't have to track spill slots anymore; just assume a live value that's not in active or inactive is spilled
2009-07-08 17:21:41 +12:00
Jeremy Hughes
ed825133e0
alien.inline: added RAW-C: word
2009-07-08 16:47:55 +12:00
Jeremy Hughes
25e034adb6
alien.marshall: added struct-arrays to marshall-pointer
2009-07-08 16:42:25 +12:00
Jeremy Hughes
e2797b83bc
alien.marshall.syntax.tests: delete library before compilation
2009-07-08 15:17:00 +12:00
Jeremy Hughes
5cacaf3524
Merge branch 'inlinec' into marshall
...
* inlinec:
alien.inline.tests: delete libraries before compilation
alien.inline: added C-STRUCTURE:
alien.inline: added C-TYPEDEF:
2009-07-08 15:15:55 +12:00
Jeremy Hughes
8814e2b308
alien.inline.tests: delete libraries before compilation
2009-07-08 15:15:45 +12:00
Jeremy Hughes
7d218b0263
alien.inline: added C-STRUCTURE:
2009-07-08 15:14:51 +12:00
Jeremy Hughes
488f7efc27
alien.inline: added C-TYPEDEF:
2009-07-08 14:52:07 +12:00
Jeremy Hughes
60f847ea4c
alien.marshall.*: replace &free in marshallers with free in unmarshallers
2009-07-08 14:00:48 +12:00
Slava Pestov
76288ae55d
struct-arrays and struct-vectors: fix unit tests
2009-07-07 19:15:50 -05:00
Jeremy Hughes
bc6e5de911
alien.inline.types: replaced const-type? with const-pointer? and pointer-to-const?
2009-07-08 11:30:45 +12:00
Jeremy Hughes
03d4575b90
Merge branch 'inlinec' into marshall
...
* inlinec:
alien.inline: allow compiling from non-file vocabs
alien.inline: added DELETE-C-LIBRARY: word, mainly for tests
alien.inline: prepend vocab name to c-library name
Conflicts:
basis/alien/inline/inline.factor
2009-07-08 09:46:52 +12:00
Jeremy Hughes
1c42ebd89e
alien.inline: allow compiling from non-file vocabs
2009-07-08 09:45:28 +12:00
Jeremy Hughes
b421a360c0
alien.inline: added DELETE-C-LIBRARY: word, mainly for tests
...
Conflicts:
basis/alien/inline/inline.factor
2009-07-08 09:45:08 +12:00
Jeremy Hughes
e140d80d71
alien.inline: prepend vocab name to c-library name
...
Conflicts:
basis/alien/inline/inline.factor
2009-07-08 09:43:19 +12:00
Jeremy Hughes
ed65e2ae4c
alien.marshall.syntax: added tests
2009-07-08 09:39:39 +12:00
Jeremy Hughes
7c1ae71a3e
alien.marshall: formatting
2009-07-08 09:39:15 +12:00
Jeremy Hughes
fec504197b
alien.marshall: add longlong and ulonglong marshallers
2009-07-08 09:33:29 +12:00
Jeremy Hughes
787b5d618a
alien.marshall: factorize-type before primitive-unmarshaller
2009-07-08 09:33:04 +12:00
Jeremy Hughes
0aa1a9a43d
alien.marshall.syntax: remove duplicate annotate-effect call
2009-07-08 09:31:27 +12:00
Jeremy Hughes
ca740fcb03
alien.marshall.syntax: fix: return value unmarshaller
2009-07-08 09:30:58 +12:00
Jeremy Hughes
09aea6d8e6
alien.inline: allow compiling from non-file vocabs
2009-07-08 09:29:41 +12:00
Joe Groff
771d4fd4d9
byte-length for specialized-vectors
2009-07-07 16:27:14 -05:00
Joe Groff
809b40d497
preserve sequence type in math.matrices:cross
2009-07-07 16:26:50 -05:00
Joe Groff
4763ee9a4d
oops
2009-07-07 15:34:14 -05:00
Joe Groff
84485d36ee
byte-length for struct-vectors
2009-07-07 15:30:41 -05:00
Joe Groff
b42a1cc746
fix struct-vectors
2009-07-07 15:29:16 -05:00
Joe Groff
fbdcb61763
Merge branch 'master' of git://factorcode.org/git/factor
2009-07-07 15:11:13 -05:00
Joe Groff
01d344fb46
byte-length method for struct-arrays
2009-07-07 15:11:04 -05:00
Slava Pestov
dafdbe13c9
growable vocabulary: make 'contract' generic so that only real vectors clear popped elements; add resize method for struct-arrays, add new struct-vectors vocabulary
2009-07-07 15:01:30 -05:00
Slava Pestov
c171527b8d
Add vectors.functor for generating vector types from arrays; re-implement bit-vectors and specialized-vectors using this. Add DEFERS directive to functors
2009-07-07 14:34:08 -05:00
Slava Pestov
e2044602aa
compiler.cfg.linear-scan: debugging spilling, add more assertions
2009-07-07 13:01:27 -05:00
Slava Pestov
516ce0c71d
threads: better error messages
2009-07-07 13:00:58 -05:00
Jeremy Hughes
5e822dd454
alien.inline: added DELETE-C-LIBRARY: word, mainly for tests
2009-07-07 21:11:57 +12:00
Jeremy Hughes
c478fa9f1b
alien.inline: prepend vocab name to c-library name
2009-07-07 21:05:16 +12:00
Slava Pestov
1a190ae97e
Remove A+s shortcut for saving image in UI
2009-07-07 03:49:10 -05:00
Slava Pestov
43c873f00a
compiler.cfg.linear-scan: code cleanup
2009-07-07 03:45:27 -05:00
Slava Pestov
0bcf4ce535
compiler.cfg.linear-scan: Re-implement spilling, add some additional runtime assertions, simplify assignment pass since it doesn't have to track spill slots anymore; just assume a live value that's not in active or inactive is spilled
2009-07-07 03:28:55 -05:00
Jeremy Hughes
e046605473
moved struct wrapper code from alien.structs.structs to alien.marshall.structs
2009-07-07 19:44:34 +12:00
Jeremy Hughes
9128952867
alien.marshall: fixes
2009-07-07 19:43:30 +12:00
Jeremy Hughes
4917454b85
append inline to combinator
2009-07-07 19:41:59 +12:00
Jeremy Hughes
b6e5d2481c
Merge branch 'inlinec' into marshall
...
* inlinec:
ui.gadgets.tables: clicking in empty area no longer notifies selection model
vocabs.hierarchy: fix (load) word
vocabs.hierarchy: more refactoring, update existing code for new API
help.html: Update for vocabs.hierarchy changes
help.html: escape # in word names. Reported by ex_rzrjck
vocabs.hierachy: redo with cleaner API
compiler.cfg.linear-scan: minor fixes
webkit-demo: update for recent <ViewWindow> stack effect change
compiler.cfg.linear-scan: Get cycle breaking in resolve pass to work by allocating a spare spill slot for this purpose
2009-07-07 17:24:30 +12:00
Jeremy Hughes
a5653f3449
Merge branch 'master' into inlinec
...
* master:
ui.gadgets.tables: clicking in empty area no longer notifies selection model
vocabs.hierarchy: fix (load) word
vocabs.hierarchy: more refactoring, update existing code for new API
help.html: Update for vocabs.hierarchy changes
help.html: escape # in word names. Reported by ex_rzrjck
vocabs.hierachy: redo with cleaner API
compiler.cfg.linear-scan: minor fixes
webkit-demo: update for recent <ViewWindow> stack effect change
compiler.cfg.linear-scan: Get cycle breaking in resolve pass to work by allocating a spare spill slot for this purpose
2009-07-07 17:24:21 +12:00
Jeremy Hughes
811a7c54eb
Merge branch 'inlinec' into marshall
...
* inlinec:
moved alien.inline tests to inline-tests.factor
alien.inline: file get path>> instead of vocab-source-path
alien.inline.compiler: x86_64 check and hook methods
Conflicts:
basis/alien/inline/inline.factor
2009-07-07 17:22:56 +12:00
Jeremy Hughes
66a740aaaf
moved alien.inline tests to inline-tests.factor
2009-07-07 17:21:47 +12:00
Jeremy Hughes
da024f5547
alien.inline: file get path>> instead of vocab-source-path
2009-07-07 17:21:47 +12:00
Jeremy Hughes
e76229a8f6
alien.inline.compiler: x86_64 check and hook methods
2009-07-07 17:20:54 +12:00
Slava Pestov
328c6d02f5
ui.gadgets.tables: clicking in empty area no longer notifies selection model
2009-07-06 23:19:26 -05:00
Jeremy Hughes
f61b736f10
alien.marshall(.private): free and non-free marshallers and struct marshalling
2009-07-07 16:04:41 +12:00
Jeremy Hughes
dc9bcc8b73
alien.structs: alien.syntax: struct wrapper and marshalling of fields
2009-07-07 15:49:39 +12:00
Slava Pestov
d56e818beb
vocabs.hierarchy: fix (load) word
2009-07-06 05:22:01 -05:00
Slava Pestov
2fd6db9331
Merge branch 'inlinec' of git://github.com/jedahu/factor
2009-07-06 04:56:43 -05:00
Slava Pestov
daed003f33
vocabs.hierarchy: more refactoring, update existing code for new API
2009-07-06 04:55:23 -05:00
Slava Pestov
bcdd94d50a
help.html: Update for vocabs.hierarchy changes
2009-07-06 04:35:00 -05:00
Jeremy Hughes
296a3eb554
Merge branch 'inlinec' into marshall
...
* inlinec:
alien.inline.compiler: use g++ for C++ files
2009-07-06 21:34:45 +12:00
Jeremy Hughes
994b142f74
alien.inline.compiler: use g++ for C++ files
2009-07-06 21:34:27 +12:00
Slava Pestov
4d950dee9a
help.html: escape # in word names. Reported by ex_rzrjck
2009-07-06 04:24:01 -05:00
Slava Pestov
5484bd3241
vocabs.hierachy: redo with cleaner API
2009-07-06 04:23:26 -05:00
Jeremy Hughes
4bdc4aa589
Merge branch 'inlinec' into marshall
...
* inlinec:
Added alien.inline.types (forgot to add several commits ago)
Conflicts:
basis/alien/inline/inline.factor
2009-07-06 21:17:55 +12:00
Jeremy Hughes
da01ae5cda
Added alien.inline.types (forgot to add several commits ago)
2009-07-06 21:14:08 +12:00
Slava Pestov
6aaad1ea9f
Merge branch 'inlinec' of git://github.com/jedahu/factor
2009-07-06 02:41:56 -05:00
Slava Pestov
4402d8652c
compiler.cfg.linear-scan: minor fixes
2009-07-05 22:51:53 -05:00
Slava Pestov
56523afb29
Merge branch 'master' of git://factorcode.org/git/factor
2009-07-05 21:33:03 -05:00
Slava Pestov
a452f32e3a
compiler.cfg.linear-scan: Get cycle breaking in resolve pass to work by allocating a spare spill slot for this purpose
2009-07-05 21:32:23 -05:00
Jeremy Hughes
3b987a77a8
alien.marshall.syntax: added MARSHALLED: word
2009-07-06 11:55:53 +12:00
Jeremy Hughes
511ae71763
alien.inline: moved marshalling syntax to alien.marshall.syntax
...
* made appropriate words in alien.inline public
2009-07-06 11:55:23 +12:00
Jeremy Hughes
7ecadf0a68
alien.inline: renamed and refactored prototype-string
2009-07-06 11:28:41 +12:00
Jeremy Hughes
ae4b284006
Moved two words from alien.inline to alien.inline.types
2009-07-06 11:26:17 +12:00
Jeremy Hughes
9cf0c5e33b
alien.inline: made define-c-marshalled standalone
2009-07-06 11:08:47 +12:00
Jeremy Hughes
bb3fa44e2d
Merge branch 'inlinec' into marshall
...
* inlinec:
alien.inline: reverted refactoring
2009-07-06 11:07:32 +12:00
Jeremy Hughes
dbe19d8173
alien.inline: reverted refactoring
2009-07-06 11:06:44 +12:00
Jeremy Hughes
64aef112b5
alien.inline: stopped annotate-effect affecting prototype strings
2009-07-05 22:17:13 +12:00
Jeremy Hughes
c32d7c5c97
Fixed bug where primitive-type? could not handle "Class*" types
2009-07-05 22:17:13 +12:00
Jeremy Hughes
519277a0a0
Fixed cify-types bug
2009-07-05 22:17:13 +12:00
Jeremy Hughes
577420b7dd
Added alien.marshall and modified alien.inline accordingly
2009-07-05 22:17:13 +12:00
Jeremy Hughes
284ef4f048
Made factorize-type and cify-type public
2009-07-05 22:17:13 +12:00
Jeremy Hughes
3cd4bd8106
alien.inline: added annotate-effect word
2009-07-05 22:16:58 +12:00
Jeremy Hughes
b212588417
alien.inline: refactoring
2009-07-05 22:16:58 +12:00
Jeremy Hughes
dd45949c50
alien.inline: prototype-string: fixed params
2009-07-05 22:16:58 +12:00
Jeremy Hughes
1a0a34fbfc
alien.inline: cify-type: fixed incorrect substitution
2009-07-05 22:16:58 +12:00
Jeremy Hughes
d2f6f99954
alien.inline: types->effect>params-return: fix for stack order and void return type
2009-07-05 22:16:58 +12:00
Jeremy Hughes
f7ddd899c3
alien.inline: function-types-effect: fixed incorrect stack order
2009-07-05 22:16:57 +12:00
Jeremy Hughes
8f8aa3051c
alien.inline: factorize-type covers unsigned and long
2009-07-05 22:16:57 +12:00
Jeremy Hughes
713e71fd3c
alien.inline: added define-c-function' and refactored existing words
2009-07-05 22:16:57 +12:00
Joe Groff
865e37f590
Merge branch 'master' of git://factorcode.org/git/factor
2009-07-04 19:20:18 -05:00
Joe Groff
3a6a588532
destroy window-resources in reverse order
2009-07-04 19:13:53 -05:00
Joe Groff
96ec54106b
for the FPS classicists... skew matrix constructor
2009-07-04 19:13:31 -05:00
Slava Pestov
f14a61fac2
Fix compiler.cfg.linear-scan.resolve test failure
2009-07-04 16:30:16 -05:00
Slava Pestov
c0f1b2205a
compiler.cfg.value-numbering.rewrite: disable ##compare optimizations for now
2009-07-04 03:26:37 -05:00
Slava Pestov
fb488025aa
compiler.cfg.value-numbering.rewrite: fix ##compare-imm rewrite rule
2009-07-04 02:50:50 -05:00
Slava Pestov
c00af97fa1
compiler.cfg.linear-scan.resolve: More fixes
2009-07-04 00:45:06 -05:00
Slava Pestov
da13681bc8
compiler.cfg.linear-scan: redo resolve pass to fix a correctness issue
2009-07-03 23:38:52 -05:00
Slava Pestov
8d3a45dee2
compiler.cfg: clean up GC check generation to use spill-slot data type
2009-07-03 23:11:23 -05:00
Slava Pestov
d07c0429fc
compiler.cfg.linear-scan: assign spill slots to vregs globally, so that resolve pass never has to perform a memory->memory transfer
2009-07-03 22:51:40 -05:00
Slava Pestov
d108324f19
ui.gadgets.panes: Shift-clicking to extend the selection in a pane should not focus the pane's input area
2009-07-03 22:41:32 -05:00
Slava Pestov
8c3c007d8e
ui.tools.listener.completion: if listener is not accepting input, pressing TAB would throw an error (reported by Doug Coleman)
2009-07-03 22:35:34 -05:00
Slava Pestov
f53efa88c6
tools.annotations: redo 'watch' so that it doesn't call 'datastack' anymore, instead use macros to capture stack values. This works better with compiler optimizations
2009-07-03 22:32:30 -05:00
Slava Pestov
a3c3445643
Merge branch 'master' of git://factorcode.org/git/factor
2009-07-03 21:33:55 -05:00
Slava Pestov
0180209f4e
compiler.tree.dead-code: methods on flushable generics should be flushable
2009-07-03 21:31:26 -05:00
Daniel Ehrenberg
e53dd8af24
Merge branch 'master' of git://factorcode.org/git/factor
2009-07-03 21:26:18 -05:00
Daniel Ehrenberg
7718cce339
More features in the unicode.breaks API, with documentation
2009-07-03 21:22:46 -05:00
Slava Pestov
14f2405814
Merge branch 'master' of git://factorcode.org/git/factor
2009-07-03 21:19:28 -05:00
Slava Pestov
28a8e83642
ui.tools.listener.history: Fix bug reported by Doug
2009-07-03 21:19:17 -05:00
Doug Coleman
cae8fed16c
convert ##compare with immediates to ##compare-imm
2009-07-03 19:19:33 -05:00
Slava Pestov
2c3b2a0b71
compiler.cfg.predecessors: delete dead predecessors from phi nodes
2009-07-03 18:45:03 -05:00
Slava Pestov
92b7f32aaa
Merge branch 'master' of git://factorcode.org/git/factor
2009-07-02 23:09:58 -05:00
Slava Pestov
788ea7790b
Merge branch 'inlinec' of git://github.com/jedahu/factor
2009-07-02 23:06:50 -05:00
Jeremy Hughes
408bbbdcf8
alien.inline renamed words for runtime use
2009-07-03 15:32:00 +12:00
Joe Groff
ad2bffd4da
Merge branch 'master' of git://factorcode.org/git/factor
2009-07-02 22:22:55 -05:00
Slava Pestov
389cc758be
Merge branch 'master' of git://factorcode.org/git/factor
2009-07-02 21:59:04 -05:00
Slava Pestov
f042019337
bit-sets: efficient bitwise operations on bit-arrays
2009-07-02 21:58:49 -05:00
Jeremy Hughes
670388b45a
whitespace
2009-07-03 14:55:50 +12:00
Daniel Ehrenberg
3abcebc36c
More unit tests for wrap
2009-07-02 21:12:38 -05:00
Daniel Ehrenberg
38f520bcdb
Merge branch 'master' of git://factorcode.org/git/factor
2009-07-02 20:24:49 -05:00
Daniel Ehrenberg
be26a4f63d
Fixing long-standing bug in wrap
2009-07-02 20:24:41 -05:00
Joe Groff
e39f454aa5
common 3d matrix constructors
2009-07-02 19:05:24 -05:00
Doug Coleman
84de04e502
Merge branch 'master' of git://factorcode.org/git/factor
2009-07-02 19:04:50 -05:00
Doug Coleman
e7a227ad40
add constant folding for integer ops, refactor some rewrites
2009-07-02 19:03:21 -05:00
Slava Pestov
1a6c555ead
Merge branch 'inlinec' of git://github.com/jedahu/factor
2009-07-02 18:37:55 -05:00
Slava Pestov
c5e7266e17
Merge branch 'master' of git://factorcode.org/git/factor
2009-07-02 18:36:49 -05:00
Jeremy Hughes
c286074fe5
Unit tests for alien.inline
2009-07-03 11:35:46 +12:00
Jeremy Hughes
450b5ff4f1
Added copyright headers
2009-07-03 11:35:02 +12:00
Doug Coleman
f11ba00667
Revert "fix a unit test so it's sure to overflow 64bit machines"
...
This reverts commit 88a545a215
.
2009-07-02 18:18:50 -05:00
Doug Coleman
559a77be43
fix a unit test so it's sure to overflow 64bit machines
2009-07-02 18:05:55 -05:00
Doug Coleman
2aade588ee
Merge branch 'master' of git://factorcode.org/git/factor
2009-07-02 18:01:58 -05:00
Doug Coleman
e11e3cf6d2
unit test to make sure adds are not optimized incorrectly
2009-07-02 18:01:00 -05:00
Doug Coleman
80eb5068e2
fix bug in rewriting #add -- wasn't checking small-enough?, and change negative adds to subtractions/negative subtractions to adds
2009-07-02 17:55:35 -05:00
Slava Pestov
9404a7d0e3
half-floats: Add some more unit tests
2009-07-02 17:52:53 -05:00
Jeremy Hughes
f23e330f58
alien.c-syntax -> alien.inline, alien.compile -> alien.inline.compiler
2009-07-03 10:46:19 +12:00
Jeremy Hughes
bb379a11ca
alien.c-syntax alien.compile: symbols instead of strings
2009-07-03 10:43:27 +12:00
Jeremy Hughes
94f519b12c
alien.compile: use locals in some words
2009-07-03 10:42:52 +12:00
Slava Pestov
6d46bf623c
compiler.cfg.liveness: update for new ##phi node representation
2009-07-02 17:28:02 -05:00
Slava Pestov
90daf6d03d
compiler.cfg: change representation of ##phi nodes. The input slot of ##phi nodes is now an assoc mapping predecessors to values, rather than a sequence of values. This ensures that optimization which delete predecessors can be implemented
2009-07-02 17:10:50 -05:00
Jeremy Hughes
4473ac9921
alien.c-syntax alien.compile: added authors.txt
2009-07-03 07:41:18 +12:00
Jeremy Hughes
542e490950
alien.c-syntax: fixed host of problems
2009-07-03 07:35:18 +12:00
Jeremy Hughes
acc3fc299b
Merge branch 'master' into inlinec
...
* master:
rewrite rules for add/sub/mul/and/or/xor-imm, rewrite load-immediate/add to be add-imm
simplify sub and sub-imm
add a utility word vreg>constant
compiler.cfg.dce: now performs three passes over the CFG to fix a phase ordering issue
compiler.cfg.dce: minor renamings
Dead code elimination eliminates some dead allocations
compiler.cfg.optimizer: enable branch folding
compiler.cfg: bug fixes in GC check insertion and fixnum intrinsics
compiler.cfg.linear-scan: fix spilling
2009-07-03 07:34:40 +12:00
Doug Coleman
86901eb01e
rewrite rules for add/sub/mul/and/or/xor-imm, rewrite load-immediate/add to be add-imm
2009-07-02 11:35:31 -05:00
Doug Coleman
04cb320c55
simplify sub and sub-imm
2009-07-02 11:33:15 -05:00
Doug Coleman
826464724e
add a utility word vreg>constant
2009-07-02 11:32:23 -05:00
Slava Pestov
3a4916462b
compiler.cfg.dce: now performs three passes over the CFG to fix a phase ordering issue
2009-07-02 03:17:19 -05:00
Slava Pestov
513a600664
compiler.cfg.dce: minor renamings
2009-07-02 02:41:10 -05:00
Daniel Ehrenberg
392e313f05
Merge branch 'master' of git://factorcode.org/git/factor
2009-07-02 02:31:06 -05:00
Daniel Ehrenberg
fcfd7f01a3
Dead code elimination eliminates some dead allocations
2009-07-02 02:30:46 -05:00
Slava Pestov
2de41f01da
compiler.cfg.optimizer: enable branch folding
2009-07-02 01:05:59 -05:00
Slava Pestov
af875ba836
compiler.cfg: bug fixes in GC check insertion and fixnum intrinsics
2009-07-02 00:51:06 -05:00
Slava Pestov
e6b1c21590
compiler.cfg.linear-scan: fix spilling
2009-07-01 22:37:27 -05:00
Jeremy Hughes
9e240eb3b9
Removed C++-LIBRARY: in favour of COMPILE-AS-C++ statement
2009-07-02 11:35:43 +12:00
Jeremy Hughes
5c8d4bee52
Inline C
2009-07-02 11:35:43 +12:00
Slava Pestov
58bb118024
Merge branch 'master' of git://factorcode.org/git/factor
2009-07-01 18:13:54 -05:00
Slava Pestov
1157f58f37
cpu.x86.32: don't emit sub %esp,0x0 in prologue on Linux and Windows
2009-07-01 18:13:45 -05:00
Joe Groff
be455b9f92
Merge branch 'master' of git://factorcode.org/git/factor
2009-07-01 18:01:59 -05:00
Joe Groff
97adae24f0
pardon my dust
2009-07-01 17:57:21 -05:00
Slava Pestov
41f48e3cfe
compiler.tree.optimizer: Remove redundant call to compute-def-use
2009-07-01 17:41:20 -05:00
Slava Pestov
a19f22ec82
compiler.cfg.linear-scan: debugging spilling and resolve pass
2009-07-01 17:41:07 -05:00
Slava Pestov
1b355bcc95
alien.structs: update docs to mention struct-arrays
2009-07-01 16:16:40 -05:00
Joe Groff
b748164b43
Merge branch 'master' of git://factorcode.org/git/factor
2009-07-01 13:55:24 -05:00
Joe Groff
77104b7256
put a slot on worlds for window-resources which get disposed when window is closed
2009-07-01 13:54:42 -05:00
Joe Groff
d077d52968
opengl helper words for ARB/APPLE vertex array objects
2009-07-01 13:53:28 -05:00
Joe Groff
dd00d31617
ptrdiff_t arrays
2009-07-01 13:52:42 -05:00
Joe Groff
9ddecb5e03
some misc categorizations and factorings for image component formats
2009-07-01 13:52:26 -05:00
Slava Pestov
7e3fa45512
compiler.cfg.stack-analysis: fix unit tests for useless-blocks renaming and ##no-tco instruction
2009-06-30 23:17:33 -05:00
Slava Pestov
a3b21292b6
Merge branch 'master' of git://factorcode.org/git/factor
2009-06-30 23:07:36 -05:00
Slava Pestov
f894baf60e
compiler.cfg.optimizer: disable branch folding for now
2009-06-30 23:07:27 -05:00
Slava Pestov
72b6bef19d
compiler.cfg.builder: emit less crap after a #terminate node
2009-06-30 23:03:25 -05:00
Doug Coleman
8b728e0a8a
Merge branch 'master' of git://factorcode.org/git/factor
2009-06-30 23:02:04 -05:00
Doug Coleman
b1c7374175
optimize fixnum*fast and fixnum-shift-fast
2009-06-30 23:01:44 -05:00
Doug Coleman
ded1e29d2f
combine add-imm instructions into a single add
2009-06-30 22:59:53 -05:00
Slava Pestov
3385e50c43
compiler.cfg.branch-folding: fold away branches where both inputs are the same register. This results in 'push' being compiled slightly better
2009-06-30 22:43:32 -05:00
Slava Pestov
fc595a7075
Fix possible infinite loop in skip-empty-blocks and remove redundant test in compiler.cfg.useless-conditionals
2009-06-30 22:43:02 -05:00
Slava Pestov
f412bbc6d6
Change branch splitting around a bit, rename useless-blocks to useless-conditionals and rewrite it
2009-06-30 22:11:15 -05:00
Slava Pestov
eb7f50adf4
Fix conflict
2009-06-30 21:37:49 -05:00
Slava Pestov
0402790001
compiler.cfg Remove height tracking for ##call instructions, wire in ##no-tco instruction
2009-06-30 21:21:46 -05:00
Slava Pestov
3da560130a
compiler.cfg.tco: fix tail call optimization for ##fixnum-mul
2009-06-30 21:08:08 -05:00
Slava Pestov
eca718b32d
compiler.cfg.builder: fix stack effect
2009-06-30 21:07:55 -05:00
Slava Pestov
612e4b99b0
compiler.cfg.linear-scan.assignment: insert-copy did the wrong thing if the second interval had been split. Fixes compilation of 'trilerp'
2009-06-30 21:07:39 -05:00
Slava Pestov
1acf243cce
Fix conflict
2009-06-30 20:16:09 -05:00
Slava Pestov
5c6c3ecd85
compiler.cfg.tco: Tail call optimization moved out of compiler.cfg.builder into its own pass
2009-06-30 20:13:35 -05:00
Doug Coleman
2cd202d175
remove duplicate using
2009-06-30 18:48:52 -05:00
Doug Coleman
357408df3e
Merge branch 'master' of git://factorcode.org/git/factor
2009-06-30 18:48:10 -05:00
Doug Coleman
97cd0d584e
make commutative operations with immediates output the same IR
2009-06-30 18:47:24 -05:00
Slava Pestov
bc2a6c0ecc
compiler.cfg.stack-analysis: fix tests
2009-06-30 18:22:54 -05:00
Slava Pestov
d199154179
Merge branch 'master' of git://factorcode.org/git/factor
2009-06-30 18:12:00 -05:00
Slava Pestov
3355fa4809
compiler.cfg.stack-analysis: enable global optimization
2009-06-30 18:11:45 -05:00
Slava Pestov
4db44cd23f
%dispatch: sometimes the generated sequence is one byte longer, so instead of hard-coding it, compute the right length
2009-06-30 18:11:15 -05:00
Slava Pestov
54876d0cba
compiler.cfg.linear-scan.assignment: get check-assignment? to work with coalescing
2009-06-30 18:10:53 -05:00
Slava Pestov
fc6c9e2dfd
cpu.x86: don't clobber src in %dispatch
2009-06-30 16:47:22 -05:00
Doug Coleman
f1b2550035
Merge branch 'master' of git://factorcode.org/git/factor
2009-06-30 16:45:57 -05:00
Doug Coleman
d1f6871081
fix bug where traversal order was lost
2009-06-30 16:44:14 -05:00
Slava Pestov
b61b47922f
disjoint-sets: add some tests for compiler bug; eventually more tests should be written for this vocab
2009-06-30 16:08:16 -05:00
Slava Pestov
578b0126fc
compiler.cfg.linear-scan: compute-free-pos was broken in the case where more than one inactive interval had the same physical register assigned
2009-06-30 16:07:58 -05:00
Doug Coleman
f41f84436c
spill to spill-temp, not to virtual spill addresses
2009-06-30 15:40:13 -05:00
Doug Coleman
ede8e1ca30
Merge branch 'master' of git://factorcode.org/git/factor
2009-06-30 15:32:11 -05:00
Doug Coleman
ea072731d4
add branch splitting pass to compiler.cfg
2009-06-30 15:31:48 -05:00
Slava Pestov
32738dddde
compiler.cfg.stack-analysis: fix typos in unit tests
2009-06-29 16:37:40 -05:00
Samuel Tardieu
4d5392fe56
Add divisors to math.primes.factors
2009-06-29 16:56:00 +02:00
Slava Pestov
82bfaca188
Fix conflict
2009-06-29 01:59:53 -05:00
Slava Pestov
0f68ee3e9a
compiler.cfg.linear-scan.resolve: remove redundant vocabs from using list
2009-06-28 22:58:35 -05:00
Slava Pestov
6e72cf9711
compiler.cfg.stack-analysis: fix another corner case with ##peek insertion, and fix changed-loc merging
2009-06-28 22:52:28 -05:00
Doug Coleman
1fab8efeee
Merge branch 'master' of git://factorcode.org/git/factor
2009-06-28 16:43:45 -05:00
Doug Coleman
3b0954f63e
fix bug in linear-scan.resolve by rewriting entire algorithm
2009-06-28 16:43:17 -05:00
Slava Pestov
d4de1d38b9
Merge branch 'master' of git://factorcode.org/git/factor
2009-06-27 17:33:00 -05:00
Slava Pestov
d5179b724e
compiler.cfg.stack-analysis: Fix case where both an ##inc-d/r and a ##peek get inserted
2009-06-27 17:32:37 -05:00
Doug Coleman
1cb6bc99da
Merge branch 'master' of git://factorcode.org/git/factor
...
Conflicts:
basis/compiler/cfg/linear-scan/resolve/resolve-tests.factor
2009-06-26 21:51:08 -05:00
Doug Coleman
90017eb248
add spill-temp to compiler.cfg.instructions, implement parallel register assignment in linear-scan.resolve
2009-06-26 21:48:21 -05:00
Slava Pestov
d6ef19de6e
Merge branch 'master' of git://factorcode.org/git/factor
2009-06-26 17:50:26 -05:00
Slava Pestov
ef32eb2e72
Fix bootstrap and unit test
2009-06-26 17:44:33 -05:00
Slava Pestov
96baede36a
Redesign compiler.cfg.stack-analysis to make compiler.cfg.height redundant, and to fix some problems
2009-06-26 17:29:55 -05:00
Doug Coleman
c44df7832c
Merge branch 'master' of git://factorcode.org/git/factor
2009-06-25 13:26:18 -05:00
Joe Groff
1c0a0155eb
Merge branch 'master' of git://factorcode.org/git/factor
2009-06-25 09:15:24 -05:00
Joe Groff
b6abd4a90c
windows.offscreen:make-bitmap-image wasn't filling in the component-type of the image object it makes
2009-06-25 09:15:04 -05:00
Slava Pestov
12a672b9f1
Merge branch 'master' of git://factorcode.org/git/factor
2009-06-24 23:36:42 -05:00
Joe Groff
327311b7a2
opengl.gl3 vocab containing only forward-compatible symbols. fill in some holes in opengl.gl
2009-06-24 18:27:54 -05:00
Joe Groff
845e9532ba
update demos using GL_EXT_framebuffer_object and GL_ARB_texture_float to use suffixless opengl 3 symbol names
2009-06-24 17:59:25 -05:00
Joe Groff
ab8b99d4fd
opengl 3.1
2009-06-24 17:28:37 -05:00
Slava Pestov
22fa524db1
compiler.cfg.stack-analysis: split up into three vocabs
2009-06-24 13:54:43 -05:00
Slava Pestov
f3cf8fad2b
compiler.cfg.linear-scan: fix unit tests
2009-06-24 13:54:12 -05:00
Samuel Tardieu
094c82c50b
Short circuit trivial composites
2009-06-24 15:53:50 +02:00
Samuel Tardieu
50191588e4
Get rid of vector reallocation by preallocating it
2009-06-24 15:53:46 +02:00
Joe Groff
53d2db9728
Merge branch 'master' of git://factorcode.org/git/factor
2009-06-24 08:29:28 -05:00
Joe Groff
eaddd1fdd4
provide image component-orders and component-types for all GPU texture formats
2009-06-24 08:26:30 -05:00
Samuel Tardieu
29b5a1dff5
Add extra tests for math.primes
2009-06-24 13:15:13 +02:00
Samuel Tardieu
41d804ddbd
Pack primes numbers by slices of 30
...
In any given 30 successive integers greater than 5, there are at most
8 prime numbers. Use this to tightly pack the result of the Eratostene
sieve. This lets us store more prime numbers than before in less space.
2009-06-24 13:15:12 +02:00
Slava Pestov
6e66c2c7b0
Merge branch 'master' of git://factorcode.org/git/factor
2009-06-23 21:33:52 -05:00
Slava Pestov
c53aca6016
compiler.cfg.linear-scan: fix coalescing to take lifetime holes into account
2009-06-23 21:32:51 -05:00
Joe Groff
c051665efb
throw in image component-orders for some more opengl formats
2009-06-23 20:01:53 -05:00
Joe Groff
85acbf4abc
validate cocoa menu items with handles-gesture?
2009-06-22 20:16:52 -05:00
Joe Groff
76b1f9ce03
some new UI words: handles-gesture? checks whether a gesture will be handled. topmost-window returns the topmost world object
2009-06-22 19:01:50 -05:00
Joe Groff
7de264c028
GL_BGR and GL_BGRA are standard these days
2009-06-22 18:07:46 -05:00
Joe Groff
ac3ec67c6a
separate component format from component order in image objects
2009-06-22 11:20:54 -05:00
Joe Groff
0cf61eb182
Merge branch 'master' of git://factorcode.org/git/factor
2009-06-22 10:34:14 -05:00
Slava Pestov
387f6df9e5
compiler.cfg.linear-scan: Debugging resolve pass
2009-06-22 00:24:51 -05:00
Joe Groff
16c977491b
bind file management action gestures to standard cocoa menu items
2009-06-21 20:53:11 -05:00
Slava Pestov
0068a3d965
stack-checker: fix doc typo reported by OneEyed
2009-06-21 15:11:41 -05:00
Doug Coleman
166afc5784
add scaffold words for default vocab roots
2009-06-21 00:59:06 -05:00
Doug Coleman
785c341c9b
50% speedup using unsafe nth/set-nth/exchange in checksums.sha
2009-06-21 00:58:36 -05:00
Slava Pestov
330bea3cc2
compiler.cfg.linear-scan.resolve: unit tests
2009-06-21 00:23:34 -05:00
Slava Pestov
5a78956956
compiler.cfg.linear-scan: Working on resolve pass
2009-06-21 00:20:01 -05:00
Joe Groff
5fec8bb449
Merge branch 'master' of git://factorcode.org/git/factor
2009-06-20 19:30:43 -05:00
Joe Groff
7d8c59edeb
more action gestures. btw "redo" is ^y (not ^Z) outside of OS X
2009-06-20 19:30:34 -05:00
Slava Pestov
c1839200dd
compiler.cfg.linear-scan.assignment: correctly compute live registers at GC check points
2009-06-20 15:33:12 -05:00