Commit Graph

12157 Commits (6480a46c1e274d6ca9612377167824a0d943fffd)

Author SHA1 Message Date
Björn Lindqvist 745d3f29b2 compiler.cfg.*: a bunch of new docstrings and other doc fixes 2015-04-29 09:31:56 -07:00
Björn Lindqvist f9812d9874 compiler.cfg.stacks.*: possible fix for #1289
instead of delaying outputting ##replace instructions to when they are
needed, output them directly in the block so that "holes" in the
stacks are avoided.
2015-04-29 09:31:56 -07:00
Björn Lindqvist 177a356240 compiler.cfg.stacks.local: refactorings on the vocab to try and make it using less dynamic variables 2015-04-29 09:31:56 -07:00
Björn Lindqvist 91144c0712 compiler.cfg.stacks.*: simplify the code a little by making replace-sets, peek-sets and kill-sets contain hash-sets instead of hash-tables 2015-04-29 09:31:56 -07:00
Björn Lindqvist 0ff4c68e15 compiler.cfg.stacks.local: to simplify, end-local-analysis can take the block it operates on as argument 2015-04-29 09:31:56 -07:00
Björn Lindqvist b983053130 compiler.cfg.*: putting test-init in compiler.cfg.stacks.tests didn't work, put new word cfg-unit-test in compiler.test 2015-04-29 09:31:55 -07:00
Björn Lindqvist 4390561a6e compiler.cfg.*: new word reset-vreg-counter, useful for making test writing more convenient 2015-04-29 09:31:55 -07:00
Björn Lindqvist 2536943e82 compiler.cfg.*: new word connect-Nto1-bbs
using that word predecessors is already up-to-date so calling needs-predecessors isn't needed
2015-04-29 09:31:55 -07:00
Björn Lindqvist 8a7699e42c compiler.cfg.*: refactoring to remove the initial-basic-block word 2015-04-29 09:31:55 -07:00
Björn Lindqvist 6559382028 compiler.cfg.*: ds-load removed 2015-04-29 09:31:55 -07:00
Björn Lindqvist cc1903bec1 compiler.cfg.*: some refactoring in the stack tracking for #shuffle nodes
instead of having separate words for the stacks like inc-d/r and ds/rs-store use generic words that work on either stack
2015-04-29 09:31:55 -07:00
Björn Lindqvist eda9535ce6 compiler.tree.propagation.call-effect: changing back call-effect-unsafe?, changing it made all images to large for some reason 2015-04-29 09:31:55 -07:00
Björn Lindqvist 92165e4ee7 Docs: bunch of smaller documentation fixes for various vocabs 2015-04-29 09:31:54 -07:00
Björn Lindqvist 837e098d41 compiler.cfg.*: a little more docs 2015-04-29 09:31:54 -07:00
Björn Lindqvist ba4736ff75 compiler.cfg.stacks.local: change current-height to a two-tuple { { d emit-d } { r emit-r } } it makes the code a bit simpler 2015-04-29 09:31:54 -07:00
Björn Lindqvist c360f0123b compiler.cfg.stacks: a few unused words removed 2015-04-29 09:31:54 -07:00
Björn Lindqvist 09238cee4b compiler.tree.propagation.call-effect: docs for this vocab 2015-04-29 09:31:54 -07:00
Björn Lindqvist acc1bd3221 compiler.*: removing the check-d and check-r slots from gc-map and adjusting code that depended on those 2015-04-29 09:31:53 -07:00
Björn Lindqvist 2cd2aa498a VM: the compiler doesn't emit any live overinitialized locations anymore
Any overinitialized location immediately becomes garbage and is not
reused again. This is very nice because then the gc maps can be
simpler again.
2015-04-29 09:31:53 -07:00
Björn Lindqvist ded3760d46 compiler.*: merge of ##inc-r and ##inc-d into one instruction ##inc with a loc slot
this is nice because it leads to simpler code and matches how ##peek and ##replace instructions work
2015-04-29 09:31:53 -07:00
Björn Lindqvist c7d9cb4c3d compiler.cfg.*: new and improved docs 2015-04-29 09:31:53 -07:00
Björn Lindqvist 74ea76a3c9 compiler.cfg: unlikely? slot unused, lets get rid of it 2015-04-29 09:31:53 -07:00
Björn Lindqvist bb504b7c3d compiler.cfg.dependence: this vocab was only used by scheduling so it isn't needed anymore 2015-04-29 09:31:53 -07:00
Björn Lindqvist b3ebb04d6d compiler.cfg.*: since the height and scheduling compiler passes aren't used anymore lets remove them 2015-04-29 09:31:53 -07:00
Doug Coleman bfc1bccbfd core-foundation.fsevents: Fix typedefs and array types to unsigned. 2015-04-21 13:11:26 -07:00
John Benediktsson e5b12a1c59 interpolate: allow anonymous by-order stack arguments. 2015-04-20 14:44:49 -07:00
John Benediktsson 5251d7c9bc interpolate: number stack arguments from top of stack. 2015-04-20 13:02:09 -07:00
John Benediktsson 5726f4e207 Revert "interpolate: number stack arguments from top of stack."
This reverts commit 162f75a7e5.
2015-04-20 11:19:49 -07:00
John Benediktsson 162f75a7e5 interpolate: number stack arguments from top of stack. 2015-04-20 11:10:27 -07:00
John Benediktsson d235a6562e simple-tokenizer: whoops, need to escape \ 2015-04-19 21:12:40 -07:00
John Benediktsson a30c0c0946 simple-tokenizer: consider \t \n \r spaces also. 2015-04-19 20:47:55 -07:00
John Benediktsson 56bb141257 peg.ebnf: unescape strings in a few places. 2015-04-19 20:47:26 -07:00
John Benediktsson 338e99e434 peg: remove trailing whitespace from docs. 2015-04-19 20:47:05 -07:00
John Benediktsson 30d7d0dac2 core-foundation.fsevents: add more flags. 2015-04-19 15:57:05 -07:00
John Benediktsson 7e4d1178c3 interpolate: don't break backwards compatibility. 2015-04-18 20:22:29 -07:00
John Benediktsson c5ed2c89fe interpolate: some fixes for recent API change. 2015-04-18 19:36:49 -07:00
John Benediktsson ce491a5aa1 interpolate: allow mixing of named variables and stack arguments. 2015-04-18 17:18:37 -07:00
John Benediktsson 1ce1e2d27e help.apropos: remove extra whitespace. 2015-04-17 18:04:08 -07:00
John Benediktsson 9eb365abe0 http.client: add quot stack effect. 2015-04-17 17:54:29 -07:00
John Benediktsson a5339d48c8 furnace.utilities: use "header" word, some cleanup. 2015-04-17 17:54:13 -07:00
John Benediktsson 50725002be formatting: support space prefix for numbers. 2015-04-17 17:50:00 -07:00
John Benediktsson b0ba4a5925 mime.multipart: use header, some cleanup. 2015-04-17 17:41:56 -07:00
Doug Coleman 1d1ef9079c opengl.capabilities: Make it more explicit that you should put the
directory that contains opengl not the library name itself.
2015-04-09 15:05:20 -05:00
John Benediktsson faa7fde557 tools.ps: enable use from command-line. 2015-04-09 10:43:43 -07:00
John Benediktsson 24101fbaeb tools.hexdump: enable use from command-line. 2015-04-09 10:43:20 -07:00
John Benediktsson ea2547aae3 editors.emacs: fix doc typo. 2015-04-01 15:57:06 -07:00
Doug Coleman 7895e0fcaa io.launcher.windows tests: Use unique-file instead of temp-file. Fixes 2015-04-01 15:44:55 -07:00
John Benediktsson e164fcf431 http.parsers: parse a "simple request". 2015-03-11 17:48:28 -07:00
John Benediktsson 7c30ae8ab6 gobject.ffi: fix windows dll name. 2015-03-08 08:51:53 -07:00
John Benediktsson 3a12615b12 xml.writer: adding a test for pprint-xml fix. 2015-02-28 16:40:13 -08:00
John Benediktsson c7f440e097 xml.data: fix issue with empty tags not being printed use shortened <tag/> format. 2015-02-28 16:00:00 -08:00
John Benediktsson e243a886d3 xml.data: adding tests for tags assoc protocol. 2015-02-28 15:37:06 -08:00
John Benediktsson 102aa2cbc1 xml.data: make tags support assoc protocol as documented. 2015-02-28 15:34:24 -08:00
Mark Green fe2c2d23de Adding help for <model-field> and <action-field>. 2015-02-21 18:39:04 -08:00
Doug Coleman 857e60db5b alien.libraries: Cannot include alien.libraries.finder here for docs. 2015-02-13 11:31:56 -08:00
Benjamin Pollack e6fecadb04 Explicitly reference find-library in alien docs
Factor 0.98 added a great find-library library, but unless you already know it
exists, you're probably not going to discover it.  This attempts to help with
that by adding a few cross-references with the add-library word and the main
alien article.
2015-02-11 17:38:44 -08:00
Doug Coleman 5e48dfb1e6 stack-checker.state: Fix error in docs. Tweak doc grammar. 2015-02-05 13:49:14 -08:00
Doug Coleman 1b35e19a03 bootstrap.image.upload: Use pscp on Windows for uploading boot images
since c:\ paths are treated as hostnames and the command fails.
2015-02-05 13:43:49 -08:00
John Benediktsson 7053d28b6d stack-checker: minor help-lint fixes. 2015-02-05 07:22:15 -08:00
Björn Lindqvist e7fc6a789e compiler.tree.*: more compiler tree docs 2015-02-05 11:01:05 +00:00
Björn Lindqvist 636d8879d6 stack-checker.*: misc doc additions 2015-02-05 11:01:05 +00:00
Björn Lindqvist f99c03d023 stack-checker.known-words: docs and tests 2015-02-05 11:01:05 +00:00
Björn Lindqvist 086dffc53a stack-checker.values: docs and tests 2015-02-05 11:01:05 +00:00
Björn Lindqvist bd376f5094 stack-checker.state: docs and tests 2015-02-05 11:01:04 +00:00
Björn Lindqvist b493dac3c9 stack-checker.backend: docs and tests 2015-02-05 11:01:04 +00:00
Benjamin Pollack 4ada328880 Make fuel more discoverable when browsing Factor help 2015-02-03 15:27:46 -08:00
John Benediktsson ac23acc2c9 Fix some minor errors in help-lint. 2015-01-30 17:04:40 -08:00
Benjamin Pollack 5e01164a72 Add more documentation for math.statistics 2015-01-30 17:04:40 -08:00
John Benediktsson 14b3261bef ui: cleanup some using lists. 2015-01-29 11:41:18 -08:00
Doug Coleman edf1bddd67 compiler.tests.optimizer: Re-enable the minor-gc test case that was
failing until bjourne's latest commits.
2015-01-22 13:03:28 -08:00
Doug Coleman e4e6c0031a compiler.cfg.stacks.clearing: Fix help-lint-all. 2015-01-22 12:30:49 -08:00
Björn Lindqvist d2c0ae9fd9 compiler.cfg.stacks.*: more docs 2015-01-22 12:17:21 -08:00
Björn Lindqvist 71b054cf39 compiler.cfg.stacks.*: updated tests to match 2015-01-22 12:17:21 -08:00
Björn Lindqvist 3c1f223d90 compiler.cfg.stacks.*: use insn# as the key in the stack-record instead of the insn tuple itself 2015-01-22 12:17:21 -08:00
Björn Lindqvist d19869f906 compiler.cfg.stacks.*: many new and fixed tests 2015-01-22 12:17:21 -08:00
Björn Lindqvist d4493858da compiler.cfg.stacks.*: vacant-peek checking readded 2015-01-22 12:17:20 -08:00
Björn Lindqvist 640759ffed compiler.cfg.*: new step in finalization: clear-uninitialized
this step is supposed to analyze the cfg, find where there are peeks
that can cause stack underflow, and insert replace-imm instructions so
that there are no uninitialized stack locations if they do. could fix #1187
2015-01-22 12:17:20 -08:00
Björn Lindqvist fd06e22e9a compiler.cfg.stacks.map: new vocab for creating an assoc that contains the stack state for each instruction in a cfg 2015-01-22 12:17:20 -08:00
Björn Lindqvist 163fef12f9 compiler.cfg.*: detached the normalize-height and schedule-instructions passes
those stages cause uninitialized "holes" in the stacks which in turn
causes gc errors if stack underflows occur
2015-01-22 12:17:20 -08:00
John Benediktsson 208f01416d core-foundation.run-loop: make sure to reset when switching between UI and NO_UI. 2015-01-17 16:40:21 -08:00
John Benediktsson 3f3c11c446 ui.backend.cocoa: fix reset of thread-timer. 2015-01-17 15:58:57 -08:00
John Benediktsson be173c8a43 core-foundation.run-loop: cleanup timer-thread code. 2015-01-17 14:16:24 -08:00
Doug Coleman ceebc1d6c1 compiler: Fix help-lint for @bjourne's recent awesome docs. 2015-01-17 14:02:59 -08:00
Doug Coleman b4e9334d04 compiler.tests.stack-trace: Fix unit test. 2015-01-17 13:57:56 -08:00
Doug Coleman c86b933388 mime: Use new mime.types file. Keep old mime types around because I'm a hoarder. Closes #1258. 2015-01-17 13:48:58 -08:00
Doug Coleman c4fbeccfa8 compiler.tests.optimizer: Disable minor-gc test case for now. #1187. 2015-01-17 11:02:05 -08:00
Björn Lindqvist b6d25ba090 compiler.tests.stack-trace: unit tests against the #1265 bugs 2015-01-15 09:29:14 +00:00
John Benediktsson 2453a785f7 json.writer: make sure we make hex values two digits zero padded. 2015-01-04 09:37:03 -08:00
John Benediktsson 1ec43d7913 json.writer: support escaping unicode > 0x10000. Thanks @jonenst! 2015-01-03 08:30:26 -08:00
Björn Lindqvist d0dde922bd compiler.cfg.*: new unit test vocabs 2014-12-31 03:37:17 +01:00
Björn Lindqvist 5782855343 compiler.cfg.*: more docs 2014-12-31 03:37:16 +01:00
Björn Lindqvist 0432b17409 compiler.cfg.*: refactoring away the compute-global-sets word 2014-12-31 03:37:16 +01:00
Björn Lindqvist 79d294e4bf compiler.cfg.*: docs and more tests 2014-12-31 03:37:16 +01:00
Björn Lindqvist 1bd4525ac6 compiler.cfg.stacks.local: refactoring making stack-changes and height-changes take and return stuff instead of using variables and the make building 2014-12-31 03:37:16 +01:00
Björn Lindqvist e87be7b5c8 compiler.cfg.parallel-copy: docs 2014-12-31 03:37:16 +01:00
Björn Lindqvist 24c9dbe160 compiler.cfg.stacks.height: these words are unused 2014-12-31 03:37:16 +01:00
Björn Lindqvist 2ccbcd6af6 compiler.cfg.*: more compiler docs 2014-12-31 03:37:16 +01:00
Björn Lindqvist e968c16139 compiler.cfg.stacks.finalize: initial docs 2014-12-31 03:37:16 +01:00
John Benediktsson 3515a45b84 io.launcher: fix stack effects. 2014-12-30 17:23:24 -08:00
John Benediktsson 3e7bc051d4 io.launcher: fix docs for with-process-reader and with-process-writer. 2014-12-30 15:04:34 -08:00
John Benediktsson 9fd568267d io.launcher: add versions of with-process that preserve process and status. 2014-12-30 14:51:23 -08:00
John Benediktsson 83f7b31910 io.launcher: cleanup public interface, make some things private or internal. 2014-12-30 10:04:09 -08:00
John Benediktsson 167f4e789c json.writer: don't escape spaces, thats weird. 2014-12-25 08:39:53 -08:00
John Benediktsson 28ca2f5275 unix: some using cleanups. 2014-12-24 11:16:11 -08:00
John Benediktsson 56b95b09a1 alien.c-types: move definitions of stdint.h from unix.types. 2014-12-23 19:40:21 -08:00
Doug Coleman c59a025288 io.ports: Make buffered-port not have a length because of Linux virtual files and TCP sockets.
Related to issues #1256 and #1259.
2014-12-23 13:47:50 -08:00
John Benediktsson 0b460c431b tools.deploy.backend: add word for deleting cached staging images. 2014-12-23 08:56:05 -08:00
John Benediktsson c0dda5c7e9 command-line: save the executable in a variable so that people don't use (command-line) directly if possible. 2014-12-23 08:12:31 -08:00
John Benediktsson 25dd9f3abb bootstrap: fix this use of (command-line). 2014-12-22 23:14:47 -08:00
John Benediktsson 9b47a82e78 tools.deploy.shaker: set the rest of the args to preserve current behavior. 2014-12-22 22:44:42 -08:00
John Benediktsson 025283f252 vm: store full command-line including executable first argument. 2014-12-22 22:39:52 -08:00
John Benediktsson 3709749ea1 tools.disassembler: allow disassemble of compose and curry. 2014-12-19 11:40:41 -08:00
John Benediktsson 1a3522f20d Revert "ui.tools.browser: one browser to rule them all."
This reverts commit 178c8c27e8.
2014-12-17 17:38:14 -08:00
John Benediktsson 178c8c27e8 ui.tools.browser: one browser to rule them all. 2014-12-17 17:32:20 -08:00
John Benediktsson f6af1da32f ui: use control-value/set-control-value in a few places. 2014-12-17 13:05:00 -08:00
John Benediktsson 2d5358d713 macros: some cleanup. 2014-12-16 11:09:47 -08:00
John Benediktsson 2e56a3251a bitstreams: cleanup and fix bug in bit-writer-bytes. 2014-12-15 19:28:24 -08:00
John Benediktsson c01267d467 cocoa.dialogs: document save-panel stack effect better. 2014-12-15 19:24:57 -08:00
John Benediktsson c2c722891e compiler.cfg.save-contexts: fix help-lint. 2014-12-15 15:11:06 -08:00
John Benediktsson c6ee627e1b heaps: correctly size the data vector for >min-heap and >max-heap. 2014-12-15 13:29:01 -08:00
John Benediktsson 2a893a110a compiler.cfg.linear-scan.allocation.state: don't use slot.syntax. 2014-12-15 13:10:59 -08:00
Björn Lindqvist aee55f1b83 compiler.cfg.linear-scan.assignment: forgot that i removed live-intervals>min-heap 2014-12-15 21:04:53 +01:00
Björn Lindqvist d6c1c075ff compiler.cfg.linear-scan.allocation: using slurp-heap 2014-12-15 20:48:34 +01:00
Björn Lindqvist 84f8f26ce8 compiler.cfg.linear-scan.allocation.state: doc fixing 2014-12-15 20:44:53 +01:00
Björn Lindqvist 35d00da765 compiler.cfg.linear-scan.allocation.*: maybe a fix for #1227
The register allocator pops from the unhandled-intervals and
unhandled-sync-points heaps. If two live intervals share the same
start slot, then they can be popped in either order leading to
differently generated code. So instead use one
heap (unhandled-min-heap) and both the start and end slot as the heap
key to resolve tie-breakers
2014-12-15 20:44:53 +01:00
Björn Lindqvist 173f7c0869 compiler.cfg.scheduling: refactoring to use the simple-optimization combinator 2014-12-15 20:44:07 +01:00
Björn Lindqvist 8a011c8366 compiler.cfg.*: more docs 2014-12-15 20:44:07 +01:00
Björn Lindqvist c810677b47 compiler.cfg.linear-scan.*: refactoring to simplify init-allocator and get rid of init-unhandled 2014-12-15 20:44:06 +01:00
Björn Lindqvist fab478482e compiler.cfg.linear-scan.allocation: refactoring to simplify the (allocate-registers) recursion 2014-12-15 20:44:06 +01:00
Björn Lindqvist 52c6009aeb compiler.cfg.linear-scan.assignment: utility word heap-pop-while which lets you express expire-old-intervals and activate-new-intervals more nicely + tests 2014-12-15 20:40:49 +01:00
Björn Lindqvist 0af46ac4de compiler.cfg.linear-scan.assignment: more docs and refactoring of the init-unhandled and assign-registers-in-block words 2014-12-15 20:40:49 +01:00
Björn Lindqvist a7137f32ff compiler.cfg.save-contexts: refactoring of the vocab, using the simple-optimization combinator and union classes you can shorten it a lot 2014-12-15 20:36:27 +01:00
John Benediktsson 52e7538869 ui: specify two places where image-name tuples are expected. 2014-12-15 09:56:03 -08:00
John Benediktsson 768ad8abb9 heaps: fix docs for slurp-heap. 2014-12-15 08:56:24 -08:00
John Benediktsson fe377ba02a heaps: fix slurp-heap to allow modifying the heap while slurping. 2014-12-15 08:53:48 -08:00
hyphz fb9cf1219f Create bitstreams-docs.factor 2014-12-14 16:02:42 -08:00
John Benediktsson e5c69d3e9b compiler: try this for compiler.cfg.builder.alien. 2014-12-13 18:44:35 -08:00
John Benediktsson a689211ae1 compiler.cfg.builder: use compiler.cfg.builder.alien. 2014-12-13 18:08:50 -08:00
John Benediktsson 1030f592e0 core-graphics: cleanup usings. 2014-12-13 16:26:15 -08:00
John Benediktsson c63a106e1d core-text: cleanup usings. 2014-12-13 16:26:09 -08:00
John Benediktsson be64b40b7f core-foundation: cleanup usings. 2014-12-13 16:25:59 -08:00
John Benediktsson 4a13633e5d cocoa: cleanup usings. 2014-12-13 16:25:48 -08:00
John Benediktsson c65877104e compiler: cleanup usings. 2014-12-13 16:10:21 -08:00
John Benediktsson 68b662c44c heaps: make data-first throw on empty. 2014-12-13 16:01:20 -08:00
John Benediktsson 46e0426795 compiler.cfg.stack-frame: fix tests. 2014-12-12 17:14:39 -08:00
John Benediktsson 1911b183a0 compiler.cfg.build-stack-frame: fix tests. 2014-12-12 15:22:22 -08:00
John Benediktsson e576fb5fec peg: some cleanup. 2014-12-12 14:19:39 -08:00
John Benediktsson 8f4c4ea2e1 compiler.cfg.build-stack-frame: some cleanup. 2014-12-12 11:59:23 -08:00
John Benediktsson 028b50fd19 dlists: some cleanup. 2014-12-11 17:33:31 -08:00
John Benediktsson b9dc159949 deques: enhance slurp-deque stack effect. 2014-12-11 15:59:33 -08:00