e189954ecc 
								
							
								 
							
						 
						
							
							
								
								core: Rename iota to <iota> so we can have TUPLE: iota ... ; instead of TUPLE: iota-tuple ... ;  
							
							
							
						 
						
							2017-06-02 11:57:05 -05:00  
				
					
						
							
							
								 
						
							
							
								a36c0cb5ac 
								
							
								 
							
						 
						
							
							
								
								compiler.*: moving all words only relevant for testing to compiler.test  
							
							
							
						 
						
							2016-08-12 15:13:51 +02:00  
				
					
						
							
							
								 
						
							
							
								71ef8a22c2 
								
							
								 
							
						 
						
							
							
								
								disambiguate namespaces:set and sets:set.  
							
							
							
						 
						
							2016-03-29 17:14:42 -07:00  
				
					
						
							
							
								 
						
							
							
								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  
				
					
						
							
							
								 
						
							
							
								e0d1b14e5c 
								
							
								 
							
						 
						
							
							
								
								factor: don't need FROM: namespaces => set or namespaces:set anymore  
							
							
							
						 
						
							2015-08-12 11:25:57 -05:00  
				
					
						
							
							
								 
						
							
							
								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  
				
					
						
							
							
								 
						
							
							
								b366a06c41 
								
							
								 
							
						 
						
							
							
								
								use reject instead of [ ... not ] filter.  
							
							
							
						 
						
							2015-05-12 18:50:34 -07:00  
				
					
						
							
							
								 
						
							
							
								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  
				
					
						
							
							
								 
						
							
							
								6215561ad4 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.*: more docs and removing a test that isn't relevant anymore  
							
							
							
						 
						
							2015-04-29 09:31:59 -07:00  
				
					
						
							
							
								 
						
							
							
								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  
				
					
						
							
							
								 
						
							
							
								aa6fbf475e 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg: the id slot of basic-block appears to not be needed  
							
							
							
						 
						
							2015-04-29 09:31:57 -07:00  
				
					
						
							
							
								 
						
							
							
								74ea76a3c9 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg: unlikely? slot unused, lets get rid of it  
							
							
							
						 
						
							2015-04-29 09:31:53 -07:00  
				
					
						
							
							
								 
						
							
							
								8a011c8366 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.*: more docs  
							
							
							
						 
						
							2014-12-15 20:44:07 +01:00  
				
					
						
							
							
								 
						
							
							
								c65877104e 
								
							
								 
							
						 
						
							
							
								
								compiler: cleanup usings.  
							
							
							
						 
						
							2014-12-13 16:10:21 -08:00  
				
					
						
							
							
								 
						
							
							
								068ddd6c7b 
								
							
								 
							
						 
						
							
							
								
								compiler: cleanup cfg passes to have stack effect ( cfg -- )  
							
							
							
						 
						
							2014-12-11 12:48:43 -08:00  
				
					
						
							
							
								 
						
							
							
								e5866dfa80 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.*: changed stack effect of needs-predecessors from ( cfg -- cfg') to ( cfg -- )  
							
							
							
						 
						
							2014-12-11 14:30:47 +01:00  
				
					
						
							
							
								 
						
							
							
								20add9544a 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg: cfg>insns has to go in linearization because of bootstrap circularity. Fix usings.  
							
							
							
						 
						
							2014-11-23 22:53:27 -08:00  
				
					
						
							
							
								 
						
							
							
								96396cb3ad 
								
							
								 
							
						 
						
							
							
								
								compiler.*: use block>cfg and insns>block in many tests instead of wordier code  
							
							
							
						 
						
							2014-11-22 17:31:38 -08:00  
				
					
						
							
							
								 
						
							
							
								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  
				
					
						
							
							
								 
						
							
							
								56f1b87a6f 
								
							
								 
							
						 
						
							
							
								
								basis, extra: Use zip-index.  
							
							
							
						 
						
							2014-11-08 00:46:30 -08:00  
				
					
						
							
							
								 
						
							
							
								c3253406e3 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.*: more docstrings for compiler words  
							
							
							
						 
						
							2014-08-13 11:01:11 -07:00  
				
					
						
							
							
								 
						
							
							
								bf473ec943 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg: fix some docs.  
							
							
							
						 
						
							2014-06-08 18:20:27 -07:00  
				
					
						
							
							
								 
						
							
							
								280620c55f 
								
							
								 
							
						 
						
							
							
								
								Docs: docs for compiler-related words  
							
							
							
						 
						
							2014-06-08 11:48:31 -07:00  
				
					
						
							
							
								 
						
							
							
								b8097f9221 
								
							
								 
							
						 
						
							
							
								
								compiler: cleaner use of sets.  
							
							
							
						 
						
							2013-03-10 17:21:27 -07:00  
				
					
						
							
							
								 
						
							
							
								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  
				
					
						
							
							
								 
						
							
							
								8adde5360a 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg: change linear ordering to place GC call blocks at the end  
							
							
							
						 
						
							2010-07-27 13:00:28 -04:00  
				
					
						
							
							
								 
						
							
							
								f5c5d8b44c 
								
							
								 
							
						 
						
							
							
								
								compiler: remove flat machine representation and generate code directly from the CFG  
							
							
							
						 
						
							2010-05-03 17:34:32 -04:00  
				
					
						
							
							
								 
						
							
							
								95ff5ffe51 
								
							
								 
							
						 
						
							
							
								
								New GC checks work in progress  
							
							
							
						 
						
							2010-05-03 17:34:16 -04:00  
				
					
						
							
							
								 
						
							
							
								82fb1879af 
								
							
								 
							
						 
						
							
							
								
								Debugging untagged fixnums  
							
							
							
						 
						
							2010-05-03 17:34:02 -04:00  
				
					
						
							
							
								 
						
							
							
								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  
				
					
						
							
							
								 
						
							
							
								af57d4dfa9 
								
							
								 
							
						 
						
							
							
								
								fix ... in compiler.cfg.linearization  
							
							
							
						 
						
							2010-03-05 14:27:58 -08:00  
				
					
						
							
							
								 
						
							
							
								7074979745 
								
							
								 
							
						 
						
							
							
								
								Moving new-sets to sets  
							
							
							
						 
						
							2010-02-26 16:01:01 -05:00  
				
					
						
							
							
								 
						
							
							
								04878057af 
								
							
								 
							
						 
						
							
							
								
								Compiler.cfg.{dce,linearization} use new-sets  
							
							
							
						 
						
							2010-02-16 15:48:07 -06:00  
				
					
						
							
							
								 
						
							
							
								0612bc6177 
								
							
								 
							
						 
						
							
							
								
								Factor source files should not be executable  
							
							
							
						 
						
							2009-11-21 17:50:43 -06:00  
				
					
						
							
							
								 
						
							
							
								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  
				
					
						
							
							
								 
						
							
							
								f9695951a0 
								
							
								 
							
						 
						
							
							
								
								fold test-vector/branch sequences into a test-vector-branch instruction  
							
							
							
						 
						
							2009-10-01 19:53:30 -05:00  
				
					
						
							
							
								 
						
							
							
								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  
				
					
						
							
							
								 
						
							
							
								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  
				
					
						
							
							
								 
						
							
							
								0ea9949e51 
								
							
								 
							
						 
						
							
							
								
								split unordered and ordered float comparison intrinsics in compiler; generate only unordered comparisons for now  
							
							
							
						 
						
							2009-09-08 17:04:26 -05:00  
				
					
						
							
							
								 
						
							
							
								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  
				
					
						
							
							
								 
						
							
							
								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  
				
					
						
							
							
								 
						
							
							
								687454878a 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.linearization: change order to fit older unit tests  
							
							
							
						 
						
							2009-08-08 23:06:57 -05:00  
				
					
						
							
							
								 
						
							
							
								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  
				
					
						
							
							
								 
						
							
							
								725280d424 
								
							
								 
							
						 
						
							
							
								
								Split off the notion of a register representation from a register class  
							
							
							
						 
						
							2009-08-07 17:44:50 -05:00  
				
					
						
							
							
								 
						
							
							
								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  
				
					
						
							
							
								 
						
							
							
								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  
				
					
						
							
							
								 
						
							
							
								50bf6f52b4 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.linearization: fix bootstrap  
							
							
							
						 
						
							2009-07-28 22:52:07 -05:00  
				
					
						
							
							
								 
						
							
							
								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  
				
					
						
							
							
								 
						
							
							
								ff81b055a5 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.utilities: add loop-entry? word  
							
							
							
						 
						
							2009-07-28 08:47:50 -05:00  
				
					
						
							
							
								 
						
							
							
								d947c61bd7 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.stacks: now performs online local DCN  
							
							
							
						 
						
							2009-07-23 20:54:38 -05:00