Slava Pestov
							
						 
						
							 
							
							
							
								
							
								23e133e383 
								
							
								 
							
						 
						
							
							
								
								vm: make a new old_space type to encapsulate a few things, split up generations array somewhat  
							
							 
							
							
							
						 
						
							2009-10-07 14:05:09 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								651a7fb6fa 
								
							
								 
							
						 
						
							
							
								
								vm: replace generations array with individual instance variables referencing zone objects  
							
							 
							
							
							
						 
						
							2009-10-07 11:59:59 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								16c3251072 
								
							
								 
							
						 
						
							
							
								
								vm: free up a cell in compiled code block headers  
							
							 
							
							
							
						 
						
							2009-10-06 05:52:45 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								b50d3f3fb0 
								
							
								 
							
						 
						
							
							
								
								vm: number of generations is not configurable anymore, split up begin_gc() and end_gc() into collect_{nursery,aging,aging_again,tenured}()  
							
							 
							
							
							
						 
						
							2009-10-06 02:39:12 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								d10e27149c 
								
							
								 
							
						 
						
							
							
								
								vm: cleanup  
							
							 
							
							
							
						 
						
							2009-10-06 01:42:17 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								c4ef640f4d 
								
							
								 
							
						 
						
							
							
								
								Big VM cleanup  
							
							 
							
							... 
							
							
							
							- Move forward declarations of 'struct factor_vm' to one place
