Slava Pestov
							
						 
						
							 
							
							
							
								
							
								248f178e64 
								
							
								 
							
						 
						
							
							
								
								math.vectors: fix behavioral difference between generic vector vmin vmax and float specialized versions thereof  
							
							 
							
							
							
						 
						
							2009-10-20 07:06:44 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								b212e8edd0 
								
							
								 
							
						 
						
							
							
								
								inline trilerp so that perlin-noise is pretty much instantaneous  
							
							 
							
							
							
						 
						
							2009-10-19 15:11:59 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								b411f1701a 
								
							
								 
							
						 
						
							
							
								
								make vshuffle-bytes intrinsic for any shuffle mask type  
							
							 
							
							
							
						 
						
							2009-10-19 12:25:55 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								fca550d567 
								
							
								 
							
						 
						
							
							
								
								math.vectors.conversion docs  
							
							 
							
							
							
						 
						
							2009-10-18 21:25:09 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								2a156795c5 
								
							
								 
							
						 
						
							
							
								
								update vshuffle docs  
							
							 
							
							
							
						 
						
							2009-10-18 16:34:44 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								0653bae7ec 
								
							
								 
							
						 
						
							
							
								
								scuttle bogus math.vectors.simd test  
							
							 
							
							
							
						 
						
							2009-10-17 18:47:31 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								b9d2c068a4 
								
							
								 
							
						 
						
							
							
								
								fix sporadic "fall-through in cond" failure in float math.vectors.simd tests  
							
							 
							
							
							
						 
						
							2009-10-17 16:54:51 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								421b61f0e8 
								
							
								 
							
						 
						
							
							
								
								fix type propagation information put on non-SIMD specializations of vany?, vall?, vnone?  
							
							 
							
							
							
						 
						
							2009-10-17 11:21:08 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								7f001ee312 
								
							
								 
							
						 
						
							
							
								
								make hlshift/hrshift simd tests endian agnostic  
							
							 
							
							
							
						 
						
							2009-10-17 00:34:35 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								4ed91ff5ee 
								
							
								 
							
						 
						
							
							
								
								syntax: fix docs for :  
							
							 
							
							
							
						 
						
							2009-10-16 23:45:10 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								dd6308ead5 
								
							
								 
							
						 
						
							
							
								
								improve error reporting of failing simd fallbacks  
							
							 
							
							
							
						 
						
							2009-10-16 16:34:26 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								448ef2f1d5 
								
							
								 
							
						 
						
							
							
								
								fix unsigned vector unpack  
							
							 
							
							
							
						 
						
							2009-10-16 14:25:33 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								48f4799505 
								
							
								 
							
						 
						
							
							
								
								math.vectors.simd: fix typos in docs reported by Ed Swartz  
							
							 
							
							
							
						 
						
							2009-10-13 05:13:22 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								588899a1b3 
								
							
								 
							
						 
						
							
							
								
								fix fallbacks for vall?, vany?, vnone?  
							
							 
							
							
							
						 
						
							2009-10-10 13:01:13 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								1407804393 
								
							
								 
							
						 
						
							
							
								
								change the simd-struct tests to cover integer vector slots  
							
							 
							
							
							
						 
						
							2009-10-10 12:23:25 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								d9002127fa 
								
							
								 
							
						 
						
							
							
								
								have vshuffle accept simd-128 variable byte shuffles  
							
							 
							
							
							
						 
						
							2009-10-10 11:30:11 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								3bc097f6ff 
								
							
								 
							
						 
						
							
							
								
								rename ##shuffle-vector to ##shuffle-vector-imm, and add a new ##shuffle-vector for dynamic shuffles. have vshuffle use ##shuffle-vector to do word and byte shuffles on x86  
							
							 
							
							
							
						 
						
							2009-10-09 21:26:27 -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  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								07aa2620c6 
								
							
								 
							
						 
						
							
							
								
								add SIMDS: ... ; and SPECIALIZED-ARRAYS: ... ; syntax  
							
							 
							
							
							
						 
						
							2009-10-09 10:43:37 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								531cfa1c33 
								
							
								 
							
						 
						
							
							
								
								refactor math.vectors.conversion  
							
							 
							
							
							
						 
						
							2009-10-08 11:35:40 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								f2c9eb79e2 
								
							
								 
							
						 
						
							
							
								
								decompose %unpack-vector-head/tail into %compare-vector/%merge-vector-head/tail or %tail>head-vector/%unpack-vector-head insns when there isn't an actual unpack insn; get rid of fake x86 implementations  
							
							 
							
							
							
						 
						
							2009-10-07 14:09:46 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								47cfb7d3a5 
								
							
								 
							
						 
						
							
							
								
								fix ##load-constant/##scalar>vector folding when constant is a fixnum  
							
							 
							
							
							
						 
						
							2009-10-07 12:46:08 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								34def34481 
								
							
								 
							
						 
						
							
							
								
								don't generate a ##not-vector instruction if the cpu doesn't have one; instead, fall back to a ##fill-vector/##xor-vector combo. get rid of pretend %not-vector in cpu.x86  
							
							 
							
							
							
						 
						
							2009-10-07 11:59:36 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								8873b7939a 
								
							
								 
							
						 
						
							
							
								
								fix math.vectors.simd test load failure  
							
							 
							
							
							
						 
						
							2009-10-07 11:56:57 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								4d4da7ac23 
								
							
								 
							
						 
						
							
							
								
								break vector conversion intrinsics off to a math.vectors.conversion.backend vocab so the whole conversion vocab doesn't get sucked in by the compiler  
							
							 
							
							
							
						 
						
							2009-10-06 21:28:33 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								a319dde8b5 
								
							
								 
							
						 
						
							
							
								
								add some math.vectors.conversion tests to cover some failing cases  
							
							 
							
							
							
						 
						
							2009-10-06 20:21:08 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								785f8620fd 
								
							
								 
							
						 
						
							
							
								
								glue conversion intrinsics to instructions  
							
							 
							
							
							
						 
						
							2009-10-06 20:13:38 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								4456b1f3f9 
								
							
								 
							
						 
						
							
							
								
								assert that vconvert's inputs are of the right type  
							
							 
							
							
							
						 
						
							2009-10-06 17:42:36 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								166ea6bc10 
								
							
								 
							
						 
						
							
							
								
								math.vectors.conversion vocab with primitive words (to be mapped to intrinsics soon) and a super all-in-one "vconvert" macro wrapping the whole thing  
							
							 
							
							
							
						 
						
							2009-10-06 14:37:16 -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
							
						 
						
							 
							
							
							
								
							
								cf4df7eb66 
								
							
								 
							
						 
						
							
							
								
								typo in vmerge-head, vmerge-tail docs  
							
							 
							
							
							
						 
						
							2009-10-05 11:14:14 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								7ed8f00b0f 
								
							
								 
							
						 
						
							
							
								
								go back to using random instead of uniform-random-float in math.vectors.simd tests because the software and SIMD implementations of norm and v. can sporadically diverge when their different operation orders lead to cancellation of catastrophically small inputs  
							
							 
							
							
							
						 
						
							2009-10-03 22:57:04 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								626954a071 
								
							
								 
							
						 
						
							
							
								
								fix v? software fallback  
							
							 
							
							
							
						 
						
							2009-10-03 22:37:45 -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
							
						 
						
							 
							
							
							
								
							
								05c722ea0c 
								
							
								 
							
						 
						
							
							
								
								link vmerge into math.vectors docs  
							
							 
							
							
							
						 
						
							2009-10-03 21:48:16 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								d3c51baf91 
								
							
								 
							
						 
						
							
							
								
								software version of vmerge word (to be backed by UNPCK instructions on x86 and VMRG instructions on ppc)  
							
							 
							
							
							
						 
						
							2009-10-03 20:22:37 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								426e560a6b 
								
							
								 
							
						 
						
							
							
								
								sprinkle some NaNs onto math.vectors.simd fuzz tests to improve flavor  
							
							 
							
							
							
						 
						
							2009-10-03 11:47:02 -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  
						
					 
				
					
						
							
							
								 
								Doug Coleman
							
						 
						
							 
							
							
							
								
							
								7d005111a4 
								
							
								 
							
						 
						
							
							
								
								i messed up a merge.  weird  
							
							 
							
							
							
						 
						
							2009-10-02 16:05:00 -05:00  
						
					 
				
					
						
							
							
								 
								Doug Coleman
							
						 
						
							 
							
							
							
								
							
								a070e9a3a9 
								
							
								 
							
						 
						
							
							
								
								Merge branch 'master' of git://factorcode.org/git/factor into klazuka  
							
							 
							
							... 
							
							
							
							Conflicts:
	basis/math/vectors/vectors-docs.factor 
							
						 
						
							2009-10-02 15:59:19 -05:00  
						
					 
				
					
						
							
							
								 
								Doug Coleman
							
						 
						
							 
							
							
							
								
							
								67167cf9ea 
								
							
								 
							
						 
						
							
							
								
								Merge branch 'docs' of git://github.com/klazuka/factor into klazuka  
							
							 
							
							... 
							
							
							
							Conflicts:
	basis/math/vectors/vectors-docs.factor 
							
						 
						
							2009-10-02 15:58:45 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								f93dcfc792 
								
							
								 
							
						 
						
							
							
								
								give math.vectors shuffle words their own docs subsection in anticipation of having more ops in there  
							
							 
							
							
							
						 
						
							2009-10-02 15:37:49 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								5ff3eef0df 
								
							
								 
							
						 
						
							
							
								
								proofreading math.vectors docs  
							
							 
							
							
							
						 
						
							2009-10-02 15:18:42 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								0821d3f370 
								
							
								 
							
						 
						
							
							
								
								add notes to math.vectors docs about simd booleans  
							
							 
							
							
							
						 
						
							2009-10-02 15:11:06 -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  
						
					 
				
					
						
							
							
								 
								Keith Lazuka
							
						 
						
							 
							
							
							
								
							
								405e5d015b 
								
							
								 
							
						 
						
							
							
								
								docs: change $subsection to $subsections  
							
							 
							
							
							
						 
						
							2009-10-02 12:15:48 -04:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								8b7a813a08 
								
							
								 
							
						 
						
							
							
								
								change vector logical words to reuse the input sequence types so that they work as simd fallbacks  
							
							 
							
							
							
						 
						
							2009-10-01 23:49:53 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								01736e9bec 
								
							
								 
							
						 
						
							
							
								
								define simd equal? methods as v= vall?  
							
							 
							
							
							
						 
						
							2009-10-01 23:46:37 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								53b265f682 
								
							
								 
							
						 
						
							
							
								
								Merge branch 'master' of git://factorcode.org/git/factor  
							
							 
							
							... 
							
							
							
							Conflicts:
	basis/compiler/codegen/codegen.factor 
							
						 
						
							2009-10-01 23:14:16 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								952498ef69 
								
							
								 
							
						 
						
							
							
								
								create special intrinsic wrappers for 256-vector>scalar operations so that vall?, vany?, vnone? work on 256-vectors  
							
							 
							
							
							
						 
						
							2009-10-01 23:07:10 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								d5c4ec5357 
								
							
								 
							
						 
						
							
							
								
								add tests for v=, vany?, vall?, vnone?  
							
							 
							
							
							
						 
						
							2009-10-01 21:24:14 -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
							
						 
						
							 
							
							
							
								
							
								0c8a4717f2 
								
							
								 
							
						 
						
							
							
								
								add software vall?, vany?, vnone? words  
							
							 
							
							
							
						 
						
							2009-10-01 13:21:10 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								0db97d536f 
								
							
								 
							
						 
						
							
							
								
								math.vectors.simd.functor: don't open-code simd-nth and simd-with if we cannot generate double precision FP code. Should fix illegal instruction trap on CPUs with only SSE1  
							
							 
							
							
							
						 
						
							2009-10-01 07:36:50 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								5ac5a74cc6 
								
							
								 
							
						 
						
							
							
								
								write v? and vmask in terms of bitwise ops  
							
							 
							
							
							
						 
						
							2009-10-01 00:09:25 -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
							
						 
						
							 
							
							
							
								
							
								67cc45235d 
								
							
								 
							
						 
						
							
							
								
								Merge branch 'master' of git://factorcode.org/git/factor  
							
							 
							
							
							
						 
						
							2009-09-30 23:04:04 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								7db7b63552 
								
							
								 
							
						 
						
							
							
								
								add a %blend-vector intrinsic for v?  
							
							 
							
							
							
						 
						
							2009-09-30 23:03:59 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								2384b630b2 
								
							
								 
							
						 
						
							
							
								
								math.vectors.simd: use fallbacks for hlshift, hrshift, vshuffle if parameter is not a literal;al; element access in int-4 on x86-64 now sign-extends the value; don't throw error at compile time if parameter for vshuffle does not have enough elements  
							
							 
							
							
							
						 
						
							2009-09-30 20:04:37 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								e56cd5cc12 
								
							
								 
							
						 
						
							
							
								
								accept f and t as elements of literal simd vectors, storing binary all-zeroes or all-ones  
							
							 
							
							
							
						 
						
							2009-09-30 19:04:02 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								e0f3b72c65 
								
							
								 
							
						 
						
							
							
								
								break math.vectors docs into subsections  
							
							 
							
							
							
						 
						
							2009-09-30 13:21:25 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								7e679e1683 
								
							
								 
							
						 
						
							
							
								
								Merge branch 'master' of git://factorcode.org/git/factor  
							
							 
							
							
							
						 
						
							2009-09-30 00:07:45 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								55ab9c3002 
								
							
								 
							
						 
						
							
							
								
								docs for new math.vectors logical ops  
							
							 
							
							
							
						 
						
							2009-09-30 00:07:37 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								d70b95e4b8 
								
							
								 
							
						 
						
							
							
								
								math.vectors.simd: fix bad comparison logic in unit tests  
							
							 
							
							
							
						 
						
							2009-09-29 23:46:21 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								80e84a357d 
								
							
								 
							
						 
						
							
							
								
								math.vectors.simd: add vbroadcast intrinsic, fix integer overflow issues  
							
							 
							
							
							
						 
						
							2009-09-29 22:58:20 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								5e16592596 
								
							
								 
							
						 
						
							
							
								
								add a "vmask" vector op to selectively zero out elements  
							
							 
							
							
							
						 
						
							2009-09-29 18:10:36 -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
							
						 
						
							 
							
							
							
								
							
								a8ea929ad9 
								
							
								 
							
						 
						
							
							
								
								Work in progress  
							
							 
							
							
							
						 
						
							2009-09-28 17:31:34 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								48d3f10c81 
								
							
								 
							
						 
						
							
							
								
								Fix some load errors in various places  
							
							 
							
							
							
						 
						
							2009-09-28 16:33:39 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								4abfe06b51 
								
							
								 
							
						 
						
							
							
								
								Fixing various test failures caused by C type parser change, and clarify C type docs some more  
							
							 
							
							
							
						 
						
							2009-09-28 08:48:39 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								9a06e6f424 
								
							
								 
							
						 
						
							
							
								
								math.vectors.simd: add intrinsic for int-4-boa, uint-4-boa, fix tests for C type parser change, fix software fallback for horizontal shifts  
							
							 
							
							
							
						 
						
							2009-09-28 06:34:22 -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
							
						 
						
							 
							
							
							
								
							
								afc7a20ab8 
								
							
								 
							
						 
						
							
							
								
								Merge branch 'master' of git://factorcode.org/git/factor  
							
							 
							
							
							
						 
						
							2009-09-27 17:18:16 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								18cf8c37e1 
								
							
								 
							
						 
						
							
							
								
								math.vectors.simd: add *-cast words for converting between representations  
							
							 
							
							
							
						 
						
							2009-09-27 17:18:02 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								c2145c933b 
								
							
								 
							
						 
						
							
							
								
								software implementations of vector logical ops (vand, vor, vxor, vnot, v</=/>, vunordered?, v?)  
							
							 
							
							
							
						 
						
							2009-09-27 13:19:22 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								9d47f5d80d 
								
							
								 
							
						 
						
							
							
								
								math.vectors: remove special handling for negative shifts, now we just say the behavior of vlshift and vrshift with negative shifts is undefined  
							
							 
							
							
							
						 
						
							2009-09-26 02:26:31 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								c38d523185 
								
							
								 
							
						 
						
							
							
								
								math.vectors: fix SIMD unit tests  
							
							 
							
							
							
						 
						
							2009-09-25 21:44:14 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								ed37950a33 
								
							
								 
							
						 
						
							
							
								
								math.vectors: change vlshift and vrshift to mask the shift count by HEX: ff, to make them behave consistently with their SIMD counterparts  
							
							 
							
							
							
						 
						
							2009-09-25 18:50:44 -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
							
						 
						
							 
							
							
							
								
							
								7b6128dd03 
								
							
								 
							
						 
						
							
							
								
								math.vectors.simd: add v<< and v>> intrinsics for bitwise shifts on elements  
							
							 
							
							
							
						 
						
							2009-09-24 03:32:39 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								dfc9fd071e 
								
							
								 
							
						 
						
							
							
								
								Add longlong-2, ulonglong-2, longlong-4, ulonglong-4 SIMD types, fix int-4 multiplication on SSE2  
							
							 
							
							
							
						 
						
							2009-09-23 20:23:25 -05:00  
						
					 
				
					
						
							
							
								 
								Doug Coleman
							
						 
						
							 
							
							
							
								
							
								402e770296 
								
							
								 
							
						 
						
							
							
								
								fix using  
							
							 
							
							
							
						 
						
							2009-09-23 12:47:20 -05:00  
						
					 
				
					
						
							
							
								 
								Doug Coleman
							
						 
						
							 
							
							
							
								
							
								810bd63820 
								
							
								 
							
						 
						
							
							
								
								Merge branch 'master' of git://factorcode.org/git/factor  
							
							 
							
							... 
							
							
							
							Conflicts:
	basis/math/vectors/simd/simd-docs.factor 
							
						 
						
							2009-09-23 10:11:49 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								f017f8904b 
								
							
								 
							
						 
						
							
							
								
								math.vectors.simd: Improved documentation  
							
							 
							
							
							
						 
						
							2009-09-23 03:14:06 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								e1efb189a4 
								
							
								 
							
						 
						
							
							
								
								math and math.vectors: improved documentation  
							
							 
							
							
							
						 
						
							2009-09-23 03:08:45 -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
							
						 
						
							 
							
							
							
								
							
								15ba7e299b 
								
							
								 
							
						 
						
							
							
								
								math.vectors.simd: fix all tests  
							
							 
							
							
							
						 
						
							2009-09-23 01:05:19 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								ea44ea3522 
								
							
								 
							
						 
						
							
							
								
								math.vectors.simd: add saturated arithmetic operations  
							
							 
							
							
							
						 
						
							2009-09-20 23:16:02 -05:00  
						
					 
				
					
						
							
							
								 
								Doug Coleman
							
						 
						
							 
							
							
							
								
							
								5cb34724b7 
								
							
								 
							
						 
						
							
							
								
								Merge branch 'master' of git://factorcode.org/git/factor  
							
							 
							
							... 
							
							
							
							Conflicts:
	basis/classes/struct/struct-tests.factor
	basis/functors/functors-tests.factor
	basis/specialized-arrays/specialized-arrays-tests.factor 
							
						 
						
							2009-09-20 23:02:49 -05:00  
						
					 
				
					
						
							
							
								 
								Doug Coleman
							
						 
						
							 
							
							
							
								
							
								eceed177d6 
								
							
								 
							
						 
						
							
							
								
								replace usages of <" with """  
							
							 
							
							
							
						 
						
							2009-09-20 22:42:40 -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  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								e77341b90c 
								
							
								 
							
						 
						
							
							
								
								math.vectors.simd: redesign to be more flexible, integer SIMD work in progress  
							
							 
							
							
							
						 
						
							2009-09-20 02:08:32 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								076ab42dc3 
								
							
								 
							
						 
						
							
							
								
								move some allocation words that don't really have much to do with c types out of alien.c-types into a new alien.data vocab  
							
							 
							
							
							
						 
						
							2009-09-17 22:36:05 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								1f04ed01fe 
								
							
								 
							
						 
						
							
							
								
								fix more ambiguities  
							
							 
							
							
							
						 
						
							2009-09-17 09:29:23 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								b61ff44b66 
								
							
								 
							
						 
						
							
							
								
								math.vectors.simd: don't run x86-specific tests on PPC  
							
							 
							
							
							
						 
						
							2009-09-11 21:38:40 -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
							
						 
						
							 
							
							
							
								
							
								74fa73aeaf 
								
							
								 
							
						 
						
							
							
								
								Fix various test failures  
							
							 
							
							
							
						 
						
							2009-09-08 19:18:56 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								d596e3abe7 
								
							
								 
							
						 
						
							
							
								
								math.vectors.simd: fix help rendering  
							
							 
							
							
							
						 
						
							2009-09-08 14:49:27 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								82a8ef7beb 
								
							
								 
							
						 
						
							
							
								
								math.vectors.simd: remove useless dependency  
							
							 
							
							
							
						 
						
							2009-09-08 13:55:56 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								aa4307765b 
								
							
								 
							
						 
						
							
							
								
								Merge branch 'master' into simd  
							
							 
							
							
							
						 
						
							2009-09-08 13:38:14 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								f5536bdde0 
								
							
								 
							
						 
						
							
							
								
								math.vectors.specialization: specialized vector words are now subwords of the generic vector word. This ensures that specializations get compiled correctly in all cases  
							
							 
							
							
							
						 
						
							2009-09-08 13:37:25 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								38c961cf6f 
								
							
								 
							
						 
						
							
							
								
								Fixes  
							
							 
							
							
							
						 
						
							2009-09-08 00:13:18 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								e11d1e37f5 
								
							
								 
							
						 
						
							
							
								
								math.vectors.simd: allow punning SIMD vectors between types  
							
							 
							
							
							
						 
						
							2009-09-04 02:35:58 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								6494e7a53b 
								
							
								 
							
						 
						
							
							
								
								math.vectors.simd: slightly faster 'sum' on 256-bit vectors: add the two components then do horizontal add, instead of doing a horizontal add on each one and adding the results  
							
							 
							
							
							
						 
						
							2009-09-04 02:23:25 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								1fc809b643 
								
							
								 
							
						 
						
							
							
								
								math.vectors.simd: docs  
							
							 
							
							
							
						 
						
							2009-09-04 01:22:18 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								6b5e40b2fc 
								
							
								 
							
						 
						
							
							
								
								functors: support private words with DEFINES-PRIVATE; use this to make some words generated by math.vectors.simd.functor private  
							
							 
							
							
							
						 
						
							2009-09-04 01:21:59 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								55c449c6e2 
								
							
								 
							
						 
						
							
							
								
								math.vectors.simd: define fallbacks for all vector constructors so that code can still work even if SIMD is not available  
							
							 
							
							
							
						 
						
							2009-09-03 21:37:55 -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
							
						 
						
							 
							
							
							
								
							
								906a0d212a 
								
							
								 
							
						 
						
							
							
								
								Detect SSE version and enable the correct set of SIMD intrinsics  
							
							 
							
							
							
						 
						
							2009-09-03 03:28:38 -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
							
						 
						
							 
							
							
							
								
							
								d19c403fee 
								
							
								 
							
						 
						
							
							
								
								alien.structs: struct-type now has a class slot; fix specialized complex-float/double arrays  
							
							 
							
							
							
						 
						
							2009-08-09 16:10:11 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								1cb0f3370b 
								
							
								 
							
						 
						
							
							
								
								math.vectors.specialization: first attempt at some call site splitting for vector ops. Specialized array types generate customized variants of all vector words, if input types are known at compile time, a call to the specialized version is inserted  
							
							 
							
							
							
						 
						
							2009-08-09 03:07:33 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								612e4b99b0 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.linear-scan.assignment: insert-copy did the wrong thing if the second interval had been split. Fixes compilation of 'trilerp'  
							
							 
							
							
							
						 
						
							2009-06-30 21:07:39 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								9685aea6fe 
								
							
								 
							
						 
						
							
							
								
								homogeneous coordinates coated in nurbsauce  
							
							 
							
							
							
						 
						
							2009-05-21 20:55:44 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								b73c8a0619 
								
							
								 
							
						 
						
							
							
								
								vector bilerp word  
							
							 
							
							
							
						 
						
							2009-05-20 10:26:55 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								d90bb0f336 
								
							
								 
							
						 
						
							
							
								
								cut perlin-noise time in half  
							
							 
							
							
							
						 
						
							2009-05-10 10:41:50 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								dd9af334a9 
								
							
								 
							
						 
						
							
							
								
								send bilerp upstream to spawn  
							
							 
							
							
							
						 
						
							2009-05-09 11:43:04 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								4b64d9a5e5 
								
							
								 
							
						 
						
							
							
								
								more vector operations; perlin noise vocab  
							
							 
							
							
							
						 
						
							2009-05-05 22:17:04 -05:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								2a00f10d1a 
								
							
								 
							
						 
						
							
							
								
								lerp functions  
							
							 
							
							
							
						 
						
							2009-05-05 13:55:00 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								ae0da1cf98 
								
							
								 
							
						 
						
							
							
								
								Fix conflict  
							
							 
							
							
							
						 
						
							2009-02-05 22:29:15 -06:00  
						
					 
				
					
						
							
							
								 
								Joe Groff
							
						 
						
							 
							
							
							
								
							
								ccdd8999e1 
								
							
								 
							
						 
						
							
							
								
								swizzle word to swizzle sequences  
							
							 
							
							
							
						 
						
							2009-02-04 19:46:19 -06:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								f79041545a 
								
							
								 
							
						 
						
							
							
								
								New distance word in math.vectors, replaces distance in math.points, more efficient  
							
							 
							
							
							
						 
						
							2008-11-29 10:19:23 -06:00  
						
					 
				
					
						
							
							
								 
								Aaron Schaefer
							
						 
						
							 
							
							
							
								
							
								e17f519480 
								
							
								 
							
						 
						
							
							
								
								Minor documentation fixes  
							
							 
							
							
							
						 
						
							2008-11-17 22:51:57 -05:00  
						
					 
				
					
						
							
							
								 
								Aaron Schaefer
							
						 
						
							 
							
							
							
								
							
								9c27e9d61b 
								
							
								 
							
						 
						
							
							
								
								Replace >r r> usage with dip in math.vectors  
							
							 
							
							
							
						 
						
							2008-11-17 18:17:14 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								c19f2257f4 
								
							
								 
							
						 
						
							
							
								
								Fix permission bits  
							
							 
							
							
							
						 
						
							2008-10-02 08:34:49 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								d5140cf248 
								
							
								 
							
						 
						
							
							
								
								Fix math.vectors unit tests  
							
							 
							
							
							
						 
						
							2008-09-12 15:52:43 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								f497c7e151 
								
							
								 
							
						 
						
							
							
								
								Move map-reduce combinator to core, re-implement norm-sq and v. for better performance  
							
							 
							
							
							
						 
						
							2008-09-12 11:29:12 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								d66f887736 
								
							
								 
							
						 
						
							
							
								
								Create basis vocab root  
							
							 
							
							
							
						 
						
							2008-07-28 22:03:13 -05:00