e8b1a06dad 
								
							
								 
							
						 
						
							
							
								
								vm: a stack underflow inside a primitive could leave a data root in an uninitialized state; if allocating the thrown underflow error triggered a GC, the GC would visit a garbage pointer  
							
							
							
						 
						
							2010-09-17 19:46:57 -07:00  
				
					
						
							
							
								 
						
							
							
								d74817cedf 
								
							
								 
							
						 
						
							
							
								
								vm: Remove signal_callstack_top nonsense  
							
							
							
						 
						
							2010-09-02 22:57:17 -05:00  
				
					
						
							
							
								 
						
							
							
								1818bcb780 
								
							
								 
							
						 
						
							
							
								
								Fix three problems discovered by running math.floats.env tests in a loop:  
							
							... 
							
							
							
							- Crash if allocating error triggers a GC from a signal/SEH handler
- Crash if GC runs with floating point traps enabled on Windows
- Floating point traps didn't prettyprint properly 
							
						 
						
							2010-09-02 22:57:14 -05:00  
				
					
						
							
							
								 
						
							
							
								b23aac1beb 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg: open-code parameter boxing and unboxing for certain C types  
							
							
							
						 
						
							2010-07-19 10:25:13 -04:00  
				
					
						
							
							
								 
						
							
							
								c7142e4281 
								
							
								 
							
						 
						
							
							
								
								threads: use context-switching primitives  
							
							
							
						 
						
							2010-03-29 20:40:17 -04:00  
				
					
						
							
							
								 
						
							
							
								8ab0d12e8d 
								
							
								 
							
						 
						
							
							
								
								vm: callstack errors were flipped  
							
							
							
						 
						
							2010-03-29 01:53:30 -04:00  
				
					
						
							
							
								 
						
							
							
								b5f7e91bdc 
								
							
								 
							
						 
						
							
							
								
								vm: report callstack overflow  
							
							
							
						 
						
							2010-03-27 07:45:11 -04:00  
				
					
						
							
							
								 
						
							
							
								11ddbc03a4 
								
							
								 
							
						 
						
							
							
								
								vm: signal handling cleanup  
							
							
							
						 
						
							2010-03-27 07:33:28 -04:00  
				
					
						
							
							
								 
						
							
							
								69bb81dab8 
								
							
								 
							
						 
						
							
							
								
								vm: clean up TLS usage  
							
							
							
						 
						
							2010-03-27 03:44:40 -04:00  
				
					
						
							
							
								 
						
							
							
								560c119cd2 
								
							
								 
							
						 
						
							
							
								
								vm: actually use context callstacks when running code  
							
							
							
						 
						
							2010-03-26 22:44:43 -04:00  
				
					
						
							
							
								 
						
							
							
								942f6e0943 
								
							
								 
							
						 
						
							
							
								
								Update Win64 support  
							
							
							
						 
						
							2010-01-25 15:39:34 +13:00  
				
					
						
							
							
								 
						
							
							
								36d2ac8921 
								
							
								 
							
						 
						
							
							
								
								vm: move c_to_factor, lazy_jit_compile_impl, throw_impl, set_callstack assembly routines into non-optimizing compiler for x86-64  
							
							
							
						 
						
							2010-01-06 15:47:36 +13:00  
				
					
						
							
							
								 
						
							
							
								63edd20a55 
								
							
								 
							
						 
						
							
							
								
								vm: eliminating register variables work in progress. Works on x86-32 with non-optimizing compiler  
							
							
							
						 
						
							2009-12-19 10:59:56 +13:00  
				
					
						
							
							
								 
						
							
							
								ed3ab1335e 
								
							
								 
							
						 
						
							
							
								
								vm: minor fixes after code review  
							
							
							
						 
						
							2009-11-03 04:56:58 -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  
				
					
						
							
							
								 
						
							
							
								810e309e0c 
								
							
								 
							
						 
						
							
							
								
								vm: rename userenv to special_objects  
							
							
							
						 
						
							2009-10-23 00:33:53 -05:00  
				
					
						
							
							
								 
						
							
							
								3394309659 
								
							
								 
							
						 
						
							
							
								
								Merge branch 'master' into new_gc  
							
							
							
						 
						
							2009-10-22 05:40:57 -05:00  
				
					
						
							
							
								 
						
							
							
								432d4f79e9 
								
							
								 
							
						 
						
							
							
								
								give better error message for windows exceptions, and don't lop off the top end of the exception code when the vm throws the error  
							
							
							
						 
						
							2009-10-21 23:37:51 -05:00  
				
					
						
							
							
								 
						
							
							
								40351d40be 
								
							
								 
							
						 
						
							
							
								
								vm: use iostreams instead of printf for debug messages, clean up a few things  
							
							
							
						 
						
							2009-10-21 20:12:57 -05:00  
				
					
						
							
							
								 
						
							
							
								236588208b 
								
							
								 
							
						 
						
							
							
								
								vm: rename F to false_object, and rename T to true_object  
							
							
							
						 
						
							2009-10-18 20:26:21 -05:00  
				
					
						
							
							
								 
						
							
							
								107c96f642 
								
							
								 
							
						 
						
							
							
								
								vm: code heap compaction at runtime using compact-gc primitive  
							
							
							
						 
						
							2009-10-16 11:39:35 -05:00  
				
					
						
							
							
								 
						
							
							
								7fef05fd76 
								
							
								 
							
						 
						
							
							
								
								Removed VM_PTR macros. All builds reentrant by default  
							
							
							
						 
						
							2009-10-14 19:14:57 +01:00  
				
					
						
							
							
								 
						
							
							
								5c774d8c84 
								
							
								 
							
						 
						
							
							
								
								vm: more code cleanups  
							
							
							
						 
						
							2009-10-07 08:33:54 -05:00  
				
					
						
							
							
								 
						
							
							
								ed1ee19ce1 
								
							
								 
							
						 
						
							
							
								
								vm: add a remembered set for code blocks which may reference young literals. Improves loading time  
							
							
							
						 
						
							2009-10-06 04:36:34 -05:00  
				
					
						
							
							
								 
						
							
							
								9b7412b8f8 
								
							
								 
							
						 
						
							
							
								
								Moved PRIMITIVE and PRIMITIVE_FORWARDs to primitives.[ch]pp  
							
							
							
						 
						
							2009-09-27 19:42:18 +01:00  
				
					
						
							
							
								 
						
							
							
								6b7717bf37 
								
							
								 
							
						 
						
							
							
								
								forwarding functions replaced with PRIMITIVE_FORWARD() macro  
							
							
							
						 
						
							2009-09-25 20:43:01 +01:00  
				
					
						
							
							
								 
						
							
							
								83b0769eef 
								
							
								 
							
						 
						
							
							
								
								renamed factorvm to factor_vm  
							
							
							
						 
						
							2009-09-24 08:16:52 +01:00  
				
					
						
							
							
								 
						
							
							
								e566656e46 
								
							
								 
							
						 
						
							
							
								
								removed a bunch of superflous blank lines  
							
							
							
						 
						
							2009-09-24 08:02:14 +01:00  
				
					
						
							
							
								 
						
							
							
								e3ac531fdb 
								
							
								 
							
						 
						
							
							
								
								renamed vmprim_ to primitive_  
							
							
							
						 
						
							2009-09-24 08:02:13 +01:00  
				
					
						
							
							
								 
						
							
							
								e8d1612e8e 
								
							
								 
							
						 
						
							
							
								
								Split data out into separate vm-data struct  
							
							
							
						 
						
							2009-09-16 08:22:16 +01:00  
				
					
						
							
							
								 
						
							
							
								b07550620f 
								
							
								 
							
						 
						
							
							
								
								Dev checkpoint  
							
							
							
						 
						
							2009-09-16 08:20:51 +01:00  
				
					
						
							
							
								 
						
							
							
								3a3154797c 
								
							
								 
							
						 
						
							
							
								
								fixed stupid signal handler bug  
							
							
							
						 
						
							2009-09-16 08:20:50 +01:00  
				
					
						
							
							
								 
						
							
							
								3345922330 
								
							
								 
							
						 
						
							
							
								
								quick test vocab for mt stuff  
							
							
							
						 
						
							2009-09-16 08:20:50 +01:00  
				
					
						
							
							
								 
						
							
							
								784b8d16ae 
								
							
								 
							
						 
						
							
							
								
								moved utility functions and fatal_error out of vm struct since doesn't need state  
							
							
							
						 
						
							2009-09-16 08:20:10 +01:00  
				
					
						
							
							
								 
						
							
							
								9cac5e8aa9 
								
							
								 
							
						 
						
							
							
								
								added lookup_vm and removed last usage of vm from windows code  
							
							
							
						 
						
							2009-09-16 08:20:09 +01:00  
				
					
						
							
							
								 
						
							
							
								20ef4200fb 
								
							
								 
							
						 
						
							
							
								
								removed some error vm-> functions  
							
							
							
						 
						
							2009-09-16 08:17:27 +01:00  
				
					
						
							
							
								 
						
							
							
								465f06ebc2 
								
							
								 
							
						 
						
							
							
								
								throw_impl now forwards the vm ptr  
							
							
							
						 
						
							2009-09-16 08:16:30 +01:00  
				
					
						
							
							
								 
						
							
							
								d3b5321b6e 
								
							
								 
							
						 
						
							
							
								
								removed some global functions from errors.cpp  
							
							
							
						 
						
							2009-09-16 08:16:29 +01:00  
				
					
						
							
							
								 
						
							
							
								10901e7c37 
								
							
								 
							
						 
						
							
							
								
								moved errors.cpp functions to vm  
							
							
							
						 
						
							2009-09-16 08:16:18 +01:00  
				
					
						
							
							
								 
						
							
							
								fb43ae2daf 
								
							
								 
							
						 
						
							
							
								
								save the FP status out of the signal context and use it as part of the fp trap factor exception. clear the FP status before continuing after an exception  
							
							
							
						 
						
							2009-09-13 23:39:12 -05:00  
				
					
						
							
							
								 
						
							
							
								9ccf5811b3 
								
							
								 
							
						 
						
							
							
								
								vm: fix fp_trap_error() so that it can work properly in signal handlers  
							
							
							
						 
						
							2009-09-12 18:15:16 -05:00  
				
					
						
							
							
								 
						
							
							
								2ad9459b85 
								
							
								 
							
						 
						
							
							
								
								Merge branch 'master' of git://factorcode.org/git/factor  
							
							
							
						 
						
							2009-09-08 15:37:32 -05:00  
				
					
						
							
							
								 
						
							
							
								81c4670619 
								
							
								 
							
						 
						
							
							
								
								VM: use an std::vector instead of a fixed-size buffer for GC roots  
							
							
							
						 
						
							2009-09-08 14:21:09 -05:00  
				
					
						
							
							
								 
						
							
							
								7ba71a524e 
								
							
								 
							
						 
						
							
							
								
								Send FP trap signals to Factor as a different vm-error type  
							
							
							
						 
						
							2009-09-06 08:44:25 -05: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  
				
					
						
							
							
								 
						
							
							
								53db9d737a 
								
							
								 
							
						 
						
							
							
								
								Change (void) to ()  
							
							
							
						 
						
							2009-05-05 11:33:35 -05:00  
				
					
						
							
							
								 
						
							
							
								2bfde0250e 
								
							
								 
							
						 
						
							
							
								
								Fixing some build issues on Linux with GCC 4.3  
							
							
							
						 
						
							2009-05-04 08:00:06 -04: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