Joe Groff
							
						 
						
							 
							
							
							
								
							
								9236c05e60 
								
							
								 
							
						 
						
							
							
								
								vm: stage code block map fixup properly for GC  
							
							 
							
							... 
							
							
							
							Don't update the map until the very last thing, and pass untranslated addresses to the iterator functors. Somewhat complicated by the fact that, for startup_fixup, the map is initialized with fixed-up values, so the fixup functor needs a flag indicating whether it operates with a fixed or unfixed code heap map. 
							
						 
						
							2011-12-14 09:56:48 -08:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								e86f434f26 
								
							
								 
							
						 
						
							
							
								
								Add GC maps to ##box, ##box-long-long, ##alien-invoke, ##alien-indirect and ##call-gc; remove ##gc-map instruction  
							
							 
							
							
							
						 
						
							2010-06-14 19:39:46 -04:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								806e54630a 
								
							
								 
							
						 
						
							
							
								
								GC maps for more compact inline GC checks  
							
							 
							
							
							
						 
						
							2010-06-11 20:06:00 -04:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								b740a1fe5d 
								
							
								 
							
						 
						
							
							
								
								vm: use C++ exceptions instead of longjmp(), to make Windows crash more  
							
							 
							
							
							
						 
						
							2010-04-02 14:10:55 -04:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								73e105bfc4 
								
							
								 
							
						 
						
							
							
								
								vm: flush icache after GC  
							
							 
							
							
							
						 
						
							2009-11-24 21:36:35 -06:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								bfd4cce364 
								
							
								 
							
						 
						
							
							
								
								vm: compaction now updates the needs_fixup set  
							
							 
							
							
							
						 
						
							2009-11-24 19:29:59 -06:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								001a3f2847 
								
							
								 
							
						 
						
							
							
								
								vm: mark sweep now traces code block references; rename embedded_pointer to instruction_operand  
							
							 
							
							
							
						 
						
							2009-11-23 19:17:12 -06:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								064c00f78d 
								
							
								 
							
						 
						
							
							
								
								New identity-hashcode primitive  
							
							 
							
							
							
						 
						
							2009-11-10 21:18:54 -06:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								84e191704e 
								
							
								 
							
						 
						
							
							
								
								vm: fix crash in profiler  
							
							 
							
							
							
						 
						
							2009-11-06 01:22:53 -06:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								b011295300 
								
							
								 
							
						 
						
							
							
								
								vm: fix 'become' when aging space is empty  
							
							 
							
							
							
						 
						
							2009-11-05 23:53:53 -06:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								e4ad642134 
								
							
								 
							
						 
						
							
							
								
								vm: 4 bit tags, new representation of alien objects makes unbox-any-c-ptr more efficient (work in progress)  
							
							 
							
							
							
						 
						
							2009-11-02 04:25:54 -06:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								5ae40e26ee 
								
							
								 
							
						 
						
							
							
								
								vm: remove promotion strategy, clean up compaction code  
							
							 
							
							
							
						 
						
							2009-11-01 03:47:09 -06:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								6f7607eed7 
								
							
								 
							
						 
						
							
							
								
								vm: clean up card unmarking  
							
							 
							
							
							
						 
						
							2009-10-30 03:15:50 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								91cec17e52 
								
							
								 
							
						 
						
							
							
								
								vm: get GC events working, -verbosegc switch now produces more info  
							
							 
							
							
							
						 
						
							2009-10-26 23:57:26 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								e793a72060 
								
							
								 
							
						 
						
							
							
								
								vm: remove crummy old GC stats, split off free list code, clean up various other things  
							
							 
							
							
							
						 
						
							2009-10-26 22:08:35 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								45a955b5bb 
								
							
								 
							
						 
						
							
							
								
								vm: fix typo in card tracing logic  
							
							 
							
							
							
						 
						
							2009-10-24 04:43:11 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								03f4b4cdd6 
								
							
								 
							
						 
						
							
							
								
								vm: move binary_payload_start() method from factor_vm to object class  
							
							 
							
							
							
						 
						
							2009-10-24 04:27:45 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								29a27cfde4 
								
							
								 
							
						 
						
							
							
								
								vm: data heap compaction work in progress  
							
							 
							
							
							
						 
						
							2009-10-24 04:18:33 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								fd1e992e7d 
								
							
								 
							
						 
						
							
							
								
								vm: factor out code that visits object slots and code heap blocks into slot_visitor and code_block_visitor  
							
							 
							
							
							
						 
						
							2009-10-24 03:54:53 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								810e309e0c 
								
							
								 
							
						 
						
							
							
								
								vm: rename userenv to special_objects  
							
							 
							
							
							
						 
						
							2009-10-23 00:33:53 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								40351d40be 
								
							
								 
							
						 
						
							
							
								
								vm: use iostreams instead of printf for debug messages, clean up a few things  
							
							 
							
							
							
						 
						
							2009-10-21 20:12:57 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								814f6371d6 
								
							
								 
							
						 
						
							
							
								
								vm: mark sweep gc for tenured space work in progress  
							
							 
							
							
							
						 
						
							2009-10-20 22:20:49 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								d22d5466fc 
								
							
								 
							
						 
						
							
							
								
								vm: move factor_vm::untagged_object_size() to object::size()  
							
							 
							
							
							
						 
						
							2009-10-20 13:13:39 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								2e65366c6b 
								
							
								 
							
						 
						
							
							
								
								vm: rename myvm and parent_vm instance variables to parent, clean up casts in primitive definitions  
							
							 
							
							
							
						 
						
							2009-10-18 20:31:59 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								236588208b 
								
							
								 
							
						 
						
							
							
								
								vm: rename F to false_object, and rename T to true_object  
							
							 
							
							
							
						 
						
							2009-10-18 20:26:21 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								107c96f642 
								
							
								 
							
						 
						
							
							
								
								vm: code heap compaction at runtime using compact-gc primitive  
							
							 
							
							
							
						 
						
							2009-10-16 11:39:35 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								85b746e7b5 
								
							
								 
							
						 
						
							
							
								
								vm: simpler and more efficient code heap compaction; restructure a few things to get ready for runtime code heap compaction  
							
							 
							
							
							
						 
						
							2009-10-16 04:33:35 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								45eb68fa38 
								
							
								 
							
						 
						
							
							
								
								vm: during tenuring stage of aging collection, if tenured space fills up, it would attempt a to_tenured collection. this will succeed if all roots were tenured. however, this is unsound, because there's now an untraced segment of tenured space. fix: if tenuring fails, go on to do a full collection instead  
							
							 
							
							
							
						 
						
							2009-10-15 05:51:11 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								1796688acd 
								
							
								 
							
						 
						
							
							
								
								vm: during an aging collection, promote objects referenced from tenured directly to tenured  
							
							 
							
							
							
						 
						
							2009-10-14 06:03:52 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								a4ea6ad339 
								
							
								 
							
						 
						
							
							
								
								vm: record bytes/objects copied again  
							
							 
							
							
							
						 
						
							2009-10-09 03:20:06 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								d34c7854cd 
								
							
								 
							
						 
						
							
							
								
								vm: simplify card marking logic, and unmark more cards during aging collections by checking if they actually contained young pointers or not  
							
							 
							
							
							
						 
						
							2009-10-09 01:37:45 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								21f55ab1a3 
								
							
								 
							
						 
						
							
							
								
								vm: more efficient code heap remembered set  
							
							 
							
							
							
						 
						
							2009-10-08 23:10:32 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								6939759f46 
								
							
								 
							
						 
						
							
							
								
								vm: working on new object-oriented garbage collector  
							
							 
							
							
							
						 
						
							2009-10-07 15:48:09 -05:00