Daniel Ehrenberg
							
						 
						
							 
							
							
							
								
							
								0d055060ad 
								
							
								 
							
						 
						
							
							
								
								Bug fix in method inlining  
							
							 
							
							
							
						 
						
							2010-05-04 16:46:39 -05:00  
						
					 
				
					
						
							
							
								 
								Daniel Ehrenberg
							
						 
						
							 
							
							
							
								
							
								23e78b8380 
								
							
								 
							
						 
						
							
							
								
								Removing hack with >fixnum, now subsumed by a more general optimization  
							
							 
							
							
							
						 
						
							2010-05-04 16:46:39 -05:00  
						
					 
				
					
						
							
							
								 
								Daniel Ehrenberg
							
						 
						
							 
							
							
							
								
							
								0f0b56f1ef 
								
							
								 
							
						 
						
							
							
								
								Adding dependency checking and proper handing of dispatch# to the new method inlining  
							
							 
							
							
							
						 
						
							2010-05-04 16:46:38 -05:00  
						
					 
				
					
						
							
							
								 
								Daniel Ehrenberg
							
						 
						
							 
							
							
							
								
							
								f1d7a4e663 
								
							
								 
							
						 
						
							
							
								
								Improving method inlining change, but there's still a bug  
							
							 
							
							
							
						 
						
							2010-05-04 16:46:08 -05:00  
						
					 
				
					
						
							
							
								 
								Daniel Ehrenberg
							
						 
						
							 
							
							
							
								
							
								19a44d65df 
								
							
								 
							
						 
						
							
							
								
								Changes to compiler.tree.propagation.inlining  
							
							 
							
							
							
						 
						
							2010-05-04 16:46:08 -05:00  
						
					 
				
					
						
							
							
								 
								Daniel Ehrenberg
							
						 
						
							 
							
							
							
								
							
								3ed4a82475 
								
							
								 
							
						 
						
							
							
								
								Fixing another bug in the method inlining improvement  
							
							 
							
							
							
						 
						
							2010-05-04 16:46:08 -05:00  
						
					 
				
					
						
							
							
								 
								Daniel Ehrenberg
							
						 
						
							 
							
							
							
								
							
								416707f327 
								
							
								 
							
						 
						
							
							
								
								Fixing optimization for improved method inlining  
							
							 
							
							
							
						 
						
							2010-05-04 16:46:07 -05:00  
						
					 
				
					
						
							
							
								 
								Daniel Ehrenberg
							
						 
						
							 
							
							
							
								
							
								02bd3d7142 
								
							
								 
							
						 
						
							
							
								
								splitting generic word callsites when only one method is applicable  
							
							 
							
							
							
						 
						
							2010-05-04 16:46:07 -05:00  
						
					 
				
					
						
							
							
								 
								Daniel Ehrenberg
							
						 
						
							 
							
							
							
								
							
								750a96935f 
								
							
								 
							
						 
						
							
							
								
								instance? optimizes null checks  
							
							 
							
							
							
						 
						
							2010-05-04 16:46:07 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								0fbf454b18 
								
							
								 
							
						 
						
							
							
								
								compiler.tree.propagation: fix both-fixnums? trick  
							
							 
							
							
							
						 
						
							2010-05-03 17:34:30 -04:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								428ba9fd0f 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg: fuse ##load-integer/##load-reference into ##replace to form ##replace-imm  
							
							 
							
							
							
						 
						
							2010-05-03 17:34:28 -04:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								4d749c9dfe 
								
							
								 
							
						 
						
							
							
								
								compiler.tree.propagation: fix tests  
							
							 
							
							
							
						 
						
							2010-05-03 17:34:14 -04:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								a9ccfa8f05 
								
							
								 
							
						 
						
							
							
								
								strings: move string-nth primitive out of the VM and into the library  
							
							 
							
							
							
						 
						
							2010-05-03 17:34:12 -04:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								d143aa64b2 
								
							
								 
							
						 
						
							
							
								
								compiler.tree.propagation.transforms: open-code >fixnum when input is already a fixnum or f  
							
							 
							
							
							
						 
						
							2010-04-19 01:14:00 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								2517b2fc2b 
								
							
								 
							
						 
						
							
							
								
								compiler: combine ##load-constant followed by ##alien-double into a ##load-double on x86-32, saving an integer register  
							
							 
							
							
							
						 
						
							2010-04-18 21:42:45 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								bc9241d2b7 
								
							
								 
							
						 
						
							
							
								
								compiler.tree.propagation.recursive: more fine-grained generalize-counter-interval eliminates overflow checks from binary-search  
							
							 
							
							
							
						 
						
							2010-04-18 21:42:45 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								bd4e920995 
								
							
								 
							
						 
						
							
							
								
								compiler.tree.propagation: fix scalability issue with constraints  
							
							 
							
							
							
						 
						
							2010-04-14 17:19:26 -07:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								e6a15c0b33 
								
							
								 
							
						 
						
							
							
								
								compiler.tree.propagation: don't constant-fold boa constructors of identity-tuple subclasses  
							
							 
							
							
							
						 
						
							2010-03-26 22:44:56 -04:00  
						
					 
				
					
						
							
							
								 
								Daniel Ehrenberg
							
						 
						
							 
							
							
							
								
							
								512fe14e4e 
								
							
								 
							
						 
						
							
							
								
								Merge branch 'bags' of git://github.com/littledan/Factor  
							
							 
							
							... 
							
							
							
							Conflicts:
	basis/compiler/cfg/ssa/construction/tdmsc/tdmsc.factor
	basis/furnace/auth/auth.factor
	basis/stack-checker/backend/backend.factor 
							
						 
						
							2010-03-16 13:28:00 -04:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								f24a74f66c 
								
							
								 
							
						 
						
							
							
								
								Merge branch 'master' into row-polymorphism  
							
							 
							
							
							
						 
						
							2010-03-10 11:48:41 -08:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								7744559a46 
								
							
								 
							
						 
						
							
							
								
								compiler.tree.propagation: clean up  
							
							 
							
							
							
						 
						
							2010-03-10 15:15:49 +13:00  
						
					 
				
					
						
							
							
								 
								Daniel Ehrenberg
							
						 
						
							 
							
							
							
								
							
								8e227bc874 
								
							
								 
							
						 
						
							
							
								
								Propagation tracks length just like any other read-only slot  
							
							 
							
							
							
						 
						
							2010-03-09 15:58:44 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								bcbc7632c6 
								
							
								 
							
						 
						
							
							
								
								fix stack effects in compiler tests  
							
							 
							
							
							
						 
						
							2010-03-08 23:46:20 -08:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								191ac353fd 
								
							
								 
							
						 
						
							
							
								
								generalize stack effects so we can bootstrap with the stricter stack effect checking  
							
							 
							
							
							
						 
						
							2010-03-08 23:38:10 -08:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								a3033e885a 
								
							
								 
							
						 
						
							
							
								
								make effect variables part of effect syntax, stored out of band in effect tuple  
							
							 
							
							
							
						 
						
							2010-03-05 13:30:10 -08:00  
						
					 
				
					
						
							
							
								 
								Daniel Ehrenberg
							
						 
						
							 
							
							
							
								
							
								434605c0b5 
								
							
								 
							
						 
						
							
							
								
								Changing some uses of prune to use members  
							
							 
							
							
							
						 
						
							2010-02-27 13:14:03 -05:00  
						
					 
				
					
						
							
							
								 
								Daniel Ehrenberg
							
						 
						
							 
							
							
							
								
							
								7074979745 
								
							
								 
							
						 
						
							
							
								
								Moving new-sets to sets  
							
							 
							
							
							
						 
						
							2010-02-26 16:01:01 -05:00  
						
					 
				
					
						
							
							
								 
								Daniel Ehrenberg
							
						 
						
							 
							
							
							
								
							
								73a990a4b8 
								
							
								 
							
						 
						
							
							
								
								Making it fast to create a new hashset  
							
							 
							
							
							
						 
						
							2010-02-26 13:24:26 -05:00  
						
					 
				
					
						
							
							
								 
								Daniel Ehrenberg
							
						 
						
							 
							
							
							
								
							
								b76c82048d 
								
							
								 
							
						 
						
							
							
								
								Making propagation and tuple.parser refer to new-sets; adding some missing features from sets into new-sets  
							
							 
							
							
							
						 
						
							2010-02-26 12:07:37 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								ae25cfe712 
								
							
								 
							
						 
						
							
							
								
								Get foldable and flushable declarations working on typed words  
							
							 
							
							
							
						 
						
							2010-02-24 00:16:55 +13:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								6501480a0e 
								
							
								 
							
						 
						
							
							
								
								Fix two problems with recompilation: predicate constant folding was recording unsatisfied dependencies in some cases, and literal tuple instances of forgotten classes would cause problems for method inlining  
							
							 
							
							
							
						 
						
							2010-02-20 12:01:47 +13:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								b963d56aac 
								
							
								 
							
						 
						
							
							
								
								compiler.tree.escape-analysis: fix bug that comes up when inheritance is used  
							
							 
							
							
							
						 
						
							2010-02-16 14:44:13 +13:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								64a37d2db6 
								
							
								 
							
						 
						
							
							
								
								compiler.tree.propagation.transforms: tweak 2^ transform to fix performance regression in benchmark.beust2; introduced by  47d6507548 
							
							 
							
							
							
						 
						
							2010-02-16 01:03:09 +13:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								a118f208dc 
								
							
								 
							
						 
						
							
							
								
								compiler.tree.propagation, compiler.tree.escape-analysis: make these passes handle constants in a more robust way in compilation units involving tuple reshaping  
							
							 
							
							
							
						 
						
							2010-02-12 02:50:59 +13:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								57ba1aff60 
								
							
								 
							
						 
						
							
							
								
								compiler.tree.propagation.inlining: remove some unused words  
							
							 
							
							
							
						 
						
							2010-02-11 16:29:48 +13:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								662eba7a67 
								
							
								 
							
						 
						
							
							
								
								compiler.tree.propagation.call-effect: hack so that call( doesn't clear the last error  
							
							 
							
							
							
						 
						
							2010-02-03 23:11:33 +13:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								7de81976a5 
								
							
								 
							
						 
						
							
							
								
								Revert "macros: macro body is now defined in its own subword, for compile-time stack effect checking"  
							
							 
							
							... 
							
							
							
							This reverts commit 24de7c52f0c3f21cfcdb80235cac7296b0401c85. 
							
						 
						
							2010-02-03 23:11:29 +13:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								55a89ec9c2 
								
							
								 
							
						 
						
							
							
								
								Better error message for call( when quotation has the wrong effect  
							
							 
							
							
							
						 
						
							2010-02-03 23:11:25 +13:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								df55fed478 
								
							
								 
							
						 
						
							
							
								
								generic: rename method-body predicate class to method  
							
							 
							
							
							
						 
						
							2010-02-03 23:11:24 +13:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								b7fde7af27 
								
							
								 
							
						 
						
							
							
								
								macros: macro body is now defined in its own subword, for compile-time stack effect checking  
							
							 
							
							
							
						 
						
							2010-02-03 23:11:22 +13:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								5ed0bc72aa 
								
							
								 
							
						 
						
							
							
								
								Merge git://github.com/littledan/Factor into littledan  
							
							 
							
							
							
						 
						
							2010-01-31 02:54:58 +13:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								6cc68e889e 
								
							
								 
							
						 
						
							
							
								
								stack-checker.dependencies: add tuple layout dependencies for use by 'new' and 'boa'  
							
							 
							
							
							
						 
						
							2010-01-30 09:29:00 +13:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								09ead56652 
								
							
								 
							
						 
						
							
							
								
								Re-work flushed dependencies into new compiler cross-referencing framework  
							
							 
							
							
							
						 
						
							2010-01-30 09:29:00 +13:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								c058343167 
								
							
								 
							
						 
						
							
							
								
								Add some utility words to stack-checker.dependencies in preparation for a refactoring  
							
							 
							
							
							
						 
						
							2010-01-30 09:28:59 +13:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								26f311279c 
								
							
								 
							
						 
						
							
							
								
								Re-defining a tuple class now invalidates cached quotation stack effects  
							
							 
							
							
							
						 
						
							2010-01-30 09:28:59 +13:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								c027046857 
								
							
								 
							
						 
						
							
							
								
								New 'conditional dependency' mechanism for more accurate recording of recompilation information  
							
							 
							
							
							
						 
						
							2010-01-30 09:28:57 +13:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								817bc02392 
								
							
								 
							
						 
						
							
							
								
								compiler.tree.propagation.call-effect: clear out dependency tracking variables to ensure that infer calls made by call( as part of the compile process doesn't pollute the dependencies of the word being compiled  
							
							 
							
							
							
						 
						
							2010-01-30 09:28:57 +13:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								ab428fc259 
								
							
								 
							
						 
						
							
							
								
								Code cleanups  
							
							 
							
							
							
						 
						
							2010-01-30 09:28:56 +13:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								f031a97084 
								
							
								 
							
						 
						
							
							
								
								Work in progress: record constant-folds of predicate words, and call-next-method invocations, in the same way that method inlining are recorded, for greater recompilation accuracy  
							
							 
							
							
							
						 
						
							2010-01-30 09:28:56 +13:00  
						
					 
				
					
						
							
							
								 
								Daniel Ehrenberg
							
						 
						
							 
							
							
							
								
							
								52f2ac2bb9 
								
							
								 
							
						 
						
							
							
								
								Tests for propagation additions; making fixnum-bit? inline  
							
							 
							
							
							
						 
						
							2010-01-25 20:15:17 -06:00  
						
					 
				
					
						
							
							
								 
								Daniel Ehrenberg
							
						 
						
							 
							
							
							
								
							
								d3590ea210 
								
							
								 
							
						 
						
							
							
								
								Merge branch 'master' of git://factorcode.org/git/factor  
							
							 
							
							... 
							
							
							
							Conflicts:
	basis/compiler/tree/propagation/transforms/transforms.factor 
							
						 
						
							2010-01-20 00:15:55 -06:00  
						
					 
				
					
						
							
							
								 
								Daniel Ehrenberg
							
						 
						
							 
							
							
							
								
							
								aa1651032d 
								
							
								 
							
						 
						
							
							
								
								Adding compiler transforms in propagation  
							
							 
							
							
							
						 
						
							2010-01-20 00:10:49 -06:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								9a222a4163 
								
							
								 
							
						 
						
							
							
								
								compiler.tree.propagation.call-effect: eliminate some dispatch from call( expansion  
							
							 
							
							
							
						 
						
							2010-01-19 21:08:45 +13:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								ac800e2396 
								
							
								 
							
						 
						
							
							
								
								compiler.tree.escape-analysis: make tests a bit more robust; a change to boa constructors recently meant dead curries were showing up on certain expansions, this was throwing off the escape-analysis test's unboxed allocation counting. Fix this by having the test run DCE first, and remove a few tests that no longer make sense now  
							
							 
							
							
							
						 
						
							2010-01-18 23:32:34 +13:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								3b5f7a9ecf 
								
							
								 
							
						 
						
							
							
								
								compiler.tree.propagation: ensure that we don't call 'equal?' or 'hashcode' on literals in words being compiled  
							
							 
							
							
							
						 
						
							2010-01-16 20:00:48 +13:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								df4fb4a3ee 
								
							
								 
							
						 
						
							
							
								
								Removing integers-as-sequences  
							
							 
							
							
							
						 
						
							2010-01-15 07:15:33 +13:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								50d68c1b10 
								
							
								 
							
						 
						
							
							
								
								Fix input-classes of /i and mod, and add some regression tests with various reductions of the original test-case from the terrain demo  
							
							 
							
							
							
						 
						
							2010-01-14 18:15:51 +13:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								47a5e96547 
								
							
								 
							
						 
						
							
							
								
								Rework min and max so that behavior with floats and NaNs is consistent between generic arithmetic and open-coded float intrinsics  
							
							 
							
							
							
						 
						
							2010-01-13 22:20:16 +13:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								235f3238f5 
								
							
								 
							
						 
						
							
							
								
								Add alien-assembly form for inline assembler, works like alien-invoke except calls a user-supplied quotation instead of generating a subroutine call. Replaces FPU status control, SSE detection and read timestamp routines in vm/cpu-x86.*S  
							
							 
							
							
							
						 
						
							2010-01-07 17:39:22 +13:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								44a604fdbe 
								
							
								 
							
						 
						
							
							
								
								compiler.tree: remove some code duplication concerning #alien nodes  
							
							 
							
							
							
						 
						
							2010-01-07 16:06:07 +13:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								104c29aabc 
								
							
								 
							
						 
						
							
							
								
								simd intrinsic implementation for v*high, v*hs+, vavg, and vsad  
							
							 
							
							
							
						 
						
							2009-12-05 14:52:18 -08:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								67cc1c01be 
								
							
								 
							
						 
						
							
							
								
								Merge branch 'master' into simd-cleanup  
							
							 
							
							
							
						 
						
							2009-11-26 16:14:46 -08:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								66d0cafa94 
								
							
								 
							
						 
						
							
							
								
								fix buggy simd intrinsics  
							
							 
							
							
							
						 
						
							2009-11-26 13:28:40 -08:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								65d8060075 
								
							
								 
							
						 
						
							
							
								
								fix simd intrinsic compilation  
							
							 
							
							
							
						 
						
							2009-11-24 11:37:28 -08:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								d94ffe6d78 
								
							
								 
							
						 
						
							
							
								
								scalar fallbacks for simd intrinsics  
							
							 
							
							
							
						 
						
							2009-11-23 21:24:55 -08:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								152b0d2df5 
								
							
								 
							
						 
						
							
							
								
								break simd intrinsics into a separate vocab so they can be intrinsified before the simd methods compile  
							
							 
							
							
							
						 
						
							2009-11-19 11:53:46 -08:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								0612bc6177 
								
							
								 
							
						 
						
							
							
								
								Factor source files should not be executable  
							
							 
							
							
							
						 
						
							2009-11-21 17:50:43 -06:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								361c38d5a1 
								
							
								 
							
						 
						
							
							
								
								heap-size now has a partial-eval instead of being foldable, and the partial-eval adds a dependency on the C type word. Fixes problem where redefining a struct didn't update specialized array  
							
							 
							
							
							
						 
						
							2009-11-15 11:26:37 -06:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								f544982fda 
								
							
								 
							
						 
						
							
							
								
								Merge branch 'master' of git://factorcode.org/git/factor into simd-cleanup  
							
							 
							
							... 
							
							
							
							Conflicts:
	basis/math/vectors/simd/functor/functor.factor 
							
						 
						
							2009-11-14 21:02:39 -06:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								8a8699ac98 
								
							
								 
							
						 
						
							
							
								
								backend fixups  
							
							 
							
							
							
						 
						
							2009-11-14 20:59:03 -06:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								7377c96a21 
								
							
								 
							
						 
						
							
							
								
								compiler.tree.propagation.branches: fix recent constraints change  
							
							 
							
							
							
						 
						
							2009-11-13 07:16:41 -06:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								afecb9c758 
								
							
								 
							
						 
						
							
							
								
								Fixing call( inline caching  
							
							 
							
							
							
						 
						
							2009-11-13 04:32:33 -06:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								86da8ebed9 
								
							
								 
							
						 
						
							
							
								
								Instead of bumping the definition counter every time in the VM, bump it only if stack effects changed or macros were redefined  
							
							 
							
							
							
						 
						
							2009-11-13 03:52:14 -06:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								720c412431 
								
							
								 
							
						 
						
							
							
								
								compiler.tree.propagation: fix bug in constraints that caused retain stack overflow  
							
							 
							
							
							
						 
						
							2009-11-13 03:22:57 -06:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								ff25aaef54 
								
							
								 
							
						 
						
							
							
								
								compiler.tree.propagation.transforms: inline push if types are known. Speeds up reverse-complement, sort, sum-file benchmarks  
							
							 
							
							
							
						 
						
							2009-11-12 17:24:32 -06:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								7afea4c0ea 
								
							
								 
							
						 
						
							
							
								
								compiler.tree.propagation: implementing missing case in branch constraints  
							
							 
							
							
							
						 
						
							2009-11-12 17:24:11 -06:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								cba12eae37 
								
							
								 
							
						 
						
							
							
								
								Invalidate inline caches used by call( and execute( when words are redefined  
							
							 
							
							
							
						 
						
							2009-11-12 16:09:07 -06:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								064c00f78d 
								
							
								 
							
						 
						
							
							
								
								New identity-hashcode primitive  
							
							 
							
							
							
						 
						
							2009-11-10 21:18:54 -06:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								473cc7db4a 
								
							
								 
							
						 
						
							
							
								
								stack-checker: tighten some screws in error reporting  
							
							 
							
							
							
						 
						
							2009-11-09 00:17:24 -06:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								cd2e226afa 
								
							
								 
							
						 
						
							
							
								
								stack-checker: split off stack-checker.dependencies from stack-checker.state  
							
							 
							
							
							
						 
						
							2009-11-08 20:34:46 -06:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								8894e9047c 
								
							
								 
							
						 
						
							
							
								
								Merge branch 'master' into simd-cleanup  
							
							 
							
							
							
						 
						
							2009-11-07 22:26:09 -06:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								00ce8b6a33 
								
							
								 
							
						 
						
							
							
								
								deprimitivize tuck and put it to pasture  
							
							 
							
							
							
						 
						
							2009-11-05 22:47:05 -06:00  
						
					 
				
					
						
							
							
								 
								Daniel Ehrenberg
							
						 
						
							 
							
							
							
								
							
								d2fe75276e 
								
							
								 
							
						 
						
							
							
								
								custom inlining for diff and intersect, when given a literal sequence. this cuts off 1/3 of the running time of a microbenchmark  
							
							 
							
							
							
						 
						
							2009-11-05 13:13:27 -06:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								75d04922b9 
								
							
								 
							
						 
						
							
							
								
								Merge branch 'master' into simd-cleanup  
							
							 
							
							... 
							
							
							
							Conflicts:
	basis/math/vectors/simd/functor/functor.factor 
							
						 
						
							2009-11-05 11:27:08 -06:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								42493b9778 
								
							
								 
							
						 
						
							
							
								
								update compiler.tree.propagation.simd, and don't load it till math.vectors.simd is loaded  
							
							 
							
							
							
						 
						
							2009-11-02 15:09:16 -06:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								e4ad642134 
								
							
								 
							
						 
						
							
							
								
								vm: 4 bit tags, new representation of alien objects makes unbox-any-c-ptr more efficient (work in progress)  
							
							 
							
							
							
						 
						
							2009-11-02 04:25:54 -06:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								3f15e028f7 
								
							
								 
							
						 
						
							
							
								
								exile roll and -roll to basis/shuffle and mark them deprecated  
							
							 
							
							
							
						 
						
							2009-10-30 17:11:45 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								3fbe722561 
								
							
								 
							
						 
						
							
							
								
								Merge branch 'master' of  http://factorcode.org/git/factor  
							
							 
							
							... 
							
							
							
							Conflicts:
	basis/locals/locals.factor
	basis/peg/peg.factor
	extra/infix/infix.factor 
							
						 
						
							2009-10-28 16:17:24 -05:00  
						
					 
				
					
						
							
							
								 
								Doug Coleman
							
						 
						
							 
							
							
							
								
							
								bd13e018dd 
								
							
								 
							
						 
						
							
							
								
								memq? -> member-eq?, sorted-memq? -> sorted-member-eq?  
							
							 
							
							
							
						 
						
							2009-10-28 15:02:00 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								299b5b0f6c 
								
							
								 
							
						 
						
							
							
								
								filter-here -> filter!  
							
							 
							
							
							
						 
						
							2009-10-28 00:44:05 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								935c0797c3 
								
							
								 
							
						 
						
							
							
								
								update existing code for [let change  
							
							 
							
							
							
						 
						
							2009-10-27 22:05:37 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								d17ef38007 
								
							
								 
							
						 
						
							
							
								
								update compiler.tree.cleanup test  
							
							 
							
							
							
						 
						
							2009-10-26 23:01:35 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								0c431f1222 
								
							
								 
							
						 
						
							
							
								
								compiler.tree.propagation: fix broken corner cases in bitand and shift transforms, exposed by Hugh Aguilar's LC53 benchmark  
							
							 
							
							
							
						 
						
							2009-10-24 01:09:32 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								e46259bd33 
								
							
								 
							
						 
						
							
							
								
								compiler.tree.propagation.transforms: fix problem with 'shift' transform when input was a bignum  
							
							 
							
							
							
						 
						
							2009-10-23 07:50:56 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								2d5cdd19ec 
								
							
								 
							
						 
						
							
							
								
								compiler: on PPC, ANDI, ORI and XORI instructions take an unsigned 16-bit immediate, unlike ADDI, SUBI and MULLI which take a signed 16-bit immediate. The code generator was not aware of this, and so for example '[ >fixnum -16 bitand ]' would generate incorrect code. Split up small-enough? hook into immediate-arithmetic? and immediate-bitwise? and update value numbering to be aware of this. Fixes classes.struct bitfields test failure  
							
							 
							
							
							
						 
						
							2009-10-19 04:58:29 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								d9002127fa 
								
							
								 
							
						 
						
							
							
								
								have vshuffle accept simd-128 variable byte shuffles  
							
							 
							
							
							
						 
						
							2009-10-10 11:30:11 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								366c341c5f 
								
							
								 
							
						 
						
							
							
								
								compiler.tree.propagation.branches: fix live-branches computation for #dispatch nodes  
							
							 
							
							
							
						 
						
							2009-10-10 00:23:50 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								471c86a110 
								
							
								 
							
						 
						
							
							
								
								generate better code for vabs when instruction isn't available instead of using software fallback (-0.0 andn for floats, x > 0 ? x : -x for signed ints, nop for unsigned ints)  
							
							 
							
							
							
						 
						
							2009-10-09 14:24:55 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								01f5d392be 
								
							
								 
							
						 
						
							
							
								
								implement vneg as an intrinsic in terms of load -0, subtract  
							
							 
							
							
							
						 
						
							2009-10-09 13:16:39 -05:00  
						
					 
				
					
						
							
							
								 
								Daniel Ehrenberg
							
						 
						
							 
							
							
							
								
							
								bb93543054 
								
							
								 
							
						 
						
							
							
								
								Another identity in value numbering for bitfields  
							
							 
							
							
							
						 
						
							2009-10-08 15:20:42 -05:00  
						
					 
				
					
						
							
							
								 
								Daniel Ehrenberg
							
						 
						
							 
							
							
							
								
							
								eb31589092 
								
							
								 
							
						 
						
							
							
								
								Adding identity to propagation to remove some redundant bitands  
							
							 
							
							
							
						 
						
							2009-10-08 00:59:15 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								785f8620fd 
								
							
								 
							
						 
						
							
							
								
								glue conversion intrinsics to instructions  
							
							 
							
							
							
						 
						
							2009-10-06 20:13:38 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								fbe810fc3b 
								
							
								 
							
						 
						
							
							
								
								rename SIMD vmerge and kids to (vmerge), make new vmerge more generally useful  
							
							 
							
							
							
						 
						
							2009-10-05 17:55:39 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								0c9c3d4859 
								
							
								 
							
						 
						
							
							
								
								add %merge-vector-head and %merge-vector-tail instructions to back vmerge  
							
							 
							
							
							
						 
						
							2009-10-03 21:48:53 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								04bb03bb61 
								
							
								 
							
						 
						
							
							
								
								add intrinsics for v<=, v<, v=, v>, v>=, vunordered?  
							
							 
							
							
							
						 
						
							2009-10-03 11:29:34 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								38f413a8a6 
								
							
								 
							
						 
						
							
							
								
								add intrinsic for vnot/vbitnot  
							
							 
							
							
							
						 
						
							2009-10-02 20:04:28 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								aa3392e50f 
								
							
								 
							
						 
						
							
							
								
								implement vand, vor, vandn, and vxor as bitwise intrinsics for simd types  
							
							 
							
							
							
						 
						
							2009-10-02 14:17:01 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								d14f150b58 
								
							
								 
							
						 
						
							
							
								
								%test-vector instruction for vany?, vall?, vnone?  
							
							 
							
							
							
						 
						
							2009-10-01 15:35:38 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								987ced4070 
								
							
								 
							
						 
						
							
							
								
								%compare-vector instruction (only does v= for now)  
							
							 
							
							
							
						 
						
							2009-10-01 14:31:37 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								a93f8f66f9 
								
							
								 
							
						 
						
							
							
								
								Revert "add a %blend-vector intrinsic for v?"  
							
							 
							
							... 
							
							
							
							This reverts commit 21e4b28b67 . 
							
						 
						
							2009-09-30 23:40:37 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								7db7b63552 
								
							
								 
							
						 
						
							
							
								
								add a %blend-vector intrinsic for v?  
							
							 
							
							
							
						 
						
							2009-09-30 23:03:59 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								80e84a357d 
								
							
								 
							
						 
						
							
							
								
								math.vectors.simd: add vbroadcast intrinsic, fix integer overflow issues  
							
							 
							
							
							
						 
						
							2009-09-29 22:58:20 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								f395d83379 
								
							
								 
							
						 
						
							
							
								
								math.vectors.simd: add fast intrinsic for 'nth', replace broadcast primitive with shuffles  
							
							 
							
							
							
						 
						
							2009-09-29 04:48:11 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								e40a95c1e1 
								
							
								 
							
						 
						
							
							
								
								math.vectors.simd: add vshuffle intrinsic  
							
							 
							
							
							
						 
						
							2009-09-28 23:12:13 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								530accdad9 
								
							
								 
							
						 
						
							
							
								
								io.mmap: fix obsolete tests and get code to inline better  
							
							 
							
							
							
						 
						
							2009-09-28 03:18:27 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								b2ea3afd84 
								
							
								 
							
						 
						
							
							
								
								math.vectors.simd: add hlshift, hrshift (128-bit shift), vbitandn intrinsics  
							
							 
							
							
							
						 
						
							2009-09-28 02:17:46 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								bbbb207dab 
								
							
								 
							
						 
						
							
							
								
								Some fixes and cleanups in math.vectors  
							
							 
							
							... 
							
							
							
							- Tighten up type inference for operations on complex float arrays
- Fix v. to have correct behavior with complex numbers
- Rename v<< and v>> to vlshift and vrshift to avoid clashing with v>> accessor 
							
						 
						
							2009-09-24 06:58:33 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								7ea8832556 
								
							
								 
							
						 
						
							
							
								
								Tweaks to reduce deployed image size  
							
							 
							
							
							
						 
						
							2009-09-24 06:24:43 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								7b6128dd03 
								
							
								 
							
						 
						
							
							
								
								math.vectors.simd: add v<< and v>> intrinsics for bitwise shifts on elements  
							
							 
							
							
							
						 
						
							2009-09-24 03:32:39 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								43fa252af5 
								
							
								 
							
						 
						
							
							
								
								math.vectors.simd: new operations: vabs vsqrt vbitand vbitor vbitxor  
							
							 
							
							
							
						 
						
							2009-09-23 02:47:14 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								d23826906f 
								
							
								 
							
						 
						
							
							
								
								Merge branch 'master' into integer-simd  
							
							 
							
							
							
						 
						
							2009-09-22 20:21:40 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								7cfc63af51 
								
							
								 
							
						 
						
							
							
								
								compiler.tree.propagation.branches: M: #phi propagate-around was unnecessary  
							
							 
							
							
							
						 
						
							2009-09-22 17:56:50 -05:00  
						
					 
				
					
						
							
							
								 
								Daniel Ehrenberg
							
						 
						
							 
							
							
							
								
							
								45ba559ce4 
								
							
								 
							
						 
						
							
							
								
								Merge branch 'master' of git://factorcode.org/git/factor into constraints  
							
							 
							
							
							
						 
						
							2009-09-22 16:09:33 -05:00  
						
					 
				
					
						
							
							
								 
								Daniel Ehrenberg
							
						 
						
							 
							
							
							
								
							
								6e936bdb05 
								
							
								 
							
						 
						
							
							
								
								Fixing failing unit tests in compiler.tree.propagation due to constraints  
							
							 
							
							
							
						 
						
							2009-09-22 16:01:14 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								0f0bf667b5 
								
							
								 
							
						 
						
							
							
								
								Merge branch 'master' of git://factorcode.org/git/factor into integer-simd  
							
							 
							
							
							
						 
						
							2009-09-21 17:58:24 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								962d039852 
								
							
								 
							
						 
						
							
							
								
								Rename specific-method to method-for-class, rename (effective-method) to method-for-object, and make both much faster  
							
							 
							
							
							
						 
						
							2009-09-21 17:42:20 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								ea44ea3522 
								
							
								 
							
						 
						
							
							
								
								math.vectors.simd: add saturated arithmetic operations  
							
							 
							
							
							
						 
						
							2009-09-20 23:16:02 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								acea55c692 
								
							
								 
							
						 
						
							
							
								
								math.vectors: add v+- word which is accelerated by SSE3  
							
							 
							
							
							
						 
						
							2009-09-20 17:43:16 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								47d8763340 
								
							
								 
							
						 
						
							
							
								
								More integer SIMD work  
							
							 
							
							... 
							
							
							
							- move generated vocab support from specialized-arrays to vocabs.generated
- add fuzz testing to math.vectors.simd
- add alien type support for integer SIMD vectors
- SIMD: parsing word generates a SIMD type, instead of pre-generating them all in math.vectors.simd 
							
						 
						
							2009-09-20 16:48:17 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								01d2ef415a 
								
							
								 
							
						 
						
							
							
								
								get compiler tests loading  
							
							 
							
							
							
						 
						
							2009-09-16 09:20:47 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								172219e931 
								
							
								 
							
						 
						
							
							
								
								compiler.tree.propagation: fix unary-op type functions with complex number inputs  
							
							 
							
							
							
						 
						
							2009-09-15 14:30:20 -07:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								32b95c2cdf 
								
							
								 
							
						 
						
							
							
								
								math: add unordered comparison operators u< u<= u> u>= which behave exactly like < <= > >= except no floating point exceptions are set if one or both inputs are NaNs; also add efficient intrinsic for unordered? predicate, and fix propagation type functions for abs, absq, and bitnot  
							
							 
							
							
							
						 
						
							2009-09-12 22:20:13 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								dd661edf46 
								
							
								 
							
						 
						
							
							
								
								compiler.tree.propagation: convert /i of a positive integer by a power of two into a shift  
							
							 
							
							
							
						 
						
							2009-09-11 21:03:11 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								7f2e2b1777 
								
							
								 
							
						 
						
							
							
								
								Specialized array overhaul  
							
							 
							
							... 
							
							
							
							- Replace hand-written specialized-arrays.* subvocabularies with new system; instead of USE:ing specialized-arrays.T, do SPECIALIZED-ARRAY: T
- Ditto for specialized-vectors; use SPECIALIZED-VECTOR:
- io.mmap.functor: removed entirely, use <mapped-array> instead
- struct-arrays and struct-vectors have been removed because specialized arrays and vectors subsume them entirely 
							
						 
						
							2009-09-09 22:33:34 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								a0e1af5891 
								
							
								 
							
						 
						
							
							
								
								Merge branch 'master' of git://factorcode.org/git/factor  
							
							 
							
							
							
						 
						
							2009-09-08 14:22:52 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								1e5bc3b376 
								
							
								 
							
						 
						
							
							
								
								inline alien-vector and set-alien-vector if SIMD is not available for a small speedup  
							
							 
							
							
							
						 
						
							2009-09-08 13:56:17 -05:00  
						
					 
				
					
						
							
							
								 
								Doug Coleman
							
						 
						
							 
							
							
							
								
							
								942fb7b048 
								
							
								 
							
						 
						
							
							
								
								Merge branch 'master' of git://factorcode.org/git/factor  
							
							 
							
							
							
						 
						
							2009-09-08 13:22:52 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								bbca00e2ae 
								
							
								 
							
						 
						
							
							
								
								Fix conflicts  
							
							 
							
							
							
						 
						
							2009-09-07 23:51:25 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								9f9b6bca01 
								
							
								 
							
						 
						
							
							
								
								compiler.tree.propagation: type check inputs to unsafe foldable words manually, so that stuff like [ "Hi" { } fixnum+fast ] doesn't crash in the compiler  
							
							 
							
							
							
						 
						
							2009-09-07 23:40:23 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								a1ae209f81 
								
							
								 
							
						 
						
							
							
								
								compiler.tree.propagation.call-effect: stronger call( inlining; now can inline 'a [ b ] curry call(' where 'a' is literal, [ b ] doesn't infer, but [ a b ] does infer. This simplifies classes.struct:memory>struct  
							
							 
							
							
							
						 
						
							2009-09-07 17:45:03 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								e36a0d7ef4 
								
							
								 
							
						 
						
							
							
								
								compiler: clean up code generation for alien boxing/unboxing a bit  
							
							 
							
							
							
						 
						
							2009-09-03 21:22:43 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								4d5a4222b6 
								
							
								 
							
						 
						
							
							
								
								More SIMD work  
							
							 
							
							... 
							
							
							
							- Rename SIMD types and register representations: <type>-<count> rather than <count><type>-array
- Make a functor to define 256-bit vector types, use it to define float-8 type
- Make SIMD instructions pure-insns so that they participate in value numbering 
							
						 
						
							2009-09-03 20:58:56 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								bf81cb4259 
								
							
								 
							
						 
						
							
							
								
								math.vectors.simd: split off intrinsics into a sub-vocabulary, to avoid loading most of the SIMD code on bootstrap  
							
							 
							
							
							
						 
						
							2009-09-03 03:43:43 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								ae051e0c9a 
								
							
								 
							
						 
						
							
							
								
								compiler.tree.propagation: type function for clone had an issue, sometimes clone would get optimized out because of incorrect constant folding  
							
							 
							
							
							
						 
						
							2009-09-03 02:40:18 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								ff8c70dbe0 
								
							
								 
							
						 
						
							
							
								
								Initial implementation of SSE vector intrinsics:  
							
							 
							
							... 
							
							
							
							- cpu.architecture: add SSE vector representations
- compiler.cfg.intrinsics.alien: remove an attempt at optimization that value numbering handles now
- compiler.cfg.representations: support instructions where the representation is set in the 'rep' slot, and support conversions between single and double floats
- alien-float, set-alien-float now use the single float representation, and the conversion is implicit; this fixes a long-standing bug where a register could get clobbered because of how %set-alien-float was defined on x86
- math.vectors.specialization: add support for SIMD specialization (where the vector word's body is replaced by another quotation), also specialize the 'sum' word
- math.vectors.simd: 4float-array, 2double-array, 4double-array types, and specializers for the math.vectors words 
							
						 
						
							2009-09-03 02:33:07 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								2bb6293217 
								
							
								 
							
						 
						
							
							
								
								compiler: add fixnum-min/max intrinsics; ~10% speedup on benchmark.yuv-to-rgb  
							
							 
							
							
							
						 
						
							2009-08-28 19:02:59 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								d957ae4e44 
								
							
								 
							
						 
						
							
							
								
								Performance improvements to make struct-arrays benchmark faster  
							
							 
							
							... 
							
							
							
							- improved optimization of ##unbox-any-c-ptr on ##box-displaced-alien; convert it to ##unbox-c-ptr where possible using class info stored in the ##bda instruction
- make fcos, fsin, etc inline again; everything in math.libm inline again, except for fsqrt which is an intrinsic
- convert min and max on floats to float-min and float-max
- make min and max not inline, so that the above can work
- struct-arrays: rice a bit so that more fixnums come up 
							
						 
						
							2009-08-28 05:21:16 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								ba0f3a9911 
								
							
								 
							
						 
						
							
							
								
								compiler.tree.propagation.transforms: don't fail to compile if 'at' called on something that's not an assoc  
							
							 
							
							
							
						 
						
							2009-08-27 18:57:56 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								0df8aadce2 
								
							
								 
							
						 
						
							
							
								
								cpu.x86: use SQRTSD instruction for math.libm:fsqrt word  
							
							 
							
							
							
						 
						
							2009-08-25 23:22:15 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								49bd2228ec 
								
							
								 
							
						 
						
							
							
								
								compiler.tree.modular-arithmetic: fix regression; set-alien-*-1 was not always open-coded  
							
							 
							
							
							
						 
						
							2009-08-20 17:56:49 -05:00