Commit Graph

46 Commits (9e23fe2df43108575e774a224c70a8e93a7ca260)

Author SHA1 Message Date
Doug Coleman afc071eaf8 fix docs 2008-11-13 16:15:57 -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
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 fab60f94a7 Minor performance improvements 2008-11-11 19:51:26 -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 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 2445a83cb9 Clean up recursive-state usage 2008-11-03 03:06:11 -06:00
Slava Pestov b6ec4dc6ff Merge branch 'master' of git://factorcode.org/git/factor into new_codegen 2008-10-19 18:10:48 -05:00
Doug Coleman 78a529b1c3 remove directory from the vm 2008-10-19 13:27:59 -05:00
Slava Pestov b5f9d47968 Merge branch 'master' into new_codegen 2008-10-19 01:12:20 -05:00
Doug Coleman 27c36974a7 remove primitives from core, update usages 2008-10-18 21:42:01 -05:00
Slava Pestov 5f93ab74e4 Fix #dispatch generation 2008-10-12 16:46:59 -05:00
Slava Pestov 0e4e05d5cd Debugging new codegen 2008-10-08 03:51:44 -05:00
Slava Pestov c19f2257f4 Fix permission bits 2008-10-02 08:34:49 -05:00
Slava Pestov 22f9478c5e Better error printing 2008-09-22 02:27:07 -05:00
Slava Pestov 3d790d8ac8 Memory ricing to make deploy tests pass on Mac OS X/PowerPC 2008-09-19 00:26:27 -05:00
Slava Pestov cf80dd122a Updating code for make and fry changes 2008-09-10 22:11:40 -05:00
Slava Pestov 44f53de164 Move make to its own vocabulary, remove fry _ feature 2008-09-10 20:07:00 -05:00
Slava Pestov d14d398895 Tweak stack checker so that we no longer need to do forget-errors during normal usage 2008-09-07 02:37:13 -05:00
Doug Coleman 8a921c791c if-empty changes 2008-09-06 19:13:59 -05:00
Slava Pestov b6c2a85931 Remove shuffle word, rename shuffle* to shuffle 2008-09-05 19:54:05 -05:00
Slava Pestov 6d506b89e8 Image size reduction 2008-09-03 18:23:48 -05:00
Slava Pestov e1716d92b3 Remove delegation slot 2008-09-03 03:46:56 -05:00
Doug Coleman 05779654ec new accessors 2008-09-02 01:53:55 -05:00
Slava Pestov 29e5ed2adb Fixing deploy tool 2008-08-31 19:17:04 -05:00
Slava Pestov f5fbd94a4c New compiled crossref implementation 2008-08-31 01:34:00 -05:00
Slava Pestov 3cef7c9992 Smarter usage tracking system 2008-08-30 02:31:27 -05:00
Slava Pestov 85cdb1b767 Working on new compiled usage strategy; old one was wrong 2008-08-30 00:05:27 -05:00
Slava Pestov 1fcbdf9d52 Fix more compiler bugs 2008-08-29 00:26:47 -05:00
Slava Pestov 74dccc7fbf Debugging compiler 2008-08-28 22:28:34 -05:00
Slava Pestov 91059b4ad6 Documentation update 2008-08-23 20:24:54 -05:00
Slava Pestov 8ce6924702 Fix minor inference errors 2008-08-23 15:05:46 -05:00
Slava Pestov a4ac751605 Starting to remove delegation 2008-08-22 23:20:49 -05:00
Slava Pestov 40e926609a Fixing unit tests 2008-08-22 22:07:59 -05:00
Slava Pestov 17758f3749 Stack flow checker; various fixes 2008-08-19 17:11:33 -05:00
Slava Pestov aa9341e579 Enforce that usages of >r/r> must be balanced within a quotation 2008-08-18 20:49:03 -05:00
Slava Pestov 705054b567 Working on stricter retain stack usage 2008-08-18 20:08:45 -05:00
Slava Pestov 2fa08c75b9 Fix bug, better tests 2008-08-15 21:45:05 -05:00
Slava Pestov 32b762f5ec Fixing soundness issues with recursive combinators 2008-08-15 04:09:23 -05:00
Slava Pestov e1987d4af9 Debugging new optimizer 2008-08-14 23:35:19 -05:00
Slava Pestov a61e13f7be More aggressive DCE 2008-08-13 23:52:49 -05:00
Slava Pestov a982e564bf More DCE work 2008-08-13 18:56:50 -05:00
Slava Pestov a5ff214d67 More load fixes 2008-08-12 03:38:56 -05:00
Slava Pestov 56d272df9e Merge branch 'master' into new_optimizer 2008-08-12 03:36:44 -05:00
Slava Pestov 48fa2e2d0e Updating some code 2008-08-12 03:31:48 -05:00
Slava Pestov f2a5a30c6f New front-end and high-level optimizer lands 2008-08-12 03:22:45 -05:00