Björn Lindqvist
							
						 
						
							 
							
							
							
								
							
								7661ed3b57 
								
							
								 
							
						 
						
							
							
								
								VM: replacing the copy assignment operators of the smart pointers  
							
							 
							
							... 
							
							
							
							Little more to write, but much easier to see what is going on with
methods rather than assignment operator overloading. 
							
						 
						
							2016-11-23 06:42:06 +01:00  
						
					 
				
					
						
							
							
								 
								Björn Lindqvist
							
						 
						
							 
							
							
							
								
							
								94b274490c 
								
							
								 
							
						 
						
							
							
								
								Revert "VM: undo  a8aaa42882 ( #1513 )"  
							
							 
							
							... 
							
							
							
							This reverts commit e50ef532ca . 
							
						 
						
							2016-11-12 00:19:52 +01:00  
						
					 
				
					
						
							
							
								 
								Björn Lindqvist
							
						 
						
							 
							
							
							
								
							
								e50ef532ca 
								
							
								 
							
						 
						
							
							
								
								VM: undo  a8aaa42882 ( #1513 )  
							
							 
							
							
							
						 
						
							2016-11-11 17:36:04 +01:00  
						
					 
				
					
						
							
							
								 
								Björn Lindqvist
							
						 
						
							 
							
							
							
								
							
								51408b66cb 
								
							
								 
							
						 
						
							
							
								
								VM: the jit class doesn't need to store the code block type  
							
							 
							
							
							
						 
						
							2016-10-19 09:28:59 +02:00  
						
					 
				
					
						
							
							
								 
								Alexander Iljin
							
						 
						
							 
							
							
							
								
							
								0d57734dab 
								
							
								 
							
						 
						
							
							
								
								vm: replace block comments /**/ with line comments //  
							
							 
							
							
							
						 
						
							2016-09-09 05:47:52 +02:00  
						
					 
				
					
						
							
							
								 
								Björn Lindqvist
							
						 
						
							 
							
							
							
								
							
								59443dca01 
								
							
								 
							
						 
						
							
							
								
								VM: new method quotation_jit:nth  
							
							 
							
							... 
							
							
							
							It's less tedious than writing array_nth(elements.untagged(), i + N) everywhere 
							
						 
						
							2016-05-31 03:37:24 +02:00  
						
					 
				
					
						
							
							
								 
								Björn Lindqvist
							
						 
						
							 
							
							
							
								
							
								4a471ba07c 
								
							
								 
							
						 
						
							
							
								
								VM: make it so compiling mega cache lookups doesn't generate stack frames ( #651 )  
							
							 
							
							
							
						 
						
							2016-05-30 08:23:18 +02:00  
						
					 
				
					
						
							
							
								 
								Björn Lindqvist
							
						 
						
							 
							
							
							
								
							
								3b016bc254 
								
							
								 
							
						 
						
							
							
								
								VM: a bunch of more methods on the factor_vm class that can be made into funtions  
							
							 
							
							
							
						 
						
							2016-05-30 07:44:26 +02:00  
						
					 
				
					
						
							
							
								 
								Björn Lindqvist
							
						 
						
							 
							
							
							
								
							
								00a64c9271 
								
							
								 
							
						 
						
							
							
								
								VM: name change no_non_safepoint_words_p -> stack_frame_p  
							
							 
							
							... 
							
							
							
							It returns true if the quotation should be wrapped in a stack frame. 
							
						 
						
							2016-05-30 07:44:20 +02:00  
						
					 
				
					
						
							
							
								 
								Björn Lindqvist
							
						 
						
							 
							
							
							
								
							
								1fddf79724 
								
							
								 
							
						 
						
							
							
								
								VM: moving a few methods arounds  
							
							 
							
							... 
							
							
							
							word_call, word_jump and emit_mega_cache_lookup are only used in quotations.cpp so they should be defined there too. 
							
						 
						
							2016-05-30 03:03:10 +02:00  
						
					 
				
					
						
							
							
								 
								Björn Lindqvist
							
						 
						
							 
							
							
							
								
							
								d911bc45fd 
								
							
								 
							
						 
						
							
							
								
								VM: refactors the prepare_boot_image method  
							
							 
							
							... 
							
							
							
							easier to read if the methods compile_all_words and
initialize_all_quotations which are only used once are "inlined" 
							
						 
						
							2015-12-04 13:57:57 +01:00  
						
					 
				
					
						
							
							
								 
								Björn Lindqvist
							
						 
						
							 
							
							
							
								
							
								a8aaa42882 
								
							
								 
							
						 
						
							
							
								
								VM: refactoring to use the TAG macro directly over the tagged struct  
							
							 
							
							... 
							
							
							
							eg. TAG(obj) is equivalent to tagged<object>(obj).type() 
							
						 
						
							2015-11-22 23:42:54 +01:00  
						
					 
				
					
						
							
							
								 
								Björn Lindqvist
							
						 
						
							 
							
							
							
								
							
								68c0c0f53a 
								
							
								 
							
						 
						
							
							
								
								VM: clear commented out code  
							
							 
							
							
							
						 
						
							2015-09-02 21:54:27 +02:00  
						
					 
				
					
						
							
							
								 
								Björn Lindqvist
							
						 
						
							 
							
							
							
								
							
								5d7fb5da60 
								
							
								 
							
						 
						
							
							
								
								VM: smaller style-fixes, like removing redundant else clauses and this prefixes  
							
							 
							
							
							
						 
						
							2015-08-14 20:19:55 -07:00  
						
					 
				
					
						
							
							
								 
								Björn Lindqvist
							
						 
						
							 
							
							
							
								
							
								3f9fa7e39e 
								
							
								 
							
						 
						
							
							
								
								VM: emit_prolog/emit_epilog can be simplified because stack frame and  
							
							 
							
							... 
							
							
							
							safe point is always emitted together 
							
						 
						
							2015-08-14 20:19:51 -07:00  
						
					 
				
					
						
							
							
								 
								Björn Lindqvist
							
						 
						
							 
							
							
							
								
							
								358fae93c9 
								
							
								 
							
						 
						
							
							
								
								VM: the stack_frame_p() and safepoint_p() functions appear to be  
							
							 
							
							... 
							
							
							
							semantically identical, let's merge them into a
no_non_safepoint_words_p() function 
							
						 
						
							2015-08-14 20:19:50 -07:00  
						
					 
				
					
						
							
							
								 
								Björn Lindqvist
							
						 
						
							 
							
							
							
								
							
								f5f8ce1501 
								
							
								 
							
						 
						
							
							
								
								VM: word_stack_frame_p() is not used and find_all_quotations() is  
							
							 
							
							... 
							
							
							
							trivial so those methods can be removed 
							
						 
						
							2015-08-04 16:02:09 +02:00  
						
					 
				
					
						
							
							
								 
								John Benediktsson
							
						 
						
							 
							
							
							
								
							
								b065d6172d 
								
							
								 
							
						 
						
							
							
								
								vm: rename emit_quot to emit_quotation.  
							
							 
							
							
							
						 
						
							2015-07-15 11:21:20 -07:00  
						
					 
				
					
						
							
							
								 
								John Benediktsson
							
						 
						
							 
							
							
							
								
							
								4c2c8f133f 
								
							
								 
							
						 
						
							
							
								
								vm: rename some primitives, and some cleanup.  
							
							 
							
							... 
							
							
							
							* quot-compiled? => quotation-compiled?
* optimized? => word-optimized? 
							
						 
						
							2015-07-15 11:13:52 -07:00  
						
					 
				
					
						
							
							
								 
								Björn Lindqvist
							
						 
						
							 
							
							
							
								
							
								6ca83e7588 
								
							
								 
							
						 
						
							
							
								
								Reorganising bootstrap files  
							
							 
							
							... 
							
							
							
							All the bootstrap.factor scripts in cpu/ are run by the bootstrap to
make boot images, but aren't used otherwise. So I think it's cleaner to
put them in one directory inside the bootstrap hierarchy. 
							
						 
						
							2015-05-22 12:22:24 -07:00  
						
					 
				
					
						
							
							
								 
								Björn Lindqvist
							
						 
						
							 
							
							
							
								
							
								fb9fa12cdd 
								
							
								 
							
						 
						
							
							
								
								VM: change the definition of entry_point in word and quotation from void* to cell  
							
							 
							
							... 
							
							
							
							this gets rid of lots of redundant casts from void* to cell 
							
						 
						
							2015-01-15 09:29:13 +00:00  
						
					 
				
					
						
							
							
								 
								Doug Coleman
							
						 
						
							 
							
							
							
								
							
								c675694619 
								
							
								 
							
						 
						
							
							
								
								vm: Annotate more places where we can gc.  
							
							 
							
							... 
							
							
							
							Code formatting fix. 
							
						 
						
							2014-11-29 19:25:46 -06:00  
						
					 
				
					
						
							
							
								 
								Björn Lindqvist
							
						 
						
							 
							
							
							
								
							
								60b7631e76 
								
							
								 
							
						 
						
							
							
								
								VM: fixing some implicit casts from cell to fixnum  
							
							 
							
							... 
							
							
							
							The types are compatible, but it looks a little nicer if the variable
that receives a return value declared as cell also is a cell. 
							
						 
						
							2014-07-10 07:54:07 -07:00  
						
					 
				
					
						
							
							
								 
								Doug Coleman
							
						 
						
							 
							
							
							
								
							
								19685f4528 
								
							
								 
							
						 
						
							
							
								
								vm: jit::jit is a c++ constructor but it does not allocate objects to the Factor heaps.  
							
							 
							
							... 
							
							
							
							Add annotations for gc allocating. 
							
						 
						
							2014-02-14 20:29:26 -08:00  
						
					 
				
					
						
							
							
								 
								Erik Charlebois
							
						 
						
							 
							
							
							
								
							
								ffe41b3d7f 
								
							
								 
							
						 
						
							
							
								
								VM: Fixup cast formatting after clang-format  
							
							 
							
							... 
							
							
							
							clang-format doesn't recognize casts to non-pointer/non-template types
so it winds up adding a space between the right paren and the expression
and then failing to recognize prefix operators in the process
(e.g. foo = (cell) & bar; should be foo = (cell)&bar;). This commit
manually fixes up the major cases (fixnum, cell, all types ending in _t). 
							
						 
						
							2013-05-13 14:59:24 -04:00  
						
					 
				
					
						
							
							
								 
								Erik Charlebois
							
						 
						
							 
							
							
							
								
							
								435ac636c6 
								
							
								 
							
						 
						
							
							
								
								VM: Refactor quotations.cpp/hpp to Factor style  
							
							 
							
							
							
						 
						
							2013-05-12 13:24:47 -04:00  
						
					 
				
					
						
							
							
								 
								Erik Charlebois
							
						 
						
							 
							
							
							
								
							
								ca2ea548be 
								
							
								 
							
						 
						
							
							
								
								VM: Remove exec bit from VM source files  
							
							 
							
							
							
						 
						
							2013-05-11 17:04:23 -04:00  
						
					 
				
					
						
							
							
								 
								Doug Coleman
							
						 
						
							 
							
							
							
								
							
								86649ce1c0 
								
							
								 
							
						 
						
							
							
								
								vm: More allocates comments.  
							
							 
							
							
							
						 
						
							2013-03-25 14:05:05 -07:00  
						
					 
				
					
						
							
							
								 
								Doug Coleman
							
						 
						
							 
							
							
							
								
							
								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  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								9f137c66d4 
								
							
								 
							
						 
						
							
							
								
								vm: fashion brigade  
							
							 
							
							
							
						 
						
							2011-12-21 13:25:05 -08:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								b6f323450f 
								
							
								 
							
						 
						
							
							
								
								vm: load mega cache object before popping frame  
							
							 
							
							... 
							
							
							
							Fixes  #457  harder 
							
						 
						
							2011-12-20 14:38:01 -08:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								f513894435 
								
							
								 
							
						 
						
							
							
								
								vm: unwind-native-frames is special  
							
							 
							
							... 
							
							
							
							Fixes  #457  
							
						 
						
							2011-12-19 16:54:25 -08:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								7844c66d6e 
								
							
								 
							
						 
						
							
							
								
								vm: factor out word_stack_frame_size  
							
							 
							
							
							
						 
						
							2011-12-14 09:56:49 -08:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								1911905c6b 
								
							
								 
							
						 
						
							
							
								
								vm: frame size for signal handler code blocks  
							
							 
							
							
							
						 
						
							2011-12-14 09:56:46 -08:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								4df56f31f2 
								
							
								 
							
						 
						
							
							
								
								vm: clean up baroque jit safepoint logic  
							
							 
							
							
							
						 
						
							2011-11-23 11:11:27 -08:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								0a1a252cdb 
								
							
								 
							
						 
						
							
							
								
								vm: replace assert with FACTOR_ASSERT  
							
							 
							
							... 
							
							
							
							Factor is finally a real C++ project and has a custom assert macro. Assertion failures were still getting caught as exceptions and causing failure loops. Write our own macro that calls factor::abort on failure. 
							
						 
						
							2011-11-23 11:11:26 -08:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								44b608bb22 
								
							
								 
							
						 
						
							
							
								
								vm: emit safepoints before VM compiler prologs  
							
							 
							
							... 
							
							
							
							For #379  
							
						 
						
							2011-11-23 11:11:25 -08:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								c31530caec 
								
							
								 
							
						 
						
							
							
								
								vm: strip out call-counting profiler  
							
							 
							
							... 
							
							
							
							This makes the separate "code" and "entry_point" fields in word and quotation redundant, so also remove them to reclaim an additional cell per word and quotation object, which should help with #318 . 
							
						 
						
							2011-11-10 16:01:07 -08:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								6bb46a3f1e 
								
							
								 
							
						 
						
							
							
								
								vm: always generate safepoints in jit  
							
							 
							
							... 
							
							
							
							Even if there's no stack frame we still need to safepoint before leaving the function. Fixes  #332 . 
							
						 
						
							2011-11-03 11:57:43 -07:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								d6eae2f42d 
								
							
								 
							
						 
						
							
							
								
								vm: suppress signal-handler stack frame generation  
							
							 
							
							... 
							
							
							
							This is a hack; see #295  
							
						 
						
							2011-10-27 21:18:19 -07:00  
						
					 
				
					
						
							
							
								 
								Erik Charlebois
							
						 
						
							 
							
							
							
								
							
								64252dbdbc 
								
							
								 
							
						 
						
							
							
								
								32 and 64 bit Linux PPC support  
							
							 
							
							
							
						 
						
							2011-05-23 23:36:14 -04:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								b23aac1beb 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg: open-code parameter boxing and unboxing for certain C types  
							
							 
							
							
							
						 
						
							2010-07-19 10:25:13 -04:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								cc69719147 
								
							
								 
							
						 
						
							
							
								
								vm: don't recompile lazy-jit-compile more than once  
							
							 
							
							
							
						 
						
							2010-01-20 02:48:31 +13:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								5606825e8b 
								
							
								 
							
						 
						
							
							
								
								vm: remove primitive table, non-optimizing compiler now looks up primitives with dlsym()  
							
							 
							
							
							
						 
						
							2010-01-19 20:00:33 +13:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								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  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								8d34a0f3c1 
								
							
								 
							
						 
						
							
							
								
								Store VM object in a register on x86-64  
							
							 
							
							
							
						 
						
							2010-01-11 01:20:32 +13:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								c04fef10c7 
								
							
								 
							
						 
						
							
							
								
								vm: ensure that non-optimized calls to generic words which have not yet been compiled can still work  
							
							 
							
							
							
						 
						
							2010-01-06 23:49:14 +13:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								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  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								81430947d5 
								
							
								 
							
						 
						
							
							
								
								PowerPC: fix set-callstack primitive and start updating optimizing compiler backend for recent changes  
							
							 
							
							
							
						 
						
							2009-12-28 08:08:15 -06:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								15eb8d1a0a 
								
							
								 
							
						 
						
							
							
								
								vm: remove VM_ASM_API  
							
							 
							
							
							
						 
						
							2009-12-24 01:37:24 +13:00