Commit Graph

1169 Commits (d56fefdfeb9af00d7db41ae423491e3f8dc80f56)

Author SHA1 Message Date
Slava Pestov 4fa46fba2d compiler.tree.escape-analysis: fix bug that comes up when inheritance is used 2010-02-16 14:44:13 +13:00
Slava Pestov 6bf88d104b compiler.tree.propagation.transforms: tweak 2^ transform to fix performance regression in benchmark.beust2; introduced by 47d6507548 2010-02-16 01:03:09 +13:00
Slava Pestov 4cc907e1af compiler.tree.propagation, compiler.tree.escape-analysis: make these passes handle constants in a more robust way in compilation units involving tuple reshaping 2010-02-12 02:50:59 +13:00
Slava Pestov fd11ad30dc compiler.tree.propagation.inlining: remove some unused words 2010-02-11 16:29:48 +13:00
Slava Pestov 410c501b76 compiler.units: fix bug that came up recently with nested compilation units 2010-02-04 03:20:48 +13:00
Slava Pestov 80f604ac73 compiler: remove some unnecessary complexity 2010-02-04 01:36:52 +13:00
Slava Pestov ffa3223f87 compiler: tweak recompilation logic. speeds up '"terrain" require' by 8 seconds 2010-02-04 01:09:57 +13:00
Slava Pestov ca9852b541 compiler.tree.propagation.call-effect: hack so that call( doesn't clear the last error 2010-02-03 23:11:33 +13:00
Slava Pestov edbb980e3f Revert "macros: macro body is now defined in its own subword, for compile-time stack effect checking"
This reverts commit 24de7c52f0c3f21cfcdb80235cac7296b0401c85.
2010-02-03 23:11:29 +13:00
Slava Pestov d19709c188 vm: modify-code-heap primitive now takes a pair of parameters, update-existing? and reset-pics?. If no generic words were changed, PICs do not need to be reset. If no existing words were redefined, the code heap doesn't have to be traced at all. Speeds up compilation of PEGs since those create lots of compilation units 2010-02-03 23:11:28 +13:00
Slava Pestov c3f66d49a3 Better error message for call( when quotation has the wrong effect 2010-02-03 23:11:25 +13:00
Slava Pestov 29e1d268b7 generic: rename method-body predicate class to method 2010-02-03 23:11:24 +13:00
Slava Pestov 0ff526f478 macros: macro body is now defined in its own subword, for compile-time stack effect checking 2010-02-03 23:11:22 +13:00
Slava Pestov 83a2de6565 Fix ffi-test library to work with Windows SDK. Turns out MINGW has a different ABI for struct returns than MS's compiler; make the MS ABI the default for cdecl on Windows, and add mingw ABI for libraries that use the MINGW ABI 2010-02-02 04:01:12 -06:00
Slava Pestov eec325b4a6 compiler.crossref: clean up and fix bug with forgotten classes 2010-02-01 17:20:08 +13:00
Slava Pestov 7f664a6387 Fix a couple of unit tests that were relying on the old compiler crossref structures 2010-01-31 23:26:55 +13:00
Slava Pestov 8a8c47ab1d compiler.cfg.intrinsics.simd: ignore dummy assert-positive word 2010-01-31 18:19:14 +13:00
Slava Pestov 8f763fe8da Merge git://github.com/littledan/Factor into littledan 2010-01-31 02:54:58 +13:00
Slava Pestov 8e2e869ec5 stack-checker.dependencies: make conditional dependencies more robust 2010-01-31 01:55:35 +13:00
Slava Pestov 5753d76c98 compiler.crossref: word props were stored the wrong way round 2010-01-30 22:33:27 +13:00
Slava Pestov 351c68094c compiler.crossref: cleanup 2010-01-30 21:14:40 +13:00
Slava Pestov 93c2428cf4 compiler.crossref: more space-efficient storage of dependency information 2010-01-30 09:29:02 +13:00
Slava Pestov 39aa70aa88 Clean up some code in preparation for a refactoring 2010-01-30 09:29:02 +13:00
Slava Pestov 9b49424070 compiler.crossref: memoize dependency evaluation 2010-01-30 09:29:01 +13:00
Slava Pestov 21abe46414 compiler.crosssref: rename word property 2010-01-30 09:29:00 +13:00
Slava Pestov 65ba4b58d9 stack-checker.dependencies: add tuple layout dependencies for use by 'new' and 'boa' 2010-01-30 09:29:00 +13:00
Slava Pestov df16224ab2 Re-work flushed dependencies into new compiler cross-referencing framework 2010-01-30 09:29:00 +13:00
Slava Pestov 13f920babb Add some utility words to stack-checker.dependencies in preparation for a refactoring 2010-01-30 09:28:59 +13:00
Slava Pestov 468a3a74f1 Re-defining a tuple class now invalidates cached quotation stack effects 2010-01-30 09:28:59 +13:00
Slava Pestov 2138b55708 New 'conditional dependency' mechanism for more accurate recording of recompilation information 2010-01-30 09:28:57 +13:00
Slava Pestov dba5b0be08 compiler.tree.propagation.call-effect: clear out dependency tracking variables to ensure that infer calls made by call( as part of the compile process doesn't pollute the dependencies of the word being compiled 2010-01-30 09:28:57 +13:00
Slava Pestov 1da446d8fc Code cleanups 2010-01-30 09:28:56 +13:00
Slava Pestov 0738e85df1 Work in progress: record constant-folds of predicate words, and call-next-method invocations, in the same way that method inlining are recorded, for greater recompilation accuracy 2010-01-30 09:28:56 +13:00
Slava Pestov 9d207cc913 Fix regression when forgetting classes 2010-01-30 09:28:55 +13:00
Slava Pestov ed7f8341e5 More changes so that mixins trigger even less recompilation 2010-01-30 09:28:53 +13:00
Slava Pestov 0a77399242 Add test case for mixin bug Doug found, seems to be fixed now 2010-01-30 09:28:52 +13:00
Daniel Ehrenberg 8f4bd0e7df Merge branch 'master' of git://factorcode.org/git/factor 2010-01-26 14:14:05 -06:00
Daniel Ehrenberg 8837fe5792 Tests for propagation additions; making fixnum-bit? inline 2010-01-25 20:15:17 -06:00
Doug Coleman 7322c0a400 remove a stray character 2010-01-22 15:07:01 -06:00
Doug Coleman 8ae200d419 Rename accumulator to collector, pusher to selector 2010-01-22 15:00:53 -06:00
Slava Pestov cf21edd415 compiler: fix docs 2010-01-23 00:46:04 +13:00
Slava Pestov 81967cab35 compiler.test: fix 2010-01-23 00:40:56 +13:00
Slava Pestov 0cbf9c9b50 Move compile-call and related words only meant to be used for debugging to compiler.test 2010-01-23 00:39:56 +13:00
Daniel Ehrenberg 8b04f0f417 Merge branch 'master' of git://factorcode.org/git/factor
Conflicts:

	basis/compiler/tree/propagation/transforms/transforms.factor
2010-01-20 00:15:55 -06:00
Daniel Ehrenberg 2e5f16da00 Adding compiler transforms in propagation 2010-01-20 00:10:49 -06:00
Slava Pestov 875053d645 compiler.tree.propagation.call-effect: eliminate some dispatch from call( expansion 2010-01-19 21:08:45 +13:00
Slava Pestov 88004434ec vm: remove primitive table, non-optimizing compiler now looks up primitives with dlsym() 2010-01-19 20:00:33 +13:00
Slava Pestov e19c6fd76f compiler.tree.escape-analysis: make tests a bit more robust; a change to boa constructors recently meant dead curries were showing up on certain expansions, this was throwing off the escape-analysis test's unboxed allocation counting. Fix this by having the test run DCE first, and remove a few tests that no longer make sense now 2010-01-18 23:32:34 +13:00
Slava Pestov 0165daf56c Stop wearing monocle and use the term "entry point" instead of "XT" throughout VM and compiler; also remove two unused relocation types 2010-01-18 20:54:00 +13:00
Slava Pestov 4bf62e6b41 compiler.tree.propagation: ensure that we don't call 'equal?' or 'hashcode' on literals in words being compiled 2010-01-16 20:00:48 +13:00