- Rename template parameters from T and TYPE to descriptive names. New convention: CamelCase for template parameters
- Change some higher-order functions taking function pointers into templates, and define classes overriding operator(). There's a bit of new boilerplate here but its more consistent than the old mish-mash approaches
- Put GC state into a gc_state struct
- Use exceptions instead of longjmp for non-local control transfer in GC
- In code GC, instead of interleaving code block tracing with copying, add code blocks which need to be revisited to an std::set stored in the gc_state 
							
						 
						
							2009-10-03 08:47:05 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								f867a776d9 
								
							
								 
							
						 
						
							
							
								
								import std::tr1/boost ::unordered_map into the factor namespace instead of using #define  
							
							 
							
							
							
						 
						
							2009-10-02 11:13:27 -05:00  
						
					 
				
					
						
							
							
								 
								Phil Dawes
							
						 
						
							 
							
							
							
								
							
								3a88d8c49e 
								
							
								 
							
						 
						
							
							
								
								inlineimpl.hpp is toast  
							
							 
							
							
							
						 
						
							2009-09-29 19:53:10 +01:00  
						
					 
				
					
						
							
							
								 
								Phil Dawes
							
						 
						
							 
							
							
							
								
							
								791d654f92 
								
							
								 
							
						 
						
							
							
								
								moved local_roots and write_barrier stuff out of inlineimpls.hpp  
							
							 
							
							
							
						 
						
							2009-09-28 19:02:51 +01:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								c046ff4b23 
								
							
								 
							
						 
						
							
							
								
								vm: make heap data-type object-oriented  
							
							 
							
							
							
						 
						
							2009-09-25 20:32:00 -05:00  
						
					 
				
					
						
							
							
								 
								Phil Dawes
							
						 
						
							 
							
							
							
								
							
								46bab62689 
								
							
								 
							
						 
						
							
							
								
								misc cleanup  
							
							 
							
							
							
						 
						
							2009-09-24 08:02:14 +01:00  
						
					 
				
					
						
							
							
								 
								Phil Dawes
							
						 
						
							 
							
							
							
								
							
								b1c68d92b7 
								
							
								 
							
						 
						
							
							
								
								added threadsafe defines. Dunno if they do much  
							
							 
							
							
							
						 
						
							2009-09-16 08:20:51 +01:00  
						
					 
				
					
						
							
							
								 
								Phil Dawes
							
						 
						
							 
							
							
							
								
							
								57011aed51 
								
							
								 
							
						 
						
							
							
								
								vm ptr passed to primitives on X86.32 (other cpus still use singleton vm ptr)  
							
							 
							
							
							
						 
						
							2009-09-16 08:16:30 +01:00  
						
					 
				
					
						
							
							
								 
								Phil Dawes
							
						 
						
							 
							
							
							
								
							
								a5f24c8fb9 
								
							
								 
							
						 
						
							
							
								
								added VM relocation type  
							
							 
							
							
							
						 
						
							2009-09-16 08:16:30 +01:00  
						
					 
				
					
						
							
							
								 
								Phil Dawes
							
						 
						
							 
							
							
							
								
							
								e2993558a8 
								
							
								 
							
						 
						
							
							
								
								moved tagged template code back into tagged.hpp header  
							
							 
							
							
							
						 
						
							2009-09-16 08:16:26 +01:00  
						
					 
				
					
						
							
							
								 
								Phil Dawes
							
						 
						
							 
							
							
							
								
							
								e08a6e21cb 
								
							
								 
							
						 
						
							
							
								
								split the moved inline stuff into separate header file  
							
							 
							
							
							
						 
						
							2009-09-16 08:16:26 +01:00  
						
					 
				
					
						
							
							
								 
								Phil Dawes
							
						 
						
							 
							
							
							
								
							
								ecfd9a6075 
								
							
								 
							
						 
						
							
							
								
								reordered master to untangle dependency chain a bit  
							
							 
							
							
							
						 
						
							2009-09-16 08:16:24 +01:00  
						
					 
				
					
						
							
							
								 
								Phil Dawes
							
						 
						
							 
							
							
							
								
							
								fb9f9ac3d3 
								
							
								 
							
						 
						
							
							
								
								moved callstack.hpp inline functions to vm.hpp  
							
							 
							
							
							
						 
						
							2009-09-16 08:16:23 +01:00  
						
					 
				
					
						
							
							
								 
								Phil Dawes
							
						 
						
							 
							
							
							
								
							
								9e23e41267 
								
							
								 
							
						 
						
							
							
								
								moved math.hpp inline functions to vm.hpp  
							
							 
							
							
							
						 
						
							2009-09-16 08:16:23 +01:00  
						
					 
				
					
						
							
							
								 
								Phil Dawes
							
						 
						
							 
							
							
							
								
							
								a249b484c4 
								
							
								 
							
						 
						
							
							
								
								moved byte_arrays.hpp inline functions to vm.hpp  
							
							 
							
							
							
						 
						
							2009-09-16 08:16:23 +01:00  
						
					 
				
					
						
							
							
								 
								Phil Dawes
							
						 
						
							 
							
							
							
								
							
								209755e2de 
								
							
								 
							
						 
						
							
							
								
								moved arrays.hpp inline functions to vm.hpp  
							
							 
							
							
							
						 
						
							2009-09-16 08:16:23 +01:00  
						
					 
				
					
						
							
							
								 
								Phil Dawes
							
						 
						
							 
							
							
							
								
							
								2e129dfc45 
								
							
								 
							
						 
						
							
							
								
								moved generic_arrays inline functions to vm.hpp  
							
							 
							
							
							
						 
						
							2009-09-16 08:16:23 +01:00  
						
					 
				
					
						
							
							
								 
								Phil Dawes
							
						 
						
							 
							
							
							
								
							
								4dabd186c9 
								
							
								 
							
						 
						
							
							
								
								moved data_gc and local_roots inline functions to vm.hpp  
							
							 
							
							
							
						 
						
							2009-09-16 08:16:23 +01:00  
						
					 
				
					
						
							
							
								 
								Phil Dawes
							
						 
						
							 
							
							
							
								
							
								31905b68a7 
								
							
								 
							
						 
						
							
							
								
								moved write_barrier inline function impls to vm.hpp  
							
							 
							
							
							
						 
						
							2009-09-16 08:16:23 +01:00  
						
					 
				
					
						
							
							
								 
								Phil Dawes
							
						 
						
							 
							
							
							
								
							
								386dafe747 
								
							
								 
							
						 
						
							
							
								
								moved local roots state to vm, shuffled includes around  
							
							 
							
							
							
						 
						
							2009-09-16 08:16:21 +01:00  
						
					 
				
					
						
							
							
								 
								Phil Dawes
							
						 
						
							 
							
							
							
								
							
								caefc7aff9 
								
							
								 
							
						 
						
							
							
								
								Empty vm struct  
							
							 
							
							
							
						 
						
							2009-09-16 08:16:17 +01:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								81c4670619 
								
							
								 
							
						 
						
							
							
								
								VM: use an std::vector instead of a fixed-size buffer for GC roots  
							
							 
							
							
							
						 
						
							2009-09-08 14:21:09 -05:00  
						
					 
				
					
						
							
							
								 
								Philipp Brüschweiler
							
						 
						
							 
							
							
							
								
							
								230061783a 
								
							
								 
							
						 
						
							
							
								
								misc small documentation fixes, some fixes for factor.vim, changed permissions of vm/* to 644  
							
							 
							
							
							
						 
						
							2009-08-10 21:33:07 +02:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								9ef162e2ef 
								
							
								 
							
						 
						
							
							
								
								More VM cleanups  
							
							 
							
							
							
						 
						
							2009-05-13 01:08:16 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								ace084b633 
								
							
								 
							
						 
						
							
							
								
								Need to include unistd.h  
							
							 
							
							
							
						 
						
							2009-05-08 15:15:10 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								56597b65f4 
								
							
								 
							
						 
						
							
							
								
								VM now compiles with GCC 3.4 on Windows  
							
							 
							
							
							
						 
						
							2009-05-05 14:17:02 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								786b9096e2 
								
							
								 
							
						 
						
							
							
								
								Store forwarding table off to the side instead of in the code block; saves one cell per code block  
							
							 
							
							
							
						 
						
							2009-05-05 11:07:20 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								8872c40b1e 
								
							
								 
							
						 
						
							
							
								
								The great type renaming  
							
							 
							
							
							
						 
						
							2009-05-04 04:50:24 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								8e17e0a01e 
								
							
								 
							
						 
						
							
							
								
								VM: use better abstractions for tagged pointers, eliminate get()/set() stuff, clean up array, string, and byte-array element access  
							
							 
							
							
							
						 
						
							2009-05-04 01:00:30 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								b923d548cf 
								
							
								 
							
						 
						
							
							
								
								Move vmpp to vm  
							
							 
							
							
							
						 
						
							2009-05-02 20:37:18 -05:00