2517b2fc2b 
								
							
								 
							
						 
						
							
							
								
								compiler: combine ##load-constant followed by ##alien-double into a ##load-double on x86-32, saving an integer register  
							
							
							
						 
						
							2010-04-18 21:42:45 -05:00  
				
					
						
							
							
								 
						
							
							
								5606825e8b 
								
							
								 
							
						 
						
							
							
								
								vm: remove primitive table, non-optimizing compiler now looks up primitives with dlsym()  
							
							
							
						 
						
							2010-01-19 20:00:33 +13:00  
				
					
						
							
							
								 
						
							
							
								637a77c018 
								
							
								 
							
						 
						
							
							
								
								Stop wearing monocle and use the term "entry point" instead of "XT" throughout VM and compiler; also remove two unused relocation types  
							
							
							
						 
						
							2010-01-18 20:54:00 +13:00  
				
					
						
							
							
								 
						
							
							
								ce2487e6c0 
								
							
								 
							
						 
						
							
							
								
								compiler.codegen.fixup: cache symbol names, reducing image size by ~200Kb  
							
							
							
						 
						
							2010-01-13 23:18:43 +13:00  
				
					
						
							
							
								 
						
							
							
								ba5b90e063 
								
							
								 
							
						 
						
							
							
								
								Change how non-volatile register preservation is done in alien callbacks, with the aim of fixing callbacks on PowerPC, and to eventually eliminate assembly code from VM  
							
							... 
							
							
							
							- Simplify calculation of offset in relocation table
- Open-code %alien-callback
- Remove magic_frame hack from context objects
- Move magical return instruction from optimizing compiler backend into callback entry stub 
							
						 
						
							2010-01-03 01:11:51 +13:00  
				
					
						
							
							
								 
						
							
							
								0068bce934 
								
							
								 
							
						 
						
							
							
								
								vm: big overhaul of non-optimizing compiler  
							
							... 
							
							
							
							- change some primitives into sub-primitives: fixnum+ fixnum- fixnum* inline-cache-miss inline-cache-miss-tail
- rename some relocation types for clarity
- some other minor re-organizations and cleanups 
							
						 
						
							2009-12-15 07:20:09 -05:00  
				
					
						
							
							
								 
						
							
							
								eb840dcf41 
								
							
								 
							
						 
						
							
							
								
								RT_HERE now takes its argument from the literal table rather than the parameter table, reducing image size further  
							
							
							
						 
						
							2009-12-02 04:55:48 -06:00  
				
					
						
							
							
								 
						
							
							
								68c09f0e93 
								
							
								 
							
						 
						
							
							
								
								Split literal table into literal and parameter tables, literal table is discarded after code block initialization  
							
							
							
						 
						
							2009-12-02 04:28:15 -06:00  
				
					
						
							
							
								 
						
							
							
								bd02eef38e 
								
							
								 
							
						 
						
							
							
								
								Fix non-tail recursive inline recursive compilation  
							
							
							
						 
						
							2009-11-25 19:12:09 -06:00  
				
					
						
							
							
								 
						
							
							
								0612bc6177 
								
							
								 
							
						 
						
							
							
								
								Factor source files should not be executable  
							
							
							
						 
						
							2009-11-21 17:50:43 -06:00  
				
					
						
							
							
								 
						
							
							
								38d120f92e 
								
							
								 
							
						 
						
							
							
								
								vm: rt-vm relocation now supports accessing a field directly  
							
							
							
						 
						
							2009-10-14 19:24:23 -05:00  
				
					
						
							
							
								 
						
							
							
								1ce39963fd 
								
							
								 
							
						 
						
							
							
								
								Working on adding support for the new write barrier to optimized code  
							
							
							
						 
						
							2009-10-14 02:06:01 -05:00  
				
					
						
							
							
								 
						
							
							
								697e2342d0 
								
							
								 
							
						 
						
							
							
								
								vm: put code block owner directly in the header, instead of as the first entry in the literal table. Reduces x86-64 image size by ~700kb, also eliminates separate 'strip' set of staging images from deploy tool  
							
							
							
						 
						
							2009-10-06 06:25:07 -05:00  
				
					
						
							
							
								 
						
							
							
								3a9922d161 
								
							
								 
							
						 
						
							
							
								
								Fix compiler errors  
							
							
							
						 
						
							2009-06-01 03:00:10 -05:00  
				
					
						
							
							
								 
						
							
							
								b389dcf441 
								
							
								 
							
						 
						
							
							
								
								Redo compiler.codegen.fixup and get %dispatch to work  
							
							
							
						 
						
							2009-06-01 02:32:36 -05:00  
				
					
						
							
							
								 
						
							
							
								fc152ef210 
								
							
								 
							
						 
						
							
							
								
								Various improvements aimed at getting local optimization regressions fixed:  
							
							... 
							
							
							
							- Rename _gc to ##gc
