1386212d23 
								
							
								 
							
						 
						
							
							
								
								vm: dispatch signal handlers through subprimitive  
							
							... 
							
							
							
							We also need to save C ABI volatile registers before calling the signal handler in order to be able to reliably resume. Add signal-handler and leaf-signal-handler subprimitives to preserve volatile registers before invoking the signal handler C function. 
							
						 
						
							2011-10-27 21:18:18 -07:00  
				
					
						
							
							
								 
						
							
							
								26872ffe4d 
								
							
								 
							
						 
						
							
							
								
								Rename vocab to lookup-vocab  
							
							
							
						 
						
							2011-10-24 06:42:54 -05:00  
				
					
						
							
							
								 
						
							
							
								d1f5fefab0 
								
							
								 
							
						 
						
							
							
								
								Cleanup some uses of global [ ] bind.  
							
							
							
						 
						
							2011-10-19 11:01:16 -07:00  
				
					
						
							
							
								 
						
							
							
								80e1c8e3f2 
								
							
								 
							
						 
						
							
							
								
								Eliminate duplicate syntax for stack effects "(" no longer drops and is identical to the old "((", which is now removed.  
							
							
							
						 
						
							2011-10-18 13:19:39 -07:00  
				
					
						
							
							
								 
						
							
							
								3588e6e4dc 
								
							
								 
							
						 
						
							
							
								
								io.streams.c: help-lint  
							
							
							
						 
						
							2011-10-17 21:23:08 -07:00  
				
					
						
							
							
								 
						
							
							
								5a072c57a6 
								
							
								 
							
						 
						
							
							
								
								bootstrap, io.streams.c: use new fread primitive  
							
							... 
							
							
							
							Change the fread primitive to fread-unsafe, matching the new primitive in the VM, and update the implementation of c-reader to implement stream-read-unsafe and stream-read in terms of fread-unsafe 
							
						 
						
							2011-10-17 21:22:58 -07:00  
				
					
						
							
							
								 
						
							
							
								afc07c0e05 
								
							
								 
							
						 
						
							
							
								
								io.binary: make le> and be> faster (20% and 75%, respectively).  
							
							... 
							
							
							
							Removed primitive byte-array>bignum and digit_stream_to_bignum from vm/. 
							
						 
						
							2011-10-11 21:13:30 -07:00  
				
					
						
							
							
								 
						
							
							
								bf2a96e9e0 
								
							
								 
							
						 
						
							
							
								
								Remove Windows CE from core/ basis/ and build-support/  
							
							... 
							
							
							
							Rename the winnt singleton to windows in core/ basis/ extra/
Rename boot images winnt -> windows
Fixes  #84 . 
							
						 
						
							2011-09-18 23:19:06 -05:00  
				
					
						
							
							
								 
						
							
							
								ed9cf9e4fd 
								
							
								 
							
						 
						
							
							
								
								Move some primitives from memory and memory.private to tools.memory.private, add data-heap and code-heap words that wrap the struct for you  
							
							
							
						 
						
							2011-09-05 16:47:29 -07:00  
				
					
						
							
							
								 
						
							
							
								64252dbdbc 
								
							
								 
							
						 
						
							
							
								
								32 and 64 bit Linux PPC support  
							
							
							
						 
						
							2011-05-23 23:36:14 -04:00  
				
					
						
							
							
								 
						
							
							
								f27080498d 
								
							
								 
							
						 
						
							
							
								
								Remove bignum>float VM primitive, and use bignum/f to implement >float on bignums instead, for a slight accuracy gain. Also, bignum/f now has a more efficient post-scaling algorithm to break the circular dependency on bignum>float  
							
							
							
						 
						
							2010-11-24 22:41:15 -08:00  
				
					
						
							
							
								 
						
							
							
								d2cf2d8f92 
								
							
								 
							
						 
						
							
							
								
								Rename get-fpu-state entry point to fpu-state, and fix stack-checker unit tests  
							
							
							
						 
						
							2010-09-04 12:58:59 -07: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  
				
					
						
							
							
								 
						
							
							
								d2dd184d58 
								
							
								 
							
						 
						
							
							
								
								Officially drop PowerPC port  
							
							
							
						 
						
							2010-08-15 20:10:11 -07:00  
				
					
						
							
							
								 
						
							
							
								1985705413 
								
							
								 
							
						 
						
							
							
								
								compiler: now that FFI has been deconcatenatized, we no longer need the special ##unary-float-function and ##binary-float-function fastpaths  
							
							
							
						 
						
							2010-08-13 23:59:19 -07:00  
				
					
						
							
							
								 
						
							
							
								5ae75af6a8 
								
							
								 
							
						 
						
							
							
								
								Clarify documentation for resize-array, resize-byte-array, resize-string words, and remove flushable declaration since technically they don't satisfy the flushable contract (reported by Daniel Ehrenberg)  
							
							
							
						 
						
							2010-06-22 15:48:48 -04:00  
				
					
						
							
							
								 
						
							
							
								e8d528ad93 
								
							
								 
							
						 
						
							
							
								
								Remove system_micros from vm, implement gmt hook on windows  
							
							
							
						 
						
							2010-06-16 23:39:16 -05:00  
				
					
						
							
							
								 
						
							
							
								a9ccfa8f05 
								
							
								 
							
						 
						
							
							
								
								strings: move string-nth primitive out of the VM and into the library  
							
							
							
						 
						
							2010-05-03 17:34:12 -04:00  
				
					
						
							
							
								 
						
							
							
								366ce2896f 
								
							
								 
							
						 
						
							
							
								
								Add callstack-bounds primitive to vm/ for use with javascriptcore library  
							
							
							
						 
						
							2010-04-19 20:08:15 -05:00  
				
					
						
							
							
								 
						
							
							
								288090d993 
								
							
								 
							
						 
						
							
							
								
								math.parser: expose a format-float primitive for use by formatting vocabulary  
							
							
							
						 
						
							2010-04-13 21:21:28 -07:00  
				
					
						
							
							
								 
						
							
							
								74640b7f71 
								
							
								 
							
						 
						
							
							
								
								Get green threads working on Windows  
							
							... 
							
							
							
							- store stack base and limit in TIB
