Slava Pestov
							
						 
						
							 
							
							
							
								
							
								6501480a0e 
								
							
								 
							
						 
						
							
							
								
								Fix two problems with recompilation: predicate constant folding was recording unsatisfied dependencies in some cases, and literal tuple instances of forgotten classes would cause problems for method inlining  
							
							 
							
							
							
						 
						
							2010-02-20 12:01:47 +13:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								c058343167 
								
							
								 
							
						 
						
							
							
								
								Add some utility words to stack-checker.dependencies in preparation for a refactoring  
							
							 
							
							
							
						 
						
							2010-01-30 09:28:59 +13:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								c027046857 
								
							
								 
							
						 
						
							
							
								
								New 'conditional dependency' mechanism for more accurate recording of recompilation information  
							
							 
							
							
							
						 
						
							2010-01-30 09:28:57 +13:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								f031a97084 
								
							
								 
							
						 
						
							
							
								
								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
							
						 
						
							 
							
							
							
								
							
								cd2e226afa 
								
							
								 
							
						 
						
							
							
								
								stack-checker: split off stack-checker.dependencies from stack-checker.state  
							
							 
							
							
							
						 
						
							2009-11-08 20:34:46 -06:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								299b5b0f6c 
								
							
								 
							
						 
						
							
							
								
								filter-here -> filter!  
							
							 
							
							
							
						 
						
							2009-10-28 00:44:05 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								8a9c15ab0b 
								
							
								 
							
						 
						
							
							
								
								compiler.tree.escape-analysis: if the output of an #introduce node has an immutable tuple class type declaration, and it is not passed to any subroutine calls, or returned from the word, then unbox it. This speeds up vector arithmetic words on specialized arrays, because the specialized array is unboxed up-front, eliminating an indirection on every loop iteration  
							
							 
							
							
							
						 
						
							2009-08-09 16:29:21 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								c3d60e5899 
								
							
								 
							
						 
						
							
							
								
								compiler.tree.recursive: more accurate loop detection  
							
							 
							
							
							
						 
						
							2009-08-04 19:18:40 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								145b635eb6 
								
							
								 
							
						 
						
							
							
								
								More optimization intended to reduce compile time. Another 10% speedup on compiling empty PEG parser  
							
							 
							
							... 
							
							
							
							- new map-flat combinator replaces usages of 'map flatten' in compiler
- compiler.tree.def-use.simplified uses an explicit accumulator instead of flatten
- compiler.tree.tuple-unboxing uses an explicit accumulator instead of flatten
- fix inlining regression from last time: custom inlining results would sometimes be discarded
- compiler.tree's 3each and 3map combinators rewritten to not use flip
- rewrite math.partial-dispatch without locals (purely stylistic, no performance increase)
- hand-optimize flip for common arrays-of-arrays case
- don't run escape analysis and tuple unboxing if there are no allocations in the IR 
							
						 
						
							2008-12-06 11:17:19 -06:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								7f9fbdaa4e 
								
							
								 
							
						 
						
							
							
								
								cleanup pass didn't properly handle conditionals where both branches were dead  
							
							 
							
							
							
						 
						
							2008-11-11 08:38:03 -06:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								0d83873174 
								
							
								 
							
						 
						
							
							
								
								Fix regression  
							
							 
							
							
							
						 
						
							2008-11-03 00:03:15 -06:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								0cc0a41e57 
								
							
								 
							
						 
						
							
							
								
								Update for compiler.intrinsics removal  
							
							 
							
							
							
						 
						
							2008-10-20 20:40:36 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								10c68ebb21 
								
							
								 
							
						 
						
							
							
								
								New modular arithmetic optimization pass  
							
							 
							
							
							
						 
						
							2008-09-12 18:08:38 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								cf80dd122a 
								
							
								 
							
						 
						
							
							
								
								Updating code for make and fry changes  
							
							 
							
							
							
						 
						
							2008-09-10 22:11:40 -05:00  
						
					 
				
					
						
							
							
								 
								Doug Coleman
							
						 
						
							 
							
							
							
								
							
								8a921c791c 
								
							
								 
							
						 
						
							
							
								
								if-empty changes  
							
							 
							
							
							
						 
						
							2008-09-06 19:13:59 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								a4a00f6e40 
								
							
								 
							
						 
						
							
							
								
								Adding missing optimizations to finalization pass  
							
							 
							
							
							
						 
						
							2008-09-02 22:59:49 -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
							
						 
						
							 
							
							
							
								
							
								c674dd9101 
								
							
								 
							
						 
						
							
							
								
								Regression: insufficient compiled usage recorded  
							
							 
							
							
							
						 
						
							2008-08-29 17:52:43 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								783d0fcabf 
								
							
								 
							
						 
						
							
							
								
								Fix cleanup of conditionals with no live branches  
							
							 
							
							
							
						 
						
							2008-08-29 04:40:53 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								6ead724b25 
								
							
								 
							
						 
						
							
							
								
								Fixing bugs  
							
							 
							
							
							
						 
						
							2008-08-29 04:23:39 -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
							
						 
						
							 
							
							
							
								
							
								2440fc1ceb 
								
							
								 
							
						 
						
							
							
								
								Fixing remaining issues  
							
							 
							
							
							
						 
						
							2008-08-22 17:38:23 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								9aa6d8ae04 
								
							
								 
							
						 
						
							
							
								
								Compiler fixes  
							
							 
							
							
							
						 
						
							2008-08-22 15:30:57 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								c773d8256b 
								
							
								 
							
						 
						
							
							
								
								Fix another bug; cleanup phase too eager to remove #phi nodes  
							
							 
							
							
							
						 
						
							2008-08-19 21:48:08 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								17758f3749 
								
							
								 
							
						 
						
							
							
								
								Stack flow checker; various fixes  
							
							 
							
							
							
						 
						
							2008-08-19 17:11:33 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								0efec0eff1 
								
							
								 
							
						 
						
							
							
								
								DCE fixes  
							
							 
							
							
							
						 
						
							2008-08-18 21:30:10 -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
							
						 
						
							 
							
							
							
								
							
								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
							
						 
						
							 
							
							
							
								
							
								4f82ebdc23 
								
							
								 
							
						 
						
							
							
								
								DCE work in progress  
							
							 
							
							
							
						 
						
							2008-08-13 14:17:04 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								f2a5a30c6f 
								
							
								 
							
						 
						
							
							
								
								New front-end and high-level optimizer lands  
							
							 
							
							
							
						 
						
							2008-08-12 03:22:45 -05:00