- Absolute labels are now supported
- Generate _dispatch-label 
							
						 
						
							2009-05-31 23:28:08 -05:00  
				
					
						
							
							
								 
						
							
							
								581d017b46 
								
							
								 
							
						 
						
							
							
								
								Working on inline caching for tail call sites  
							
							
							
						 
						
							2009-05-06 19:22:22 -05:00  
				
					
						
							
							
								 
						
							
							
								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  
				
					
						
							
							
								 
						
							
							
								5fb5c19d61 
								
							
								 
							
						 
						
							
							
								
								Machine code is now stored in a byte array instead of an array for add_code_block()  
							
							
							
						 
						
							2009-04-30 04:34:35 -05:00  
				
					
						
							
							
								 
						
							
							
								c15a4c1c5a 
								
							
								 
							
						 
						
							
							
								
								Add new relocation type for call sites which may be replaced by ICs  
							
							
							
						 
						
							2009-04-28 17:53:14 -05:00  
				
					
						
							
							
								 
						
							
							
								7e84daf0f1 
								
							
								 
							
						 
						
							
							
								
								Move (execute) to kernel.private  
							
							
							
						 
						
							2009-04-26 02:42:37 -05:00  
				
					
						
							
							
								 
						
							
							
								8ea3db9eef 
								
							
								 
							
						 
						
							
							
								
								Get rid of a 'rot'  
							
							
							
						 
						
							2009-04-25 22:35:30 -05:00  
				
					
						
							
							
								 
						
							
							
								7f4c967ace 
								
							
								 
							
						 
						
							
							
								
								More compact relocation layout  
							
							
							
						 
						
							2009-03-19 20:02:43 -05:00  
				
					
						
							
							
								 
						
							
							
								4f0a9f311e 
								
							
								 
							
						 
						
							
							
								
								Untangling some dependencies  
							
							
							
						 
						
							2008-12-08 14:58:00 -06:00  
				
					
						
							
							
								 
						
							
							
								aa838dbc2d 
								
							
								 
							
						 
						
							
							
								
								Fix compile errors  
							
							
							
						 
						
							2008-12-05 09:04:16 -06:00  
				
					
						
							
							
								 
						
							
							
								6dce834d91 
								
							
								 
							
						 
						
							
							
								
								Get rid of some more >r/r> usages  
							
							
							
						 
						
							2008-11-30 18:28:15 -06:00  
				
					
						
							
							
								 
						
							
							
								ab689c098b 
								
							
								 
							
						 
						
							
							
								
								Clean up direct literal code and make a first attempt at PowerPC support  
							
							
							
						 
						
							2008-11-24 08:16:14 -06:00  
				
					
						
							
							
								 
						
							
							
								2aaf860f47 
								
							
								 
							
						 
						
							
							
								
								Experimental optimizations  
							
							
							
						 
						
							2008-11-24 06:40:51 -06:00  
				
					
						
							
							
								 
						
							
							
								eb05dd3a12 
								
							
								 
							
						 
						
							
							
								
								Optimize a ##dispatch that is applied to the result of a ##sub-imm or ##add-imm; this eliminates an instruction from the common 1 fixnum-fast { ... } dispatch and 8 fixnum-fast { ... } dispatch code sequences appearing in generic word expansions  
							
							
							
						 
						
							2008-11-13 04:16:08 -06:00  
				
					
						
							
							
								 
						
							
							
								f092622fac 
								
							
								 
							
						 
						
							
							
								
								CFG IR is now pure SSA  
							
							
							
						 
						
							2008-10-20 01:56:28 -05:00  
				
					
						
							
							
								 
						
							
							
								7b6d9c4c4f 
								
							
								 
							
						 
						
							
							
								
								Debugging new codegen  
							
							
							
						 
						
							2008-10-07 20:00:38 -05:00  
				
					
						
							
							
								 
						
							
							
								f436fd0c0f 
								
							
								 
							
						 
						
							
							
								
								Merging in new codegen  
							
							
							
						 
						
							2008-10-07 16:16:50 -05:00