a3ce61f8da 
								
							
								 
							
						 
						
							
							
								
								compiler.tree.cleanup: more docs and a test  
							
							
							
						 
						
							2016-03-18 19:21:31 +01:00  
				
					
						
							
							
								 
						
							
							
								b9ce4910af 
								
							
								 
							
						 
						
							
							
								
								compiler.tree.*: docs  
							
							
							
						 
						
							2015-09-22 08:52:36 +02:00  
				
					
						
							
							
								 
						
							
							
								e477f6996f 
								
							
								 
							
						 
						
							
							
								
								Fix comments to be ! not #!.  
							
							
							
						 
						
							2015-09-08 16:15:10 -07:00  
				
					
						
							
							
								 
						
							
							
								808342076d 
								
							
								 
							
						 
						
							
							
								
								compiler: rename cleanup to cleanup-tree, cleanup* to cleanup-tree*  
							
							
							
						 
						
							2015-06-05 21:08:18 -07:00  
				
					
						
							
							
								 
						
							
							
								b366a06c41 
								
							
								 
							
						 
						
							
							
								
								use reject instead of [ ... not ] filter.  
							
							
							
						 
						
							2015-05-12 18:50:34 -07:00  
				
					
						
							
							
								 
						
							
							
								c65877104e 
								
							
								 
							
						 
						
							
							
								
								compiler: cleanup usings.  
							
							
							
						 
						
							2014-12-13 16:10:21 -08:00  
				
					
						
							
							
								 
						
							
							
								e2eebdec4d 
								
							
								 
							
						 
						
							
							
								
								Docs: mostly fixes for doc errors found by help lint  
							
							
							
						 
						
							2014-05-10 17:13:49 -07:00  
				
					
						
							
							
								 
						
							
							
								1c3deddf61 
								
							
								 
							
						 
						
							
							
								
								issue  #358 : Rename all of the words depends-on-* to add-depends-on*  
							
							
							
						 
						
							2012-06-21 08:35:45 -07:00  
				
					
						
							
							
								 
						
							
							
								d65bd97a54 
								
							
								 
							
						 
						
							
							
								
								compiler.tree: Renamed high-level IR node constructors to <#foo> from #foo. Moving towards making classes/word names not conflict.  
							
							
							
						 
						
							2011-11-06 23:02:45 -08:00  
				
					
						
							
							
								 
						
							
							
								168dd1f825 
								
							
								 
							
						 
						
							
							
								
								FFI rewrite part 7: compile callback bodies with the optimizing compiler  
							
							
							
						 
						
							2010-07-28 00:49:26 -04:00  
				
					
						
							
							
								 
						
							
							
								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  
				
					
						
							
							
								 
						
							
							
								c058343167 
								
							
								 
							
						 
						
							
							
								
								Add some utility words to stack-checker.dependencies in preparation for a refactoring  
							
							
							
						 
						
							2010-01-30 09:28:59 +13:00  
				
					
						
							
							
								 
						
							
							
								c027046857 
								
							
								 
							
						 
						
							
							
								
								New 'conditional dependency' mechanism for more accurate recording of recompilation information  
							
							
							
						 
						
							2010-01-30 09:28:57 +13:00  
				
					
						
							
							
								 
						
							
							
								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  
				
					
						
							
							
								 
						
							
							
								cd2e226afa 
								
							
								 
							
						 
						
							
							
								
								stack-checker: split off stack-checker.dependencies from stack-checker.state  
							
							
							
						 
						
							2009-11-08 20:34:46 -06:00  
				
					
						
							
							
								 
						
							
							
								299b5b0f6c 
								
							
								 
							
						 
						
							
							
								
								filter-here -> filter!  
							
							
							
						 
						
							2009-10-28 00:44:05 -05:00  
				
					
						
							
							
								 
						
							
							
								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  
				
					
						
							
							
								 
						
							
							
								c3d60e5899 
								
							
								 
							
						 
						
							
							
								
								compiler.tree.recursive: more accurate loop detection  
							
							
							
						 
						
							2009-08-04 19:18:40 -05:00  
				
					
						
							
							
								 
						
							
							
								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  
				
					
						
							
							
								 
						
							
							
								7f9fbdaa4e 
								
							
								 
							
						 
						
							
							
								
								cleanup pass didn't properly handle conditionals where both branches were dead  
							
							
							
						 
						
							2008-11-11 08:38:03 -06:00  
				
					
						
							
							
								 
						
							
							
								0d83873174 
								
							
								 
							
						 
						
							
							
								
								Fix regression  
							
							
							
						 
						
							2008-11-03 00:03:15 -06:00  
				
					
						
							
							
								 
						
							
							
								0cc0a41e57 
								
							
								 
							
						 
						
							
							
								
								Update for compiler.intrinsics removal  
							
							
							
						 
						
							2008-10-20 20:40:36 -05:00  
				
					
						
							
							
								 
						
							
							
								10c68ebb21 
								
							
								 
							
						 
						
							
							
								
								New modular arithmetic optimization pass  
							
							
							
						 
						
							2008-09-12 18:08:38 -05:00  
				
					
						
							
							
								 
						
							
							
								cf80dd122a 
								
							
								 
							
						 
						
							
							
								
								Updating code for make and fry changes  
							
							
							
						 
						
							2008-09-10 22:11:40 -05:00  
				
					
						
							
							
								 
						
							
							
								8a921c791c 
								
							
								 
							
						 
						
							
							
								
								if-empty changes  
							
							
							
						 
						
							2008-09-06 19:13:59 -05:00  
				
					
						
							
							
								 
						
							
							
								a4a00f6e40 
								
							
								 
							
						 
						
							
							
								
								Adding missing optimizations to finalization pass  
							
							
							
						 
						
							2008-09-02 22:59:49 -05:00  
				
					
						
							
							
								 
						
							
							
								f5fbd94a4c 
								
							
								 
							
						 
						
							
							
								
								New compiled crossref implementation  
							
							
							
						 
						
							2008-08-31 01:34:00 -05:00  
				
					
						
							
							
								 
						
							
							
								3cef7c9992 
								
							
								 
							
						 
						
							
							
								
								Smarter usage tracking system  
							
							
							
						 
						
							2008-08-30 02:31:27 -05:00  
				
					
						
							
							
								 
						
							
							
								c674dd9101 
								
							
								 
							
						 
						
							
							
								
								Regression: insufficient compiled usage recorded  
							
							
							
						 
						
							2008-08-29 17:52:43 -05:00  
				
					
						
							
							
								 
						
							
							
								783d0fcabf 
								
							
								 
							
						 
						
							
							
								
								Fix cleanup of conditionals with no live branches  
							
							
							
						 
						
							2008-08-29 04:40:53 -05:00  
				
					
						
							
							
								 
						
							
							
								6ead724b25 
								
							
								 
							
						 
						
							
							
								
								Fixing bugs  
							
							
							
						 
						
							2008-08-29 04:23:39 -05:00  
				
					
						
							
							
								 
						
							
							
								1fcbdf9d52 
								
							
								 
							
						 
						
							
							
								
								Fix more compiler bugs  
							
							
							
						 
						
							2008-08-29 00:26:47 -05:00  
				
					
						
							
							
								 
						
							
							
								74dccc7fbf 
								
							
								 
							
						 
						
							
							
								
								Debugging compiler  
							
							
							
						 
						
							2008-08-28 22:28:34 -05:00  
				
					
						
							
							
								 
						
							
							
								2440fc1ceb 
								
							
								 
							
						 
						
							
							
								
								Fixing remaining issues  
							
							
							
						 
						
							2008-08-22 17:38:23 -05:00  
				
					
						
							
							
								 
						
							
							
								9aa6d8ae04 
								
							
								 
							
						 
						
							
							
								
								Compiler fixes  
							
							
							
						 
						
							2008-08-22 15:30:57 -05:00  
				
					
						
							
							
								 
						
							
							
								c773d8256b 
								
							
								 
							
						 
						
							
							
								
								Fix another bug; cleanup phase too eager to remove #phi nodes  
							
							
							
						 
						
							2008-08-19 21:48:08 -05:00  
				
					
						
							
							
								 
						
							
							
								17758f3749 
								
							
								 
							
						 
						
							
							
								
								Stack flow checker; various fixes  
							
							
							
						 
						
							2008-08-19 17:11:33 -05:00  
				
					
						
							
							
								 
						
							
							
								0efec0eff1 
								
							
								 
							
						 
						
							
							
								
								DCE fixes  
							
							
							
						 
						
							2008-08-18 21:30:10 -05:00  
				
					
						
							
							
								 
						
							
							
								aa9341e579 
								
							
								 
							
						 
						
							
							
								
								Enforce that usages of >r/r> must be balanced within a quotation  
							
							
							
						 
						
							2008-08-18 20:49:03 -05:00  
				
					
						
							
							
								 
						
							
							
								e1987d4af9 
								
							
								 
							
						 
						
							
							
								
								Debugging new optimizer  
							
							
							
						 
						
							2008-08-14 23:35:19 -05:00  
				
					
						
							
							
								 
						
							
							
								a61e13f7be 
								
							
								 
							
						 
						
							
							
								
								More aggressive DCE  
							
							
							
						 
						
							2008-08-13 23:52:49 -05:00  
				
					
						
							
							
								 
						
							
							
								4f82ebdc23 
								
							
								 
							
						 
						
							
							
								
								DCE work in progress  
							
							
							
						 
						
							2008-08-13 14:17:04 -05:00  
				
					
						
							
							
								 
						
							
							
								f2a5a30c6f 
								
							
								 
							
						 
						
							
							
								
								New front-end and high-level optimizer lands  
							
							
							
						 
						
							2008-08-12 03:22:45 -05:00