John Benediktsson
							
						 
						
							 
							
							
							
								
							
								71ef8a22c2 
								
							
								 
							
						 
						
							
							
								
								disambiguate namespaces:set and sets:set.  
							
							 
							
							
							
						 
						
							2016-03-29 17:14:42 -07:00  
						
					 
				
					
						
							
							
								 
								Björn Lindqvist
							
						 
						
							 
							
							
							
								
							
								d0aae5cc20 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.linearization: number-blocks can set the number>> accessor  
							
							 
							
							... 
							
							
							
							instead of using the numbers dynamic variable 
							
						 
						
							2015-09-22 08:51:03 +02:00  
						
					 
				
					
						
							
							
								 
								Doug Coleman
							
						 
						
							 
							
							
							
								
							
								e0d1b14e5c 
								
							
								 
							
						 
						
							
							
								
								factor: don't need FROM: namespaces => set or namespaces:set anymore  
							
							 
							
							
							
						 
						
							2015-08-12 11:25:57 -05:00  
						
					 
				
					
						
							
							
								 
								Björn Lindqvist
							
						 
						
							 
							
							
							
								
							
								aeaed40d9c 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.ssa.destruction.coalescing: new vocab to refactor and  
							
							 
							
							... 
							
							
							
							simplify the prepare-insn code in compiler.cfg.ssa.destruction 
							
						 
						
							2015-06-15 12:28:31 +02:00  
						
					 
				
					
						
							
							
								 
								John Benediktsson
							
						 
						
							 
							
							
							
								
							
								b366a06c41 
								
							
								 
							
						 
						
							
							
								
								use reject instead of [ ... not ] filter.  
							
							 
							
							
							
						 
						
							2015-05-12 18:50:34 -07:00  
						
					 
				
					
						
							
							
								 
								Björn Lindqvist
							
						 
						
							 
							
							
							
								
							
								d0c1493f36 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.linearization: can't use slurp/replenish-queue here because  
							
							 
							
							... 
							
							
							
							the successors need to be pushed to the back of the deque 
							
						 
						
							2015-04-29 09:32:00 -07:00  
						
					 
				
					
						
							
							
								 
								Björn Lindqvist
							
						 
						
							 
							
							
							
								
							
								6215561ad4 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.*: more docs and removing a test that isn't relevant anymore  
							
							 
							
							
							
						 
						
							2015-04-29 09:31:59 -07:00  
						
					 
				
					
						
							
							
								 
								Björn Lindqvist
							
						 
						
							 
							
							
							
								
							
								992314d2de 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.*: new word for consuming deques slurp/replenish-deque  
							
							 
							
							... 
							
							
							
							most uses of slurp-deque processes one item and pushes a sequence of