- set up a frame-based structured exception handler in each context's callstack
- boot.x86.32.image has now been replaced by boot.winnt-x86.32.image and boot.unix-x86.32.image 
							
						 
						
							2010-04-03 20:24:33 -04:00  
				
					
						
							
							
								 
						
							
							
								0faa3bcf4a 
								
							
								 
							
						 
						
							
							
								
								vm: pre-allocate context alien  
							
							
							
						 
						
							2010-04-02 00:02:21 -04:00  
				
					
						
							
							
								 
						
							
							
								fb2ecab614 
								
							
								 
							
						 
						
							
							
								
								threads: delete old contexts immediately instead of handing them off to a 'context recycler' thread  
							
							
							
						 
						
							2010-03-30 21:47:48 -04:00  
				
					
						
							
							
								 
						
							
							
								c7142e4281 
								
							
								 
							
						 
						
							
							
								
								threads: use context-switching primitives  
							
							
							
						 
						
							2010-03-29 20:40:17 -04:00  
				
					
						
							
							
								 
						
							
							
								b6dfdcb909 
								
							
								 
							
						 
						
							
							
								
								set-context and start-context primitives can now pass parameters around  
							
							
							
						 
						
							2010-03-27 08:13:57 -04:00  
				
					
						
							
							
								 
						
							
							
								1717b8d0f7 
								
							
								 
							
						 
						
							
							
								
								Implement start-context and set-context primitives  
							
							
							
						 
						
							2010-03-27 02:56:11 -04:00  
				
					
						
							
							
								 
						
							
							
								560c119cd2 
								
							
								 
							
						 
						
							
							
								
								vm: actually use context callstacks when running code  
							
							
							
						 
						
							2010-03-26 22:44:43 -04:00  
				
					
						
							
							
								 
						
							
							
								6aee6b3adc 
								
							
								 
							
						 
						
							
							
								
								Add context-specific special object table, generalizing catchstack_save and current_callback_save fields of context struct  
							
							
							
						 
						
							2010-03-18 22:06:00 +13:00  
				
					
						
							
							
								 
						
							
							
								6bf709429b 
								
							
								 
							
						 
						
							
							
								
								fix effect of <tuple-boa> primitive  
							
							
							
						 
						
							2010-03-09 22:38:41 -08:00  
				
					
						
							
							
								 
						
							
							
								af0ddd5985 
								
							
								 
							
						 
						
							
							
								
								Specialized arrays, structs and other objects responding to the >c-ptr / byte-length protocol can now be written to binary streams  
							
							
							
						 
						
							2010-02-24 20:18:41 +13:00  
				
					
						
							
							
								 
						
							
							
								747974f4ae 
								
							
								 
							
						 
						
							
							
								
								vm: nuke unused (string>float) primitive  
							
							
							
						 
						
							2010-02-08 08:16:56 +13:00  
				
					
						
							
							
								 
						
							
							
								26cae00eeb 
								
							
								 
							
						 
						
							
							
								
								Add code heap introspection primitive to VM, and make a code-blocks word in tools.memory that wraps a useful interface around this. Add a lookup-return-address word and use this in tools.disassembler.utils  
							
							
							
						 
						
							2010-02-03 23:11:32 +13: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  
				
					
						
							
							
								 
						
							
							
								e929d906ce 
								
							
								 
							
						 
						
							
							
								
								classes: If a tuple class with subclasses is redefined into something that's not a tuple class, subclasses are changed to inherit from 'tuple' instead of being forgotten. Also, changing the metaclass of a union or intersection member no longer removes it from the union or intersection. Finally, make some internal words private  
							
							
							
						 
						
							2010-02-01 02:48:39 +13:00  
				
					
						
							
							
								 
						
							
							
								e6d1388dcc 
								
							
								 
							
						 
						
							
							
								
								Clean up class algebra a bit, and change mixins to recompile less, taking advantage of new semantics  
							
							
							
						 
						
							2010-01-30 09:28:52 +13:00  
				
					
						
							
							
								 
						
							
							
								6cdf4de4eb 
								
							
								 
							
						 
						
							
							
								
								Fix and clean up stage1 bootstrap  
							
							
							
						 
						
							2010-01-28 17:30:35 +13:00  
				
					
						
							
							
								 
						
							
							
								d215c108f3 
								
							
								 
							
						 
						
							
							
								
								core: fix bad interaction between stage1 bootstrap and manifest update code  
							
							
							
						 
						
							2010-01-28 03:02:54 +13:00  
				
					
						
							
							
								 
						
							
							
								bb2f455747 
								
							
								 
							
						 
						
							
							
								
								Save images to a temporary file first, then call MOVE_FILE to avoid writing incomplete and truncated images.  
							
							
							
						 
						
							2010-01-22 12:59:20 -06:00  
				
					
						
							
							
								 
						
							
							
								00328c85e0 
								
							
								 
							
						 
						
							
							
								
								vm: remove vm-ptr primitive  
							
							
							
						 
						
							2010-01-20 17:06:49 +13:00  
				
					
						
							
							
								 
						
							
							
								5606825e8b 
								
							
								 
							
						 
						
							
							
								
								vm: remove primitive table, non-optimizing compiler now looks up primitives with dlsym()  
							
							
							
						 
						
							2010-01-19 20:00:33 +13:00  
				
					
						
							
							
								 
						
							
							
								637a77c018 
								
							
								 
							
						 
						
							
							
								
								Stop wearing monocle and use the term "entry point" instead of "XT" throughout VM and compiler; also remove two unused relocation types  
							
							
							
						 
						
							2010-01-18 20:54:00 +13:00  
				
					
						
							
							
								 
						
							
							
								1c10196c43 
								
							
								 
							
						 
						
							
							
								
								Rename kernel.private:getenv/setenv to special-object/set-special-object to mirror recent renaming on the VM side  
							
							
							
						 
						
							2010-01-13 18:08:18 +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  
				
					
						
							
							
								 
						
							
							
								819e46f42b 
								
							
								 
							
						 
						
							
							
								
								kernel: fix stack effect declarations of call-clear and set-callstack, and add a unit test for call-clear  
							
							
							
						 
						
							2009-12-26 15:38:01 +13:00  
				
					
						
							
							
								 
						
							
							
								08cd0df788 
								
							
								 
							
						 
						
							
							
								
								primitives.factor: move call-clear into kernel.private since its unsafe  
							
							
							
						 
						
							2009-12-26 15:27:39 +13:00  
				
					
						
							
							
								 
						
							
							
								0068bce934 
								
							
								 
							
						 
						
							
							
								
								vm: big overhaul of non-optimizing compiler  
							
							... 
							
							
							
							- change some primitives into sub-primitives: fixnum+ fixnum- fixnum* inline-cache-miss inline-cache-miss-tail
- rename some relocation types for clarity
- some other minor re-organizations and cleanups 
							
						 
						
							2009-12-15 07:20:09 -05:00  
				
					
						
							
							
								 
						
							
							
								adcb0df0c4 
								
							
								 
							
						 
						
							
							
								
								fix stack effects for nanosseconds, update io backends for nanos  
							
							
							
						 
						
							2009-11-19 04:51:47 -06:00  
				
					
						
							
							
								 
						
							
							
								6f7ec206a1 
								
							
								 
							
						 
						
							
							
								
								rename millis to system-millis, micros to system-micros, add nano-count  
							
							
							
						 
						
							2009-11-18 15:58:48 -06:00  
				
					
						
							
							
								 
						
							
							
								b4206f5252 
								
							
								 
							
						 
						
							
							
								
								initial commit to nanos branch to replace micros  
							
							
							
						 
						
							2009-11-18 04:20:05 -06:00