000efd9bbb 
								
							
								 
							
						 
						
							
							
								
								vm: Add messages about things that can allocate. Fix a gc bug in the primitive for quotation-code.  
							
							
							
						 
						
							2012-08-15 21:30:55 -07:00  
				
					
						
							
							
								 
						
							
							
								e5dd21b0b9 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg: nuke ##allot-byte-array instruction  
							
							
							
						 
						
							2010-07-16 19:57:45 -04:00  
				
					
						
							
							
								 
						
							
							
								806e54630a 
								
							
								 
							
						 
						
							
							
								
								GC maps for more compact inline GC checks  
							
							
							
						 
						
							2010-06-11 20:06:00 -04:00  
				
					
						
							
							
								 
						
							
							
								5b48cd2a63 
								
							
								 
							
						 
						
							
							
								
								FFI rewrite part 5: return value boxing and callback parameter boxing now uses vregs; simplify return value unboxing  
							
							
							
						 
						
							2010-05-16 03:43:23 -04:00  
				
					
						
							
							
								 
						
							
							
								2c8f67851e 
								
							
								 
							
						 
						
							
							
								
								vm: fix GC safety issue in callers of unbox_array_size(), and change how disable-gc-events works so that it doesn't make a byte array that's too large  
							
							
							
						 
						
							2009-11-11 05:21:03 -06:00  
				
					
						
							
							
								 
						
							
							
								6c2c87758a 
								
							
								 
							
						 
						
							
							
								
								vm: rename gc_root to data_root, add code_root to fix a problem where code blocks would move underneath the PIC compiler if PIC compiler allocated enough  
							
							
							
						 
						
							2009-11-02 18:10:34 -06:00  
				
					
						
							
							
								 
						
							
							
								a1aac42786 
								
							
								 
							
						 
						
							
							
								
								vm: clean up gc events, remove -verbosegc switch, fix compaction bug  
							
							
							
						 
						
							2009-10-27 21:31:28 -05:00  
				
					
						
							
							
								 
						
							
							
								d95a98eb9c 
								
							
								 
							
						 
						
							
							
								
								vm: add primitives for getting at GC events, data-room and code-room primitives now return structs instead of arrays  
							
							
							
						 
						
							2009-10-27 03:32:28 -05:00  
				
					
						
							
							
								 
						
							
							
								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  
				
					
						
							
							
								 
						
							
							
								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  
				
					
						
							
							
								 
						
							
							
								3a88d8c49e 
								
							
								 
							
						 
						
							
							
								
								inlineimpl.hpp is toast  
							
							
							
						 
						
							2009-09-29 19:53:10 +01:00  
				
					
						
							
							
								 
						
							
							
								9b7412b8f8 
								
							
								 
							
						 
						
							
							
								
								Moved PRIMITIVE and PRIMITIVE_FORWARDs to primitives.[ch]pp  
							
							
							
						 
						
							2009-09-27 19:42:18 +01:00  
				
					
						
							
							
								 
						
							
							
								e566656e46 
								
							
								 
							
						 
						
							
							
								
								removed a bunch of superflous blank lines  
							
							
							
						 
						
							2009-09-24 08:02:14 +01:00  
				
					
						
							
							
								 
						
							
							
								10bf5ca17c 
								
							
								 
							
						 
						
							
							
								
								removed global functions from byte_arrays.cpp and tuples.cpp  
							
							
							
						 
						
							2009-09-16 08:16:27 +01:00  
				
					
						
							
							
								 
						
							
							
								a249b484c4 
								
							
								 
							
						 
						
							
							
								
								moved byte_arrays.hpp inline functions to vm.hpp  
							
							
							
						 
						
							2009-09-16 08:16:23 +01:00  
				
					
						
							
							
								 
						
							
							
								a2f14b5a6d 
								
							
								 
							
						 
						
							
							
								
								added vm member to gc_root and growable arrays  
							
							
							
						 
						
							2009-09-16 08:16:22 +01:00  
				
					
						
							
							
								 
						
							
							
								230061783a 
								
							
								 
							
						 
						
							
							
								
								misc small documentation fixes, some fixes for factor.vim, changed permissions of vm/* to 644  
							
							
							
						 
						
							2009-08-10 21:33:07 +02:00  
				
					
						
							
							
								 
						
							
							
								69cb3dee5e 
								
							
								 
							
						 
						
							
							
								
								Fix FEP if there are too many words in the image, clean up some VM code  
							
							
							
						 
						
							2009-05-13 00:58:54 -05:00  
				
					
						
							
							
								 
						
							
							
								8872c40b1e 
								
							
								 
							
						 
						
							
							
								
								The great type renaming  
							
							
							
						 
						
							2009-05-04 04:50:24 -05:00  
				
					
						
							
							
								 
						
							
							
								edecac508e 
								
							
								 
							
						 
						
							
							
								
								Use C++ namespaces  
							
							
							
						 
						
							2009-05-04 01:46:13 -05:00  
				
					
						
							
							
								 
						
							
							
								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  
				
					
						
							
							
								 
						
							
							
								e3592ca8f6 
								
							
								 
							
						 
						
							
							
								
								Clean up untag_* and tag_* inline functions in favor of more idiomatic C++  
							
							
							
						 
						
							2009-05-02 20:47:29 -05:00  
				
					
						
							
							
								 
						
							
							
								b923d548cf 
								
							
								 
							
						 
						
							
							
								
								Move vmpp to vm  
							
							
							
						 
						
							2009-05-02 20:37:18 -05:00