cca526df73 
								
							
								 
							
						 
						
							
							
								
								vm: support self-executing image file  
							
							
							
						 
						
							2011-11-27 12:37:54 -08:00  
				
					
						
							
							
								 
						
							
							
								139c9ca38c 
								
							
								 
							
						 
						
							
							
								
								init signals or console after stage2 init  
							
							... 
							
							
							
							A signal during early bootstrap is certainly an error, and the environment isn't there yet for Factor's signal handlers to work, so it makes no sense to install Factor's signal handlers beforehand. They'll just crash. 
							
						 
						
							2011-11-10 16:01:07 -08:00  
				
					
						
							
							
								 
						
							
							
								2d87b68a56 
								
							
								 
							
						 
						
							
							
								
								vm: sample pc on windows  
							
							
							
						 
						
							2011-11-02 21:18:31 -07:00  
				
					
						
							
							
								 
						
							
							
								8cf18d1a82 
								
							
								 
							
						 
						
							
							
								
								remove BSD,solaris,etc. misc platform support code  
							
							
							
						 
						
							2011-11-02 17:13:51 -07:00  
				
					
						
							
							
								 
						
							
							
								cdfb1b1b94 
								
							
								 
							
						 
						
							
							
								
								vm: change "profiler" names to "counting_profiler"  
							
							
							
						 
						
							2011-11-02 13:23:05 -07:00  
				
					
						
							
							
								 
						
							
							
								ca0dfc5730 
								
							
								 
							
						 
						
							
							
								
								vm: get CtrlHandler working on windows  
							
							
							
						 
						
							2011-10-27 21:18:21 -07:00  
				
					
						
							
							
								 
						
							
							
								92a5b7c300 
								
							
								 
							
						 
						
							
							
								
								vm: don't mix iostream and stdio  
							
							
							
						 
						
							2011-10-27 21:14:48 -07:00  
				
					
						
							
							
								 
						
							
							
								64252dbdbc 
								
							
								 
							
						 
						
							
							
								
								32 and 64 bit Linux PPC support  
							
							
							
						 
						
							2011-05-23 23:36:14 -04:00  
				
					
						
							
							
								 
						
							
							
								230064af3a 
								
							
								 
							
						 
						
							
							
								
								vm: increase default code heap size  
							
							
							
						 
						
							2010-09-04 12:05:23 -07:00  
				
					
						
							
							
								 
						
							
							
								570801ff3d 
								
							
								 
							
						 
						
							
							
								
								Use nano_count instead of system_micros  
							
							
							
						 
						
							2010-06-16 23:20:00 -05:00  
				
					
						
							
							
								 
						
							
							
								11deca47b4 
								
							
								 
							
						 
						
							
							
								
								quiet some data conversions warnings raised by msvc  
							
							
							
						 
						
							2010-05-05 22:22:13 -07:00  
				
					
						
							
							
								 
						
							
							
								4fb2acb65e 
								
							
								 
							
						 
						
							
							
								
								vm: try a smaller call stack size on OpenBSD again, now that x86-32 stack frames are smaller  
							
							
							
						 
						
							2010-04-10 17:26:56 -07:00  
				
					
						
							
							
								 
						
							
							
								d24ce84dde 
								
							
								 
							
						 
						
							
							
								
								vm: larger default callstack on PowerPC  
							
							
							
						 
						
							2010-04-02 14:09:58 -04:00  
				
					
						
							
							
								 
						
							
							
								279ff3a7d3 
								
							
								 
							
						 
						
							
							
								
								vm: smaller default callstack size on OpenBSD  
							
							
							
						 
						
							2010-04-02 00:36:45 -04:00  
				
					
						
							
							
								 
						
							
							
								43b2e02534 
								
							
								 
							
						 
						
							
							
								
								vm: split up TLS code and add a dummy implementation for a dummy OS known as NetBSD  
							
							
							
						 
						
							2010-03-29 02:23:21 -04:00  
				
					
						
							
							
								 
						
							
							
								fa08afdde8 
								
							
								 
							
						 
						
							
							
								
								vm: fix ridiculous default callstack size  
							
							
							
						 
						
							2010-03-27 03:35:10 -04:00  
				
					
						
							
							
								 
						
							
							
								560c119cd2 
								
							
								 
							
						 
						
							
							
								
								vm: actually use context callstacks when running code  
							
							
							
						 
						
							2010-03-26 22:44:43 -04:00  
				
					
						
							
							
								 
						
							
							
								ac979619e6 
								
							
								 
							
						 
						
							
							
								
								record the C++ compiler version in the VM, and expose it with a vm-compiler word  
							
							
							
						 
						
							2010-03-01 13:32:07 -08:00  
				
					
						
							
							
								 
						
							
							
								3259ef4bec 
								
							
								 
							
						 
						
							
							
								
								vm: modify-code-heap primitive now takes a pair of parameters, update-existing? and reset-pics?. If no generic words were changed, PICs do not need to be reset. If no existing words were redefined, the code heap doesn't have to be traced at all. Speeds up compilation of PEGs since those create lots of compilation units  
							
							
							
						 
						
							2010-02-03 23:11:28 +13:00  
				
					
						
							
							
								 
						
							
							
								e4da687413 
								
							
								 
							
						 
						
							
							
								
								vm: Tweak Factor VM to compile with Microsoft Visual Studio on Windows, in addition to Mingw. Add an Nmakefile which can be used for this purpose. Rename Makefile to GNUmakefile.  
							
							
							
						 
						
							2010-01-17 03:43:22 +13:00  
				
					
						
							
							
								 
						
							
							
								47c6197799 
								
							
								 
							
						 
						
							
							
								
								Update x86-32 for assembly entry point changes  
							
							
							
						 
						
							2010-01-06 17:55:20 +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  
				
					
						
							
							
								 
						
							
							
								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  
				
					
						
							
							
								 
						
							
							
								63edd20a55 
								
							
								 
							
						 
						
							
							
								
								vm: eliminating register variables work in progress. Works on x86-32 with non-optimizing compiler  
							
							
							
						 
						
							2009-12-19 10:59:56 +13:00  
				
					
						
							
							
								 
						
							
							
								24c3ddbbde 
								
							
								 
							
						 
						
							
							
								
								Clean up startup/shutdown hook code  
							
							
							
						 
						
							2009-11-20 00:57:49 -06:00  
				
					
						
							
							
								 
						
							
							
								6f7ec206a1 
								
							
								 
							
						 
						
							
							
								
								rename millis to system-millis, micros to system-micros, add nano-count  
							
							
							
						 
						
							2009-11-18 15:58:48 -06:00  
				
					
						
							
							
								 
						
							
							
								51e21a6aa8 
								
							
								 
							
						 
						
							
							
								
								update vm for startup branch  
							
							
							
						 
						
							2009-11-15 02:53:02 -06:00  
				
					
						
							
							
								 
						
							
							
								cc194416f9 
								
							
								 
							
						 
						
							
							
								
								Merge branch 'master' into startup  
							
							... 
							
							
							
							Conflicts:
	core/bootstrap/primitives.factor
	vm/run.hpp 
							
						 
						
							2009-11-15 02:52:50 -06:00  
				
					
						
							
							
								 
						
							
							
								72ab6ec548 
								
							
								 
							
						 
						
							
							
								
								vm: rewrite 'become' primitive so that it uses a slot visitor instead of GC  
							
							
							
						 
						
							2009-11-05 19:03:51 -06:00  
				
					
						
							
							
								 
						
							
							
								5ae40e26ee 
								
							
								 
							
						 
						
							
							
								
								vm: remove promotion strategy, clean up compaction code  
							
							
							
						 
						
							2009-11-01 03:47:09 -06:00  
				
					
						
							
							
								 
						
							
							
								5536003cf8 
								
							
								 
							
						 
						
							
							
								
								vm: new GC policy: mark sweep after N megabytes promoted, mark compact if tenured space cannot fit nursery+aging in one contiguous block. N = 32 on 32-bit and 64 on 64-bit  
							
							
							
						 
						
							2009-10-30 02:26:57 -05:00  
				
					
						
							
							
								 
						
							
							
								a1aac42786 
								
							
								 
							
						 
						
							
							
								
								vm: clean up gc events, remove -verbosegc switch, fix compaction bug  
							
							
							
						 
						
							2009-10-27 21:31:28 -05:00  
				
					
						
							
							
								 
						
							
							
								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  
				
					
						
							
							
								 
						
							
							
								7d8c85443e 
								
							
								 
							
						 
						
							
							
								
								vm: vm: fix large object allocation logic and change default heap image size for 2009  
							
							
							
						 
						
							2009-10-25 13:27:40 -05:00  
				
					
						
							
							
								 
						
							
							
								810e309e0c 
								
							
								 
							
						 
						
							
							
								
								vm: rename userenv to special_objects  
							
							
							
						 
						
							2009-10-23 00:33:53 -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  
				
					
						
							
							
								 
						
							
							
								f0816d72f1 
								
							
								 
							
						 
						
							
							
								
								vm: split off free_list_allocator from heap class, rename zone to bump_allocator  
							
							
							
						 
						
							2009-10-20 15:26:11 -05:00  
				
					
						
							
							
								 
						
							
							
								110b310c54 
								
							
								 
							
						 
						
							
							
								
								the exit primitive is now called (exit) and exit calls shutdown hooks.  
							
							... 
							
							
							
							add a stop_factor function to the vm to allow calling the shutdown quotation 
							
						 
						
							2009-10-20 00:28:18 -04:00  
				
					
						
							
							
								 
						
							
							
								ac25b8ebbb 
								
							
								 
							
						 
						
							
							
								
								vm: new mark_bits data structure replaces hashtable when compacting code heap  
							
							
							
						 
						
							2009-10-19 02:21:11 -05:00  
				
					
						
							
							
								 
						
							
							
								236588208b 
								
							
								 
							
						 
						
							
							
								
								vm: rename F to false_object, and rename T to true_object  
							
							
							
						 
						
							2009-10-18 20:26:21 -05:00  
				
					
						
							
							
								 
						
							
							
								a955a12aa7 
								
							
								 
							
						 
						
							
							
								
								vm: fix compile errors on some gcc versions  
							
							
							
						 
						
							2009-10-16 12:13:43 -05:00  
				
					
						
							
							
								 
						
							
							
								107c96f642 
								
							
								 
							
						 
						
							
							
								
								vm: code heap compaction at runtime using compact-gc primitive  
							
							
							
						 
						
							2009-10-16 11:39:35 -05:00  
				
					
						
							
							
								 
						
							
							
								697e2342d0 
								
							
								 
							
						 
						
							
							
								
								vm: put code block owner directly in the header, instead of as the first entry in the literal table. Reduces x86-64 image size by ~700kb, also eliminates separate 'strip' set of staging images from deploy tool  
							
							
							
						 
						
							2009-10-06 06:25:07 -05:00  
				
					
						
							
							
								 
						
							
							
								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  
				
					
						
							
							
								 
						
							
							
								718cb8b579 
								
							
								 
							
						 
						
							
							
								
								vm: fix VM constructor  
							
							
							
						 
						
							2009-10-05 04:31:35 -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  
				
					
						
							
							
								 
						
							
							
								435cd02200 
								
							
								 
							
						 
						
							
							
								
								keep a map of thread ids to vm pointers. use this to look up the correct VM to handle mach exceptions on os x  
							
							
							
						 
						
							2009-10-02 12:03:05 -05:00  
				
					
						
							
							
								 
						
							
							
								b4ae77764c 
								
							
								 
							
						 
						
							
							
								
								don't leak startargs in start_standalone_factor_in_new_thread  
							
							
							
						 
						
							2009-10-02 11:11:17 -05: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