0d57734dab 
								
							
								 
							
						 
						
							
							
								
								vm: replace block comments /**/ with line comments //  
							
							
							
						 
						
							2016-09-09 05:47:52 +02:00  
				
					
						
							
							
								 
						
							
							
								0c9c0b2f82 
								
							
								 
							
						 
						
							
							
								
								VM: removes a few methods related to relocation handling  
							
							... 
							
							
							
							They are only used once, so it is simpler to "inline" them 
							
						 
						
							2015-12-13 13:56:36 +01:00  
				
					
						
							
							
								 
						
							
							
								46bfcbf3a2 
								
							
								 
							
						 
						
							
							
								
								VM: the rel_type() and rel_offset() accessors in instruction_operand can be removed  
							
							
							
						 
						
							2015-12-13 13:56:36 +01:00  
				
					
						
							
							
								 
						
							
							
								b3de115e3c 
								
							
								 
							
						 
						
							
							
								
								VM: remove RT_EXCEPTION_HANDLER reference  
							
							
							
						 
						
							2015-09-02 21:54:47 +02:00  
				
					
						
							
							
								 
						
							
							
								22887c5816 
								
							
								 
							
						 
						
							
							
								
								VM: get rid of the odd RT_EXCEPTION_HANDLER relocation  
							
							... 
							
							
							
							The address to the win32 relocation handler can be stored in a special
object and be accessed by jit-install-seh. Doing it that way is better
because you can remove a lot of special code related to that relocation
type. 
							
						 
						
							2015-09-02 21:54:30 +02:00  
				
					
						
							
							
								 
						
							
							
								88d7c10d03 
								
							
								 
							
						 
						
							
							
								
								VM: Replace u8-64, s8-64, cell, fixnum with stdint.h equivalents  
							
							
							
						 
						
							2013-05-13 00:28:25 -04:00  
				
					
						
							
							
								 
						
							
							
								7b1b1eef23 
								
							
								 
							
						 
						
							
							
								
								VM: Remove unnecessary _ suffix in constructors  
							
							
							
						 
						
							2013-05-12 23:20:43 -04:00  
				
					
						
							
							
								 
						
							
							
								d3d1d3bb7a 
								
							
								 
							
						 
						
							
							
								
								VM: Refactor instruction_operands.cpp/hpp to Factor style  
							
							
							
						 
						
							2013-05-12 13:24:45 -04:00  
				
					
						
							
							
								 
						
							
							
								9b575730bb 
								
							
								 
							
						 
						
							
							
								
								vm: add RT_SAFEPOINT to number_of_parameters()  
							
							
							
						 
						
							2011-10-27 21:14:45 -07:00  
				
					
						
							
							
								 
						
							
							
								e1465308cd 
								
							
								 
							
						 
						
							
							
								
								vm: add RT_SAFEPOINT relocation type  
							
							
							
						 
						
							2011-10-27 21:14:44 -07:00  
				
					
						
							
							
								 
						
							
							
								f8e475485a 
								
							
								 
							
						 
						
							
							
								
								Add RT_INLINE_CACHE_MISS relocation type to avoid frequent dlsym lookups when compiling PICs.  Fixes   #123  
							
							
							
						 
						
							2011-10-03 00:26:21 -07:00  
				
					
						
							
							
								 
						
							
							
								7c3827190b 
								
							
								 
							
						 
						
							
							
								
								Tease out symbol name and library in undefined_symbol() handler, for friendlier errors when calling an unresolved C function name.  Fixes   #93  
							
							
							
						 
						
							2011-09-12 00:56:24 -07:00  
				
					
						
							
							
								 
						
							
							
								64252dbdbc 
								
							
								 
							
						 
						
							
							
								
								32 and 64 bit Linux PPC support  
							
							
							
						 
						
							2011-05-23 23:36:14 -04:00  
				
					
						
							
							
								 
						
							
							
								58e4381eb1 
								
							
								 
							
						 
						
							
							
								
								compiler: new "binary literal area" at the end of a word's machine code stores constant floats and SIMD vectors; this allows ##load-reference/##load-memory fusion to be performed on x86-64, with a RIP-relative address reaching the data; also simplifies VM since custom relocation types used by the previous 32-bit-only optimization are no longer needed  
							
							
							
						 
						
							2010-05-03 17:34:35 -04:00  
				
					
						
							
							
								 
						
							
							
								9788323d25 
								
							
								 
							
						 
						
							
							
								
								compiler: add ##load-vector instruction to avoid wasting a temporary register on x86-32  
							
							
							
						 
						
							2010-05-03 17:34:28 -04:00  
				
					
						
							
							
								 
						
							
							
								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  
				
					
						
							
							
								 
						
							
							
								1434a305c8 
								
							
								 
							
						 
						
							
							
								
								vm: add a new rc-absolute-1 relocation class to allow storing values in 8-bit operands, and optimized code sequences for inline caches using this  
							
							
							
						 
						
							2010-04-12 14:22:41 -07:00  
				
					
						
							
							
								 
						
							
							
								74640b7f71 
								
							
								 
							
						 
						
							
							
								
								Get green threads working on Windows  
							
							... 
							
							
							
							- store stack base and limit in TIB
- set up a frame-based structured exception handler in each context's callstack
- boot.x86.32.image has now been replaced by boot.winnt-x86.32.image and boot.unix-x86.32.image 
							
						 
						
							2010-04-03 20:24:33 -04:00  
				
					
						
							
							
								 
						
							
							
								942f6e0943 
								
							
								 
							
						 
						
							
							
								
								Update Win64 support  
							
							
							
						 
						
							2010-01-25 15:39:34 +13: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  
				
					
						
							
							
								 
						
							
							
								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  
				
					
						
							
							
								 
						
							
							
								514043eb14 
								
							
								 
							
						 
						
							
							
								
								vm: fix instruction_operand::load_value() for PowerPC relocation classes  
							
							
							
						 
						
							2009-12-02 09:20:33 -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  
				
					
						
							
							
								 
						
							
							
								c6602bda27 
								
							
								 
							
						 
						
							
							
								
								Big cleanup of literal table and relocation-related code  
							
							... 
							
							
							
							- new way to iterate over instruction_operands cleans up relocation code
- move some methods out of the VM class to clean up code
- if debugging is on, die earlier if attempting to allocate inside GC
- callback heap entries are now code_blocks
- replace block_granularity with data_alignment 
							
						 
						
							2009-12-02 00:48:41 -06:00  
				
					
						
							
							
								 
						
							
							
								58c21a1a11 
								
							
								 
							
						 
						
							
							
								
								vm: new image relocation that doesn't use literal table  
							
							
							
						 
						
							2009-11-27 17:05:08 -06:00  
				
					
						
							
							
								 
						
							
							
								77a877789a 
								
							
								 
							
						 
						
							
							
								
								vm: new implementation of modify-code-heap that doesn't use literal tables  
							
							
							
						 
						
							2009-11-25 17:20:48 -06:00  
				
					
						
							
							
								 
						
							
							
								bfd4cce364 
								
							
								 
							
						 
						
							
							
								
								vm: compaction now updates the needs_fixup set  
							
							
							
						 
						
							2009-11-24 19:29:59 -06:00  
				
					
						
							
							
								 
						
							
							
								001a3f2847 
								
							
								 
							
						 
						
							
							
								
								vm: mark sweep now traces code block references; rename embedded_pointer to instruction_operand  
							
							
							
						 
						
							2009-11-23 19:17:12 -06:00