|  Slava Pestov | 5a64290386 | compiler.cfg.linear-scan: more code cleanups, and working on split-to-fit algorithm | 2009-07-09 00:20:03 -05:00 | 
				
					
						|  Slava Pestov | 4507bdcbc0 | compiler.cfg.linear-scan: code cleanups | 2009-07-08 23:28:28 -05:00 | 
				
					
						|  Slava Pestov | 0bcf4ce535 | compiler.cfg.linear-scan: Re-implement spilling, add some additional runtime assertions, simplify assignment pass since it doesn't have to track spill slots anymore; just assume a live value that's not in active or inactive is spilled | 2009-07-07 03:28:55 -05:00 | 
				
					
						|  Slava Pestov | a19f22ec82 | compiler.cfg.linear-scan: debugging spilling and resolve pass | 2009-07-01 17:41:07 -05:00 | 
				
					
						|  Slava Pestov | 578b0126fc | compiler.cfg.linear-scan: compute-free-pos was broken in the case where more than one inactive interval had the same physical register assigned | 2009-06-30 16:07:58 -05:00 | 
				
					
						|  Slava Pestov | c53aca6016 | compiler.cfg.linear-scan: fix coalescing to take lifetime holes into account | 2009-06-23 21:32:51 -05:00 | 
				
					
						|  Slava Pestov | 5c912504d7 | compiler.cfg.linear-scan: untangle add-active/delete-active/add-handled calls in spilling, replace 'sort-values last' with 'alist-max' in compiler.utilities | 2009-06-19 18:28:30 -05:00 | 
				
					
						|  Slava Pestov | 2f15ac3c8f | compiler.cfg.linear-scan: Fix a couple of bugs | 2009-06-19 03:42:42 -05:00 | 
				
					
						|  Slava Pestov | 1f5f8393c3 | compiler.cfg.linear-scan: Further progress on inactive interval handling | 2009-06-17 15:27:20 -05:00 | 
				
					
						|  Slava Pestov | d0f6a7d048 | Split up compiler.cfg.linear-scan.allocation into a number of sub-vocabularies; start work on compiler.cfg.linear-scan.resolve; start work on inactive interval splitting | 2009-06-11 17:55:14 -05:00 | 
				
					
						|  Slava Pestov | 70b75b8dea | Linear scan: implement live range intersection | 2009-06-06 01:04:12 -05:00 | 
				
					
						|  Slava Pestov | 04c72d0a72 | Linear scan: correctly compute live spill slots | 2009-06-05 18:06:47 -05:00 | 
				
					
						|  Slava Pestov | 81b2a39070 | compiler.cfg.linear-scan: re-do interval splitting to operate on live ranges; add inactive set processing | 2009-06-04 18:53:02 -05:00 | 
				
					
						|  Slava Pestov | 37e278ed02 | Use [ ] [ ] map-reduce instead of unclip [ ] reduce | 2009-04-06 17:50:54 -05:00 | 
				
					
						|  Slava Pestov | 669548e62e | Clean up some usages of tuck, and add Joe's curried cleave/spread/apply combinators to kernel vocabulary | 2009-02-02 13:43:54 -06:00 | 
				
					
						|  Slava Pestov | 1af3b8ed65 | If a register is spilled and the reload location is also a copy, we chicken out and don't coalesce. This is suboptimal but it's not clear to me how to implement it cleanly, and SSA graph coloring will solve this problem eventually anyway | 2008-11-04 00:32:56 -06:00 | 
				
					
						|  Slava Pestov | 8df1aba71d | Coalescing | 2008-11-02 01:49:57 -06:00 | 
				
					
						|  Slava Pestov | 14d8696f40 | Oops, don't mix register classes in active set | 2008-10-19 03:34:42 -05:00 | 
				
					
						|  Slava Pestov | c0d89b061e | Fixing register allocator prspilling | 2008-10-19 01:10:21 -05:00 | 
				
					
						|  Slava Pestov | cf46a832e7 | Debugging register allocator and inline allocation | 2008-10-08 23:42:53 -05:00 | 
				
					
						|  Slava Pestov | 7b6d9c4c4f | Debugging new codegen | 2008-10-07 20:00:38 -05:00 | 
				
					
						|  Slava Pestov | f436fd0c0f | Merging in new codegen | 2008-10-07 16:16:50 -05:00 |