Commit Graph

93 Commits (4cd6ad840d6917f6784b108923920d96c6ec6b15)

Author SHA1 Message Date
Joe Groff 9bf5c76771 lexer: add "each-token" and "map-tokens", which are equivalent to "parse-token _ each/map" but incremental. update a smattering of parsing words (such as USING:, SYMBOLS:, etc.) to use each-token/map-tokens 2010-02-28 22:19:43 -08:00
Slava Pestov 17b095a524 Slices over specialized arrays can now be passed to C functions, written to binary output streams, and given to malloc-byte-array 2010-02-25 04:50:31 +13:00
Slava Pestov af0ddd5985 Specialized arrays, structs and other objects responding to the >c-ptr / byte-length protocol can now be written to binary streams 2010-02-24 20:18:41 +13:00
Joe Groff 6d4724a095 scrub memory>struct calls made redundant 2010-02-22 12:22:29 -08:00
Joe Groff d64653ee9a specialized-arrays: fix underlying-type so it always returns void* for pointer types 2010-02-21 23:13:31 -08:00
Joe Groff d5bf6e55cd more implementation of pointer c-types. make it so that { char* binary } acts like a real pointer to char instead of stringifying, and add byte* typedef for { char* binary } 2010-02-21 20:58:21 -08:00
Joe Groff 5955ba06df use a "pointer" wrapper tuple to indicate pointer types instead of the current slipshod approach 2010-02-21 16:27:36 -08:00
Joe Groff 62e97c138a ditch string c-types 2010-02-21 10:58:21 -08:00
Slava Pestov 08a80e5ba2 specialized-arrays: generate slightly more efficient byte-array>T-array words 2010-02-20 12:05:12 +13:00
Slava Pestov ff172f4132 Make specialized arrays and SIMD types final so that typed can unbox them 2010-02-18 02:39:40 +13:00
Doug Coleman f7ee9223ae Fix using 2010-01-22 13:24:50 -06:00
Slava Pestov 8836ce2581 Fix performance regression in vector ops on specialized arrays, tweak definition of <slice> and 2map-reduce to generate fewer conditionals 2010-01-19 17:48:10 +13:00
Slava Pestov eaff1841fa specialized-arrays: don't define useless empty T-sequence mixin 2010-01-16 20:19:35 +13:00
Joe Groff 1845915dc6 add v*high, v*hs+, vavg, and vsad operations to math.vectors 2009-12-05 11:32:31 -08:00
Joe Groff 3aaa90052b fix specialized-array vs methods to work when c-type is also a : word 2009-12-04 13:22:01 -08:00
Joe Groff 270fe50ba3 add methods to vs+/vs-/vs* on specialized-arrays so that they saturate as well 2009-12-04 12:43:50 -08:00
Joe Groff 67cc1c01be Merge branch 'master' into simd-cleanup 2009-11-26 16:14:46 -08:00
Slava Pestov 0612bc6177 Factor source files should not be executable 2009-11-21 17:50:43 -06:00
Slava Pestov ffd7de02d6 Update a few places that used string C type names to use words; fixes some deploy tests 2009-11-20 03:21:48 -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 e323071c44 sever lingering dependencies on simd from compiler 2009-11-11 16:08:40 -06:00
Doug Coleman 7ce4b746e5 parsed -> suffix!, add append! 2009-10-28 13:38:27 -05:00
Slava Pestov 08e7d25dc5 change-each -> map!, deep-change-each -> deep-map! 2009-10-27 22:32:56 -05:00
Slava Pestov bbedd03f6b mirrors: don't depend on specialized-arrays, it pulls in too much 2009-10-23 04:24:20 -05:00
Slava Pestov 5f3c94896f specialized-arrays: fix unit test 2009-10-20 02:18:28 -05:00
Slava Pestov 102af9badb specialized-arrays, specialized-vectors: fix potential problem if two vocabularies define different C types with the same name 2009-10-19 04:41:53 -05:00
Joe Groff ac51237853 add unit test that doubles stored in single-precision float arrays round to nearest 2009-10-17 00:07:08 -05:00
Joe Groff d9002127fa have vshuffle accept simd-128 variable byte shuffles 2009-10-10 11:30:11 -05:00
Joe Groff 07aa2620c6 add SIMDS: ... ; and SPECIALIZED-ARRAYS: ... ; syntax 2009-10-09 10:43:37 -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
Keith Lazuka 405e5d015b docs: change $subsection to $subsections 2009-10-02 12:15:48 -04:00
Slava Pestov 59e234b251 specialized-arrays: byte-array>A-array calls >c-ptr 2009-10-01 23:12:53 -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 77fa16c76f alien: improve documentation 2009-09-26 21:28:11 -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 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 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 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
Joe Groff 9479fb4099 have SPECIALIZED-ARRAY: scan in a c-type rather than a string 2009-09-16 20:54:22 -05:00
Joe Groff 3b4330fcf6 get things to a point where they bootstrap again 2009-09-15 21:43:18 -05:00
Slava Pestov 16209bf68d specialized-arrays: fix unit tests now that ALIEN: expects a hex literal 2009-09-13 00:24:31 -05:00
Slava Pestov 5cdb67d571 specialized-arrays, specialized-vectors: fix some code duplication and prettyprinting 2009-09-10 14:46:26 -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 bbca00e2ae Fix conflicts 2009-09-07 23:51:25 -05:00
Slava Pestov 1798000335 Fix unit tests for specialized-arrays.direct change 2009-09-05 02:26:06 -05:00
Slava Pestov a054ec3d64 specialized-arrays.direct is no more; instead, every specialized-array.<foo> vocabulary has a <direct-T-array> constructor 2009-09-04 22:01:55 -05:00