Slava Pestov
							
						 
						
							 
							
							
							
								
							
								e04df76f60 
								
							
								 
							
						 
						
							
							
								
								Various codegen improvements:  
							
							 
							
							... 
							
							
							
							- new-insn word to construct instructions
- cache RPO in the CFG
- re-organize low-level optimizer so that MR is built after register allocation
- register allocation now stores instruction numbers in the instructions themselves
- split defs-vregs into defs-vregs and temp-vregs 
							
						 
						
							2009-05-29 13:11:34 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								280736ab00 
								
							
								 
							
						 
						
							
							
								
								On second thought, linearization will be done after SSA destruction so live-in is accurate  
							
							 
							
							
							
						 
						
							2009-05-29 05:45:40 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								743550f19c 
								
							
								 
							
						 
						
							
							
								
								Put GC checks in the right place when linearizing, and generate _dispatch-labels  
							
							 
							
							
							
						 
						
							2009-05-29 05:36:04 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								76d74c16af 
								
							
								 
							
						 
						
							
							
								
								Fixing various bugs; alias analysis wasn't handling ##phi nodes, stack analysis incorrectly handled height-changing back edges and ##fixnum-*, clean up ##dispatch generation  
							
							 
							
							
							
						 
						
							2009-05-29 01:39:14 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								ceb332f596 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.alias-analysis: ##peek needs to set alias class of output value  
							
							 
							
							
							
						 
						
							2009-05-28 18:19:01 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								dbf18927b9 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.liveness: correct handling of phi nodes  
							
							 
							
							
							
						 
						
							2009-05-28 17:54:27 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								fc5587bda3 
								
							
								 
							
						 
						
							
							
								
								Test updates  
							
							 
							
							
							
						 
						
							2009-05-28 02:50:07 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								ecece1d08b 
								
							
								 
							
						 
						
							
							
								
								CFG checker now checks consistency of successors and predecessors lists; fix long-standing bug in useless-blocks optimization  
							
							 
							
							
							
						 
						
							2009-05-28 02:49:51 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								1fa465d77f 
								
							
								 
							
						 
						
							
							
								
								Fix alias analysis  
							
							 
							
							
							
						 
						
							2009-05-28 02:48:58 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								7b88756fd0 
								
							
								 
							
						 
						
							
							
								
								Add a with-scope so that optimize-tree doesn't pollute namespace  
							
							 
							
							
							
						 
						
							2009-05-27 18:58:54 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								117cb78d6b 
								
							
								 
							
						 
						
							
							
								
								Fixing local optimizations  
							
							 
							
							
							
						 
						
							2009-05-27 18:58:41 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								f3688c9373 
								
							
								 
							
						 
						
							
							
								
								Better CFG checker  
							
							 
							
							
							
						 
						
							2009-05-27 18:58:14 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								dadb9a2c50 
								
							
								 
							
						 
						
							
							
								
								Add phi elimination pass  
							
							 
							
							
							
						 
						
							2009-05-27 18:58:01 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								3b79d61496 
								
							
								 
							
						 
						
							
							
								
								Add a new ##allocation union to remove some code duplication  
							
							 
							
							
							
						 
						
							2009-05-27 18:55:49 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								2025823ba6 
								
							
								 
							
						 
						
							
							
								
								Remove old local DCE pass  
							
							 
							
							
							
						 
						
							2009-05-27 17:55:15 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								ce25e0ad8d 
								
							
								 
							
						 
						
							
							
								
								New local-optimization combinator removes some boilerplate  
							
							 
							
							
							
						 
						
							2009-05-26 19:56:56 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								1db81da264 
								
							
								 
							
						 
						
							
							
								
								Refactoring low-level optimizer to support stack analysis pass  
							
							 
							
							
							
						 
						
							2009-05-26 19:31:19 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								eda44f28a6 
								
							
								 
							
						 
						
							
							
								
								Move maybe-set-at to assocs  
							
							 
							
							
							
						 
						
							2009-05-26 18:45:37 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								ccb662c60e 
								
							
								 
							
						 
						
							
							
								
								Fix another bug in stack-analysis  
							
							 
							
							
							
						 
						
							2009-05-26 03:42:39 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								7ea4e255fb 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.stack-analysis: make it pass more tests  
							
							 
							
							
							
						 
						
							2009-05-26 02:59:14 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								8b022f926c 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.dce: new global dead code elimination pass  
							
							 
							
							
							
						 
						
							2009-05-26 02:58:57 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								e0841fa695 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.checker: new check-rpo word  
							
							 
							
							
							
						 
						
							2009-05-26 02:58:40 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								a08bbde2e7 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.stack-analysis: progress  
							
							 
							
							
							
						 
						
							2009-05-25 19:18:13 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								dead771b3f 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.checker: new vocabulary for checking CFG invariants  
							
							 
							
							
							
						 
						
							2009-05-25 19:16:58 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								a2b982e247 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.builder: don't make basic blocks after terminating calls  
							
							 
							
							
							
						 
						
							2009-05-25 19:16:36 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								b8aa633d58 
								
							
								 
							
						 
						
							
							
								
								Merge branch 'master' into global_optimization  
							
							 
							
							
							
						 
						
							2009-05-23 15:55:04 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								43a1834e0b 
								
							
								 
							
						 
						
							
							
								
								stack-checker: fix case where invalid code could infer  
							
							 
							
							
							
						 
						
							2009-05-23 15:50:35 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								145f1dbeef 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.stack-analysis: change how inc-d/inc-r work  
							
							 
							
							
							
						 
						
							2009-05-23 15:47:08 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								96975474b0 
								
							
								 
							
						 
						
							
							
								
								Merge branch 'master' into global_optimization  
							
							 
							
							
							
						 
						
							2009-05-23 01:03:24 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								3276ae3a08 
								
							
								 
							
						 
						
							
							
								
								get rid of useless test  
							
							 
							
							
							
						 
						
							2009-05-21 20:56:57 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								6af61656f3 
								
							
								 
							
						 
						
							
							
								
								CFG optimizer work in progress - adding phi nodes  
							
							 
							
							
							
						 
						
							2009-05-21 16:49:28 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								e58fcd485c 
								
							
								 
							
						 
						
							
							
								
								Working on global optimizations  
							
							 
							
							
							
						 
						
							2009-05-19 17:28:13 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								66a9416473 
								
							
								 
							
						 
						
							
							
								
								Update documentation for stricter vocabulary search path semantics  
							
							 
							
							
							
						 
						
							2009-05-16 00:29:21 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								dedbd14945 
								
							
								 
							
						 
						
							
							
								
								Fix escape analysis bug reported by Doug  
							
							 
							
							
							
						 
						
							2009-05-15 17:18:38 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								fb6df472a2 
								
							
								 
							
						 
						
							
							
								
								Cleaning up USING: lists for new strict semantics  
							
							 
							
							
							
						 
						
							2009-05-14 16:54:16 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								b67b617746 
								
							
								 
							
						 
						
							
							
								
								Fix compiler breakage if a GENERIC# has an incorrect stack effect declaration  
							
							 
							
							
							
						 
						
							2009-05-12 21:23:52 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								6e08e29a3a 
								
							
								 
							
						 
						
							
							
								
								Remove compiled slot from quotations since its not needed  
							
							 
							
							
							
						 
						
							2009-05-12 03:09:15 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								65faa3fda3 
								
							
								 
							
						 
						
							
							
								
								Fix unit tests and load errors for slip removal  
							
							 
							
							
							
						 
						
							2009-05-10 17:03:41 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								a366909c25 
								
							
								 
							
						 
						
							
							
								
								Removing slip usage from basis  
							
							 
							
							
							
						 
						
							2009-05-10 15:28:22 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								3591f6c684 
								
							
								 
							
						 
						
							
							
								
								Count megamorphic cache hits  
							
							 
							
							
							
						 
						
							2009-05-07 14:26:08 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								75d9946bd7 
								
							
								 
							
						 
						
							
							
								
								compiler.tree.modular-arithmetic: convert >integer >fixnum into >fixnum  
							
							 
							
							
							
						 
						
							2009-05-07 12:54:23 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								466533d509 
								
							
								 
							
						 
						
							
							
								
								Fix overly-eager strength reduction for mod, and add a type function for >integer (reported by Joe Groff)  
							
							 
							
							
							
						 
						
							2009-05-07 12:32:06 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								581d017b46 
								
							
								 
							
						 
						
							
							
								
								Working on inline caching for tail call sites  
							
							 
							
							
							
						 
						
							2009-05-06 19:22:22 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								c93d876075 
								
							
								 
							
						 
						
							
							
								
								Better separation of concerns: cpu.{x86,ppc}.assembler no longer depends on compiler.codegen.fixup and cpu.architecture. Rename rt-xt-direct to rt-xt-pic to better explain its purpose  
							
							 
							
							
							
						 
						
							2009-05-06 16:14:53 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								a961e17ef1 
								
							
								 
							
						 
						
							
							
								
								Add new RC_ABSOLUTE_PPC_2 relocation type  
							
							 
							
							
							
						 
						
							2009-05-05 20:56:23 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								58d0e17936 
								
							
								 
							
						 
						
							
							
								
								Fix bool type; its actually 1 byte not 4 in structs. Bug reported by jedahu  
							
							 
							
							
							
						 
						
							2009-05-05 18:37:40 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								428f443c9c 
								
							
								 
							
						 
						
							
							
								
								compiler.constants: update compiled-header-size  
							
							 
							
							
							
						 
						
							2009-05-05 15:06:05 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								029d93a838 
								
							
								 
							
						 
						
							
							
								
								Make walker work better with call( and breakpoints which are nested inside combinators  
							
							 
							
							
							
						 
						
							2009-05-05 09:12:32 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								fb5b48c71a 
								
							
								 
							
						 
						
							
							
								
								Fix some test failures  
							
							 
							
							
							
						 
						
							2009-05-04 09:44:26 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								a63ad6a7a5 
								
							
								 
							
						 
						
							
							
								
								Remove cruddy string encoding/decoding code from VM  
							
							 
							
							
							
						 
						
							2009-05-02 13:45:38 -05:00