Joe Groff
|
1030e16267
|
fixes for stronger stack checker
|
2009-11-14 22:25:00 -06:00 |
Joe Groff
|
993631e44c
|
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
|
9efff4a322
|
backend fixups
|
2009-11-14 20:59:03 -06:00 |
Joe Groff
|
db1ae26801
|
sever lingering dependencies on simd from compiler
|
2009-11-11 16:08:40 -06:00 |
Slava Pestov
|
d630e1494c
|
Fix struct field alignment on PowerPC
|
2009-11-10 19:34:14 -06:00 |
Slava Pestov
|
0de1335d88
|
Fix some test failures
|
2009-11-10 16:48:06 -06:00 |
Joe Groff
|
a279b360eb
|
Merge branch 'master' into simd-cleanup
Conflicts:
basis/math/vectors/simd/functor/functor.factor
|
2009-11-05 11:27:08 -06:00 |
Joe Groff
|
cf28782533
|
more intrinsic madness
|
2009-11-05 09:52:57 -06:00 |
Slava Pestov
|
39c192c829
|
Align stack pointer on non-Mac OS X x86-32 platforms, and use aligned loads/stores for SIMD values
|
2009-11-03 23:51:44 -06:00 |
Joe Groff
|
ecf7119fec
|
typos
|
2009-11-03 21:38:55 -06:00 |
Joe Groff
|
e01e417ae3
|
remove math.vectors .specialization, .simd.functor, .simd.intrinsics
|
2009-11-02 15:00:39 -06:00 |
Joe Groff
|
1f9dcf31e6
|
redo math.vectors.simd to use generics for specialization
|
2009-11-02 14:59:07 -06:00 |
Joe Groff
|
ca8d4c15f4
|
add ##shl-vector-imm and ##shr-vector-imm insn variants. use merge/shr instead of compare/merge to do signed unpacks
|
2009-10-30 00:41:19 -05:00 |
Joe Groff
|
c6761710a6
|
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 |
Joe Groff
|
22a9be5ea5
|
update existing code to use :> ( ) when possible
|
2009-10-28 16:11:33 -05:00 |
Doug Coleman
|
b5fd809209
|
memq? -> member-eq?, sorted-memq? -> sorted-member-eq?
|
2009-10-28 15:02:00 -05:00 |
Joe Groff
|
a2976083be
|
generate unsigned vector comparison fallbacks using min/max or xor/signed compare
|
2009-10-20 22:30:57 -05:00 |
Joe Groff
|
a0a816e88a
|
generate better fallback code for vmin/vmax intrinsics
|
2009-10-20 19:22:38 -05:00 |
Joe Groff
|
38e58fca39
|
make vshuffle-bytes intrinsic for any shuffle mask type
|
2009-10-19 12:25:55 -05:00 |
Joe Groff
|
bd9dd863dc
|
scuttle bogus math.vectors.simd test
|
2009-10-17 18:47:31 -05:00 |
Joe Groff
|
ecf7819710
|
fix sporadic "fall-through in cond" failure in float math.vectors.simd tests
|
2009-10-17 16:54:51 -05:00 |
Joe Groff
|
31cd3b9ec1
|
fix type propagation information put on non-SIMD specializations of vany?, vall?, vnone?
|
2009-10-17 11:21:08 -05:00 |
Joe Groff
|
0c8ad9f66c
|
make hlshift/hrshift simd tests endian agnostic
|
2009-10-17 00:34:35 -05:00 |
Slava Pestov
|
19e242e18f
|
syntax: fix docs for :
|
2009-10-16 23:45:10 -05:00 |
Joe Groff
|
764e451784
|
improve error reporting of failing simd fallbacks
|
2009-10-16 16:34:26 -05:00 |
Slava Pestov
|
049ece7dff
|
math.vectors.simd: fix typos in docs reported by Ed Swartz
|
2009-10-13 05:13:22 -05:00 |
Joe Groff
|
6899b128c8
|
change the simd-struct tests to cover integer vector slots
|
2009-10-10 12:23:25 -05:00 |
Joe Groff
|
61befc8bb1
|
have vshuffle accept simd-128 variable byte shuffles
|
2009-10-10 11:30:11 -05:00 |
Joe Groff
|
5158a12d32
|
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
|
2bfcd7ed81
|
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
|
4972fbcbc9
|
implement vneg as an intrinsic in terms of load -0, subtract
|
2009-10-09 13:16:39 -05:00 |
Joe Groff
|
a083eb91c7
|
add SIMDS: ... ; and SPECIALIZED-ARRAYS: ... ; syntax
|
2009-10-09 10:43:37 -05:00 |
Joe Groff
|
43b51ef2eb
|
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
|
2d79729193
|
fix ##load-constant/##scalar>vector folding when constant is a fixnum
|
2009-10-07 12:46:08 -05:00 |
Joe Groff
|
a13e75f4f4
|
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
|
867cc3e310
|
fix math.vectors.simd test load failure
|
2009-10-07 11:56:57 -05:00 |
Joe Groff
|
9500976d29
|
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
|
96cb1d5038
|
glue conversion intrinsics to instructions
|
2009-10-06 20:13:38 -05:00 |
Joe Groff
|
3e44e0bb02
|
rename SIMD vmerge and kids to (vmerge), make new vmerge more generally useful
|
2009-10-05 17:55:39 -05:00 |
Joe Groff
|
f8a4469c5f
|
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
|
c5993dbb39
|
fix v? software fallback
|
2009-10-03 22:37:45 -05:00 |
Joe Groff
|
dca9d3e535
|
add %merge-vector-head and %merge-vector-tail instructions to back vmerge
|
2009-10-03 21:48:53 -05:00 |
Joe Groff
|
16cccffb71
|
sprinkle some NaNs onto math.vectors.simd fuzz tests to improve flavor
|
2009-10-03 11:47:02 -05:00 |
Joe Groff
|
335df20713
|
add intrinsics for v<=, v<, v=, v>, v>=, vunordered?
|
2009-10-03 11:29:34 -05:00 |
Joe Groff
|
e2e75c6b3a
|
add intrinsic for vnot/vbitnot
|
2009-10-02 20:04:28 -05:00 |
Doug Coleman
|
c10b6d4ba7
|
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
|
e153d544eb
|
implement vand, vor, vandn, and vxor as bitwise intrinsics for simd types
|
2009-10-02 14:17:01 -05:00 |
Keith Lazuka
|
8f79ea91ba
|
docs: change $subsection to $subsections
|
2009-10-02 12:15:48 -04:00 |
Joe Groff
|
34eb7a9286
|
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
|
0bc690e749
|
define simd equal? methods as v= vall?
|
2009-10-01 23:46:37 -05:00 |