Björn Lindqvist
							
						 
						
							 
							
							
							
								
							
								135d7f5ff3 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.*: more unit tests  
							
							 
							
							
							
						 
						
							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
							
						 
						
							 
							
							
							
								
							
								c7d9cb4c3d 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.*: new and improved docs  
							
							 
							
							
							
						 
						
							2015-04-29 09:31:53 -07:00  
						
					 
				
					
						
							
							
								 
								John Benediktsson
							
						 
						
							 
							
							
							
								
							
								c65877104e 
								
							
								 
							
						 
						
							
							
								
								compiler: cleanup usings.  
							
							 
							
							
							
						 
						
							2014-12-13 16:10:21 -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  
						
					 
				
					
						
							
							
								 
								Björn Lindqvist
							
						 
						
							 
							
							
							
								
							
								d1032c159a 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.dataflow-analysis: generic for configuring the "block skipping"  
							
							 
							
							... 
							
							
							
							To accurately record uninitialized/overinitialized stack locations,
kill blocks needs to be analyzed. Now you can make it so by overriding
ignore-block?. 
							
						 
						
							2014-09-08 14:54:17 -07:00  
						
					 
				
					
						
							
							
								 
								Björn Lindqvist
							
						 
						
							 
							
							
							
								
							
								c3253406e3 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.*: more docstrings for compiler words  
							
							 
							
							
							
						 
						
							2014-08-13 11:01:11 -07:00  
						
					 
				
					
						
							
							
								 
								Björn Lindqvist
							
						 
						
							 
							
							
							
								
							
								c6784020aa 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.*: initial docs for dataflow analysis vocabs  
							
							 
							
							
							
						 
						
							2014-08-13 11:01:11 -07:00  
						
					 
				
					
						
							
							
								 
								Doug Coleman
							
						 
						
							 
							
							
							
								
							
								76580da5d5 
								
							
								 
							
						 
						
							
							
								
								Refactor the lexer/parser to expose friendlier words for scanning tokens. The preferred top-level words now throw an exception on EOF.  
							
							 
							
							... 
							
							
							
							CREATE -> scan-new
CREATE-CLASS -> scan-new-class
CREATE-WORD -> scan-new-word
CREATE-GENERIC -> scan-new-generic
scan -> (scan-token)
scan-token now throws on eof
(scan-word) returns word/number/f
scan-word now throws on eof
scan-word-name expects a non-number
Fixes  #183 .
Fixes  #209 . 
							
						 
						
							2011-09-29 11:28:28 -07:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								c211c3e84e 
								
							
								 
							
						 
						
							
							
								
								FFI rewrite part 1: split up ##alien-invoke and friends into smaller instructions  
							
							 
							
							
							
						 
						
							2010-05-09 21:36:52 -04:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								5197aca215 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.dataflow-analysis: when intersecting sets, treat uninitialized sets as universal rather than empty; reduces number of stack instructions generated by 1%  
							
							 
							
							
							
						 
						
							2009-08-20 18:15:41 -05:00  
						
					 
				
					
						
							
							
								 
								Daniel Ehrenberg
							
						 
						
							 
							
							
							
								
							
								d35e1eb76c 
								
							
								 
							
						 
						
							
							
								
								Fixing write-barrier elimination; adding bb as a parameter to join-sets in dataflow analysis  
							
							 
							
							
							
						 
						
							2009-08-12 23:52:29 -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
							
						 
						
							 
							
							
							
								
							
								1e5ce41364 
								
							
								 
							
						 
						
							
							
								
								Fix bootstrap  
							
							 
							
							
							
						 
						
							2009-07-22 03:26:27 -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  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								e6a323dfaa 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.dataflow-analysis: iterative dataflow analysis framework  
							
							 
							
							
							
						 
						
							2009-07-22 02:06:35 -05:00