3b5f7a9ecf 
								
							
								 
							
						 
						
							
							
								
								compiler.tree.propagation: ensure that we don't call 'equal?' or 'hashcode' on literals in words being compiled  
							
							
							
						 
						
							2010-01-16 20:00:48 +13:00  
				
					
						
							
							
								 
						
							
							
								720c412431 
								
							
								 
							
						 
						
							
							
								
								compiler.tree.propagation: fix bug in constraints that caused retain stack overflow  
							
							
							
						 
						
							2009-11-13 03:22:57 -06:00  
				
					
						
							
							
								 
						
							
							
								2d5cdd19ec 
								
							
								 
							
						 
						
							
							
								
								compiler: on PPC, ANDI, ORI and XORI instructions take an unsigned 16-bit immediate, unlike ADDI, SUBI and MULLI which take a signed 16-bit immediate. The code generator was not aware of this, and so for example '[ >fixnum -16 bitand ]' would generate incorrect code. Split up small-enough? hook into immediate-arithmetic? and immediate-bitwise? and update value numbering to be aware of this. Fixes classes.struct bitfields test failure  
							
							
							
						 
						
							2009-10-19 04:58:29 -05:00  
				
					
						
							
							
								 
						
							
							
								6e936bdb05 
								
							
								 
							
						 
						
							
							
								
								Fixing failing unit tests in compiler.tree.propagation due to constraints  
							
							
							
						 
						
							2009-09-22 16:01:14 -05:00  
				
					
						
							
							
								 
						
							
							
								4ecf5a904a 
								
							
								 
							
						 
						
							
							
								
								More accurate wrap-interval in compiler.tree.propagation.info fixes test regression; constructing an interval with endpoints at infinity now outputs full-interval  
							
							
							
						 
						
							2009-08-12 03:25:53 -05:00  
				
					
						
							
							
								 
						
							
							
								7e35723db0 
								
							
								 
							
						 
						
							
							
								
								compiler.tree.propagation: be more careful with intervals, ensuring that the inferred interval of a value is a subset of the value class's interval. This improves accuracy, for example [ >fixnum 1 + >fixnum most-positive-fixnum <= ] constant-folds to true  
							
							
							
						 
						
							2009-08-10 01:16:49 -05:00  
				
					
						
							
							
								 
						
							
							
								e400d80d8b 
								
							
								 
							
						 
						
							
							
								
								More accurate interval inference for mod, rem, and propagation can now infer intervals in the case where a value might be f. so, [ [ 127 bitand ] [ drop f ] if dup [ 0 >= ] [ not ] if ] now constant-folds down to 't'!  
							
							
							
						 
						
							2009-08-08 23:03:45 -05:00  
				
					
						
							
							
								 
						
							
							
								501629cf75 
								
							
								 
							
						 
						
							
							
								
								compiler.tree.propagation.info: fix load error  
							
							
							
						 
						
							2009-07-27 00:30:24 -05:00  
				
					
						
							
							
								 
						
							
							
								fc41140720 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.utilities: move value-info utilities to compiler.tree.propagation.info  
							
							
							
						 
						
							2009-07-26 21:10:33 -05:00  
				
					
						
							
							
								 
						
							
							
								e0d84eb3a2 
								
							
								 
							
						 
						
							
							
								
								compiler.tree.propagation: better length propagation  
							
							
							
						 
						
							2009-07-09 02:28:30 -05:00  
				
					
						
							
							
								 
						
							
							
								407377fc98 
								
							
								 
							
						 
						
							
							
								
								rename peek -> last and update all usages  
							
							
							
						 
						
							2009-05-25 16:38:33 -05:00  
				
					
						
							
							
								 
						
							
							
								f2ec59d658 
								
							
								 
							
						 
						
							
							
								
								Fix infinite loop when compiling a word containing a tuple literal with circular structure in it. This was triggered by call( inline caching in core-foundation.fsevents on Mac OS X  
							
							
							
						 
						
							2009-05-01 09:36:53 -05:00  
				
					
						
							
							
								 
						
							
							
								964fbd0a24 
								
							
								 
							
						 
						
							
							
								
								Fix test failures from ratio/complex built-in removal  
							
							
							
						 
						
							2009-04-30 00:38:55 -05:00  
				
					
						
							
							
								 
						
							
							
								37e278ed02 
								
							
								 
							
						 
						
							
							
								
								Use [ ] [ ] map-reduce instead of unclip [ ] reduce  
							
							
							
						 
						
							2009-04-06 17:50:54 -05:00  
				
					
						
							
							
								 
						
							
							
								4fdb5d0557 
								
							
								 
							
						 
						
							
							
								
								Fix infinite fixed point iteration bug found by littledan; generalize-counter-interval wasn't called in all the right places  
							
							
							
						 
						
							2009-03-12 17:30:24 -05:00  
				
					
						
							
							
								 
						
							
							
								990513db60 
								
							
								 
							
						 
						
							
							
								
								use CONSTANT: in basis  
							
							
							
						 
						
							2009-02-22 19:13:08 -06:00  
				
					
						
							
							
								 
						
							
							
								c678e6e362 
								
							
								 
							
						 
						
							
							
								
								Don't use combinators.short-circuit in compiler  
							
							
							
						 
						
							2008-11-21 04:00:37 -06:00  
				
					
						
							
							
								 
						
							
							
								5f4b247072 
								
							
								 
							
						 
						
							
							
								
								Propagation pass now uses a stack of hashtables for predicated constraints instead of cloning a hashtable. New strategy for recursive propagation; now converges with fewer iterations. ~15 sec bootstrap time improvement  
							
							
							
						 
						
							2008-11-11 08:49:00 -06:00  
				
					
						
							
							
								 
						
							
							
								43335d9c36 
								
							
								 
							
						 
						
							
							
								
								Intervals now use a special singleton for the full interval to eliminate FP math in the common case; fix a bug in value-info<=  
							
							
							
						 
						
							2008-11-11 08:30:14 -06:00  
				
					
						
							
							
								 
						
							
							
								cc879fa9b7 
								
							
								 
							
						 
						
							
							
								
								Tuple layouts are now arrays, instead of built-in types. The superclass  
							
							... 
							
							
							
							array is now part of the tuple layout object itself, and class hashcodes
are stored alongside class words there. This removes 2 indirections when
reading a superclass, and 3 when reading a superclass hashcode. 
							
						 
						
							2008-11-05 22:20:29 -06:00  
				
					
						
							
							
								 
						
							
							
								1a865f89ac 
								
							
								 
							
						 
						
							
							
								
								Some optimizer change sfores for new codegen  
							
							
							
						 
						
							2008-09-17 22:18:08 -05:00  
				
					
						
							
							
								 
						
							
							
								8a921c791c 
								
							
								 
							
						 
						
							
							
								
								if-empty changes  
							
							
							
						 
						
							2008-09-06 19:13:59 -05:00  
				
					
						
							
							
								 
						
							
							
								e1716d92b3 
								
							
								 
							
						 
						
							
							
								
								Remove delegation slot  
							
							
							
						 
						
							2008-09-03 03:46:56 -05:00  
				
					
						
							
							
								 
						
							
							
								669e0f8f0a 
								
							
								 
							
						 
						
							
							
								
								Propagate slot types of literals  
							
							
							
						 
						
							2008-09-01 18:25:21 -05:00  
				
					
						
							
							
								 
						
							
							
								29e5ed2adb 
								
							
								 
							
						 
						
							
							
								
								Fixing deploy tool  
							
							
							
						 
						
							2008-08-31 19:17:04 -05:00  
				
					
						
							
							
								 
						
							
							
								9aa6d8ae04 
								
							
								 
							
						 
						
							
							
								
								Compiler fixes  
							
							
							
						 
						
							2008-08-22 15:30:57 -05:00  
				
					
						
							
							
								 
						
							
							
								f2a5a30c6f 
								
							
								 
							
						 
						
							
							
								
								New front-end and high-level optimizer lands  
							
							
							
						 
						
							2008-08-12 03:22:45 -05:00