Commit Graph

12033 Commits (501b54ce52d35b6acb9fec66734b70e52fe69b18)

Author SHA1 Message Date
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
John Benediktsson d52f55f508 deques: enhance slurp-deque stack effect. 2014-12-11 15:57:48 -08:00
John Benediktsson fa151f30b7 search-deques: simplify. 2014-12-11 14:52:51 -08:00
John Benediktsson 1f3dc639db deques: adding stack effect to quot in slurp-deque. 2014-12-11 14:05:04 -08:00
John Benediktsson c3a4bdcf68 compiler.cfg.linear-scan.resolve: use if-empty. 2014-12-11 14:00:50 -08:00
John Benediktsson 068ddd6c7b compiler: cleanup cfg passes to have stack effect ( cfg -- ) 2014-12-11 12:48:43 -08:00
John Benediktsson a563f92b27 prettyprint: a bit more cleanup. 2014-12-11 08:02:45 -08:00
John Benediktsson 9a642531e0 prettyprint: some minor cleanup. 2014-12-11 07:52:14 -08:00
Björn Lindqvist 33500db79f compiler.cfg.*: help-lint and test case fixes 2014-12-11 15:02:40 +01:00
Björn Lindqvist 08e9f18c3b compiler.cfg.*: fix for test cases that broke due to stack effect changes 2014-12-11 14:30:47 +01:00
Björn Lindqvist bfc0ef815b compiler.cfg.dominance: fix for #1227, the dom children needs to be sorted to ensure that the same instruction sequence is generated every time 2014-12-11 14:30:47 +01:00
Björn Lindqvist 628c87c5b1 compiler.cfg.utilities: adding connect-bbs and make-edges 2014-12-11 14:30:47 +01:00
Björn Lindqvist 00e2d9f116 compiler.cfg.dominance: some more docs 2014-12-11 14:30:47 +01:00
Björn Lindqvist c85175c10c compiler.cfg.*: new utility word apply-passes to improve the looks of long cleave's where each quotation only contains one word 2014-12-11 14:30:47 +01:00
Björn Lindqvist e371327ec4 compiler.cfg.ssa.construction.tests: fix tc broken by previous commit 2014-12-11 14:30:47 +01:00
Björn Lindqvist befbe0bb59 compiler.cfg.dominance: changed stack effect compute-dominance ( cfg -- cfg' ) to ( cfg -- ) 2014-12-11 14:30:47 +01:00
Björn Lindqvist e5866dfa80 compiler.cfg.*: changed stack effect of needs-predecessors from ( cfg -- cfg') to ( cfg -- ) 2014-12-11 14:30:47 +01:00
Björn Lindqvist 76cb665a8d compiler.cfg.dominance: change needs-dominance effect from ( cfg -- cfg') to ( cfg -- ) 2014-12-11 14:30:46 +01:00
Björn Lindqvist 054982f24a compiler.cfg.*: docs for compiler.cfg.dominance and compiler.cfg.ssa.construction 2014-12-11 14:30:46 +01:00
Björn Lindqvist 53b7f82368 Docs: more compiler docs 2014-12-11 14:30:46 +01:00
Björn Lindqvist 5fe9ce4235 compiler.cfg: fix stack effect of cfg-changed and predecessors changed to ( cfg -- ) 2014-12-11 14:30:46 +01:00
Björn Lindqvist a0d4e9b417 compiler.cfg.stacks.uninitialized: this compiler pass isn't used anymore -- let's get rid of it 2014-12-11 14:30:46 +01:00
Björn Lindqvist 8744d908b6 compiler.cfg.*: fix stack effect of compiler passes in optimize-cfg
since they all modify the cfg in place, it is better if their stack
effect is ( cfg -- ) instead of ( cfg -- cfg' )
2014-12-11 14:30:45 +01:00
Björn Lindqvist 971a157369 compiler.cfg.instructions: ##alien-assembly should be in the alien-call-insn union but not gc-map-insn 2014-12-08 18:13:46 -08:00
Björn Lindqvist ba6accb983 cpu.x86.tests: more tests 2014-12-08 18:13:46 -08:00