items to continue working with. it can be formalized into a
slurp/replenish-deque combinator which also reduces the amount of
variables you need to use 
							
						 
						
							2015-04-29 09:31:58 -07:00  
						
					 
				
					
						
							
							
								 
								Björn Lindqvist
							
						 
						
							 
							
							
							
								
							
								aa6fbf475e 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg: the id slot of basic-block appears to not be needed  
							
							 
							
							
							
						 
						
							2015-04-29 09:31:57 -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
							
						 
						
							 
							
							
							
								
							
								8a011c8366 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.*: more docs  
							
							 
							
							
							
						 
						
							2014-12-15 20:44:07 +01:00  
						
					 
				
					
						
							
							
								 
								John Benediktsson
							
						 
						
							 
							
							
							
								
							
								c65877104e 
								
							
								 
							
						 
						
							
							
								
								compiler: cleanup usings.  
							
							 
							
							
							
						 
						
							2014-12-13 16:10:21 -08:00  
						
					 
				
					
						
							
							
								 
								John Benediktsson
							
						 
						
							 
							
							
							
								
							
								068ddd6c7b 
								
							
								 
							
						 
						
							
							
								
								compiler: cleanup cfg passes to have stack effect ( cfg -- )  
							
							 
							
							
							
						 
						
							2014-12-11 12:48:43 -08: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  
						
					 
				
					
						
							
							
								 
								Doug Coleman
							
						 
						
							 
							
							
							
								
							
								20add9544a 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg: cfg>insns has to go in linearization because of bootstrap circularity. Fix usings.  
							
							 
							
							
							
						 
						
							2014-11-23 22:53:27 -08:00  
						
					 
				
					
						
							
							
								 
								Björn Lindqvist
							
						 
						
							 
							
							
							
								
							
								96396cb3ad 
								
							
								 
							
						 
						
							
							
								
								compiler.*: use block>cfg and insns>block in many tests instead of wordier code  
							
							 
							
							
							
						 
						
							2014-11-22 17:31:38 -08:00  
						
					 
				
					
						
							
							
								 
								Doug Coleman
							
						 
						
							 
							
							
							
								
							
								7cfa9d9518 
								
							
								 
							
						 
						
							
							
								
								assocs: Make map-index-as support seq or assoc exemplars and move map-index, map-index-as to assocs because they need to use new-assoc. Make zip-index-as support assoc exemplars. Fix up docs and tests.  
							
							 
							
							... 
							
							
							
							assocs.extras: Remove zip-as and move tests to assocs. 
							
						 
						
							2014-11-08 18:18:00 -08:00  
						
					 
				
					
						
							
							
								 
								Doug Coleman
							
						 
						
							 
							
							
							
								
							
								56f1b87a6f 
								
							
								 
							
						 
						
							
							
								
								basis, extra: Use zip-index.  
							
							 
							
							
							
						 
						
							2014-11-08 00:46:30 -08:00  
						
					 
				
					
						
							
							
								 
								Björn Lindqvist
							
						 
						
							 
							
							
							
								
							
								c3253406e3 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.*: more docstrings for compiler words  
							
							 
							
							
							
						 
						
							2014-08-13 11:01:11 -07:00  
						
					 
				
					
						
							
							
								 
								John Benediktsson
							
						 
						
							 
							
							
							
								
							
								bf473ec943 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg: fix some docs.  
							
							 
							
							
							
						 
						
							2014-06-08 18:20:27 -07:00  
						
					 
				
					
						
							
							
								 
								Björn Lindqvist
							
						 
						
							 
							
							
							
								
							
								280620c55f 
								
							
								 
							
						 
						
							
							
								
								Docs: docs for compiler-related words  
							
							 
							
							
							
						 
						
							2014-06-08 11:48:31 -07:00  
						
					 
				
					
						
							
							
								 
								John Benediktsson
							
						 
						
							 
							
							
							
								
							
								b8097f9221 
								
							
								 
							
						 
						
							
							
								
								compiler: cleaner use of sets.  
							
							 
							
							
							
						 
						
							2013-03-10 17:21:27 -07:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								5fc9aa05b0 
								
							
								 
							
						 
						
							
							
								
								Revert "compiler.cfg: change linear ordering to place GC call blocks at the end"  
							
							 
							
							... 
							
							
							
							This reverts commit 544a288192 . 
							
						 
						
							2010-07-27 23:58:41 -04:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								8adde5360a 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg: change linear ordering to place GC call blocks at the end  
							
							 
							
							
							
						 
						
							2010-07-27 13:00:28 -04:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								f5c5d8b44c 
								
							
								 
							
						 
						
							
							
								
								compiler: remove flat machine representation and generate code directly from the CFG  
							
							 
							
							
							
						 
						
							2010-05-03 17:34:32 -04:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								95ff5ffe51 
								
							
								 
							
						 
						
							
							
								
								New GC checks work in progress  
							
							 
							
							
							
						 
						
							2010-05-03 17:34:16 -04:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								82fb1879af 
								
							
								 
							
						 
						
							
							
								
								Debugging untagged fixnums  
							
							 
							
							
							
						 
						
							2010-05-03 17:34:02 -04:00  
						
					 
				
					
						
							
							
								 
								Daniel Ehrenberg
							
						 
						
							 
							
							
							
								
							
								512fe14e4e 
								
							
								 
							
						 
						
							
							
								
								Merge branch 'bags' of git://github.com/littledan/Factor  
							
							 
							
							... 
							
							
							
							Conflicts:
	basis/compiler/cfg/ssa/construction/tdmsc/tdmsc.factor
	basis/furnace/auth/auth.factor
	basis/stack-checker/backend/backend.factor 
							
						 
						
							2010-03-16 13:28:00 -04:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								af57d4dfa9 
								
							
								 
							
						 
						
							
							
								
								fix ... in compiler.cfg.linearization  
							
							 
							
							
							
						 
						
							2010-03-05 14:27:58 -08:00  
						
					 
				
					
						
							
							
								 
								Daniel Ehrenberg
							
						 
						
							 
							
							
							
								
							
								7074979745 
								
							
								 
							
						 
						
							
							
								
								Moving new-sets to sets  
							
							 
							
							
							
						 
						
							2010-02-26 16:01:01 -05:00  
						
					 
				
					
						
							
							
								 
								Daniel Ehrenberg
							
						 
						
							 
							
							
							
								
							
								04878057af 
								
							
								 
							
						 
						
							
							
								
								Compiler.cfg.{dce,linearization} use new-sets  
							
							 
							
							
							
						 
						
							2010-02-16 15:48:07 -06:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								0612bc6177 
								
							
								 
							
						 
						
							
							
								
								Factor source files should not be executable  
							
							 
							
							
							
						 
						
							2009-11-21 17:50:43 -06:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								b4e36608da 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg: remove _gc instruction, it doesn't need to exist, and change GC checks to ensure that the right amount of space is available instead of blindly checking for 1Kb  
							
							 
							
							
							
						 
						
							2009-10-05 05:27:49 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								f9695951a0 
								
							
								 
							
						 
						
							
							
								
								fold test-vector/branch sequences into a test-vector-branch instruction  
							
							 
							
							
							
						 
						
							2009-10-01 19:53:30 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								0e3a261637 
								
							
								 
							
						 
						
							
							
								
								Fix test failures in compiler.cfg.linearization.order, compiler.tests.low-level-ir and compiler.graphviz  
							
							 
							
							
							
						 
						
							2009-09-22 05:07:52 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								513ba1f176 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.linearization.order: basic blocks were being inserted twice if some blocks had repeated successors, causing problems for register allocation  
							
							 
							
							
							
						 
						
							2009-09-22 03:19:23 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								0ea9949e51 
								
							
								 
							
						 
						
							
							
								
								split unordered and ordered float comparison intrinsics in compiler; generate only unordered comparisons for now  
							
							 
							
							
							
						 
						
							2009-09-08 17:04:26 -05:00  
						
					 
				
					
						
							
							
								 
								Doug Coleman
							
						 
						
							 
							
							
							
								
							
								3f3d57032b 
								
							
								 
							
						 
						
							
							
								
								Delete empty unit tests files, remove 1- and 1+, reorder IN: lines in a lot of places, minor refactoring  
							
							 
							
							
							
						 
						
							2009-08-13 19:21:44 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								cc5476c823 
								
							
								 
							
						 
						
							
							
								
								_gc instruction doesn't need slot to hold GC root area size, since that's just tagged-values>> length  
							
							 
							
							
							
						 
						
							2009-08-09 03:08:13 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								687454878a 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.linearization: change order to fit older unit tests  
							
							 
							
							
							
						 
						
							2009-08-08 23:06:57 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								d0c393aa60 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg: new system to track when results of analyses need to be recomputed (reverse post order, linear order, predecessors, dominance, loops). Passes can now call needs-predecessors, needs-dominance, needs-loops at the beginning, and cfg-changed, predecessors-changd at the end. Linearization order now takes loop nesting into account, and linear scan now uses linearization order instead of RPO.  
							
							 
							
							
							
						 
						
							2009-08-08 20:02:56 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								725280d424 
								
							
								 
							
						 
						
							
							
								
								Split off the notion of a register representation from a register class  
							
							 
							
							
							
						 
						
							2009-08-07 17:44:50 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								be363d1a5b 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg: Get inline GC checks working again, using a dataflow analysis to compute uninitialized stack locations in compiler.cfg.stacks.uninitialized. Re-enable intrinsics which use inline allocation  
							
							 
							
							
							
						 
						
							2009-07-30 09:19:44 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								cb7735ddf4 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg: remove 'regs' slot from instruction tuples now that register allocation doesn't use it anymore  
							
							 
							
							
							
						 
						
							2009-07-29 06:50:46 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								50bf6f52b4 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.linearization: fix bootstrap  
							
							 
							
							
							
						 
						
							2009-07-28 22:52:07 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								8c6b38533c 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.linearization: rotate loops. 2x speedup with empty times loop, 1.5x speedup on benchmark.dawes  
							
							 
							
							
							
						 
						
							2009-07-28 21:31:08 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								ff81b055a5 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.utilities: add loop-entry? word  
							
							 
							
							
							
						 
						
							2009-07-28 08:47:50 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								d947c61bd7 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.stacks: now performs online local DCN  
							
							 
							
							
							
						 
						
							2009-07-23 20:54:38 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								44bcd258f6 
								
							
								 
							
						 
						
							
							
								
								Insert _loop-entry in linearization pass instead of in CFG builder, so that optimizations don't have to worry about it  
							
							 
							
							
							
						 
						
							2009-07-22 06:05:17 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								21a012e3d7 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg: Major restructuring -- do not compute liveness before local optimization, and instead change local optimizations to be more permissive of undefined values. Now, liveness is only computed once, after phi elimination and before register allocation. This means liveness analysis does not need to take phi nodes into account and can now use the new compiler.cfg.dataflow-analysis framework  
							
							 
							
							
							
						 
						
							2009-07-22 03:08:28 -05:00