Commit Graph

488 Commits (8d4ba7e2b61c4013180e47ddc8c2fb43365e5577)

Author SHA1 Message Date
Erik Charlebois e28e48beea Create a setter for C-GLOBAL words 2011-05-23 23:36:14 -04:00
Erik Charlebois 64252dbdbc 32 and 64 bit Linux PPC support 2011-05-23 23:36:14 -04:00
Slava Pestov 59a708638c alien.c-types: add summary and docs for no-c-type error 2011-04-03 22:33:51 -07:00
Slava Pestov b0732bcb22 Fix unit test failures caused by alien.data change 2010-12-25 22:34:12 -08:00
Slava Pestov 75560699ea Move <ref>, deref and little-endian? from alien.c-types to alien.data, remove <c-object> 2010-12-25 16:55:36 -08:00
Slava Pestov dd0d9fbc10 alien.fortran: cleanup 2010-12-01 03:00:00 -08:00
Joe Groff 2dbfc7df33 alien.fortran: fix stack effect of SUBROUTINE: and FUNCTION: words to include out parameters 2010-12-01 07:05:32 +05:30
Slava Pestov 8be8c7f213 Merge branch 'master' of git://factorcode.org/git/factor 2010-10-31 20:26:29 -05:00
Slava Pestov b03a16ef4d alien.libraries: add-library won't close and re-open the library if nothing changed. This fixes a crash on Windows when reloading the windows vocab 2010-10-25 23:39:15 -05:00
Slava Pestov e139a7a02d Clean up alien.c-types changes a little 2010-10-25 21:09:08 -07:00
Doug Coleman 67c37591ca Remove <uint> *uint and friends. Hopefully remove the last usages of these words 2010-10-25 15:54:42 -05:00
Doug Coleman 4ca9bd0bba Remove usages of <void*> and *void* 2010-10-25 13:22:50 -05:00
Doug Coleman 1f57dc326e Remove many uses of <int> and *int etc 2010-10-25 12:49:12 -05:00
Slava Pestov a400b39fa1 alien.enums: enum>number didn't work in deployed images, add a test which deploys and runs benchmark.ui-panes to catch this in the future 2010-10-17 21:02:42 -04:00
Slava Pestov 559b1ae876 alien.c-types: make behavior of int/uint/long/ulong/longlong/ulonglong struct field setters consistent across 32-bit and 64-bit when supplied with floats (reported by Anton Gorenko) 2010-10-14 22:29:48 -07:00
Slava Pestov fbbaef70c4 Remove stream-peek and stream-peek1, re-implement dns vocab to not need this abstraction 2010-10-08 18:55:13 -07:00
Doug Coleman d462355035 Implement and document stream-peek 2010-10-08 06:34:19 -07:00
Doug Coleman 046efe7798 Update alien.enums docs 2010-10-01 01:41:24 -05:00
Doug Coleman 3ac8847a15 Fix typo ohno 2010-09-29 17:29:28 -05:00
Doug Coleman 3cdc9ba650 Use create-class-in to get redefinition errors with enums 2010-09-29 16:24:25 -05:00
Doug Coleman 56c8d47d58 Make alien.enums create singletons so I can dispatch on them. Clean up the code a bit. 2010-09-28 15:15:55 -05:00
Slava Pestov f9c9814e57 alien.data: remove deprecated malloc-object word 2010-09-20 21:36:20 -07:00
Slava Pestov d450d12b2b classes.struct: fields with a type that's an array of pointers (eg int*[3]) now work 2010-08-15 02:44:21 -07:00
Slava Pestov 25ea734a8e alien.parser: make int[3]* parse, make int[3][4 not parse 2010-08-15 02:37:17 -07:00
Slava Pestov e8152e9098 alien.parser: array types where the base type was a pointer didn't parse (reported by Dmitry Shubin) 2010-08-15 02:32:12 -07:00
Slava Pestov cc71799833 alien.prettyprint: fix unit test snafu 2010-08-11 21:52:37 -07:00
Joe Groff 04075be646 alien.c-types: classify typedefs of array/string types as typedef-words so they prettyprint correctly 2010-08-11 10:03:19 -07:00
Slava Pestov a5f59e9cd6 alien.prettyprint: fix test failure 2010-07-29 21:09:05 -04:00
Slava Pestov 6142bd7335 alien.syntax: FUNCTION: and FUNCTION-ALIAS: now define inline words 2010-07-28 03:05:14 -04:00
Slava Pestov b23aac1beb compiler.cfg: open-code parameter boxing and unboxing for certain C types 2010-07-19 10:25:13 -04:00
Slava Pestov 446ee6896d alien.data: remove second quotation parameter from with-out-parameters, now all values are copied properly and calling 'clone' on structs in this quotation is not necessary 2010-07-16 17:32:05 -04:00
Slava Pestov 5b31cbcb3c alien.data: document with-scoped-allocation and with-out-parameters, and add initial: syntax 2010-07-16 17:13:38 -04:00
Slava Pestov 8a0525e5ce Add a scan-token word which is like scan, except throws an error on EOF; document scan-object word; mention that scan-token/scan-object are preferred over scan/scan-word 2010-07-06 16:20:08 -04:00
Slava Pestov 4c4a86ee72 alien.data: fix unit test failure 2010-06-11 15:38:57 -04:00
Joe Groff c8ea7ed0c7 alien.data: make binary-zero? public and move it from classes.struct.private 2010-06-10 17:05:43 -07:00
Slava Pestov be1b5e6627 alien.prettyprint: fix wrapping when prettyprinting pointer: 2010-06-02 03:11:46 -04:00
Slava Pestov adecd623d0 alien.prettyprint: fix prettyprinting of array types and CALLBACK: (reported by Anton Gorenko) 2010-05-30 16:21:43 -04:00
Slava Pestov ba7cb61133 Stack allocation improvements
- New with-out-parameters combinator
- Inhibit tail call optimization in frames with local allocation, to ensure that passing a stack allocated value to the last word in the quotation works
- local allocations are now aligned properly
- spill slots are now aligned properly aligned in frames which have parameter and local allocation areas
2010-05-22 02:37:00 -04:00
Slava Pestov 86358b1dc3 alien.data: add with-scoped-allocation combinator for stack-allocating C data 2010-05-19 00:33:36 -04:00
Slava Pestov 4d66f52777 alien.c-types: make a couple of words private 2010-05-18 22:34:42 -04:00
Slava Pestov 1834241e5a alien.libraries, stack-checker.alien: check user inputs more carefully to ensure that invalid ABI descriptors don't slip through and break random stuff (reported by prunedtree) 2010-05-18 18:46:31 -04:00
Slava Pestov ea726f5680 Move remaining sequence operations from generalizations to sequences.generalizations where they belong 2010-05-18 18:36:47 -04:00
Slava Pestov 5b48cd2a63 FFI rewrite part 5: return value boxing and callback parameter boxing now uses vregs; simplify return value unboxing 2010-05-16 03:43:23 -04:00
Slava Pestov 0cde5c8fb5 Eliminate compiler.alien 2010-05-11 23:24:47 -04:00
Slava Pestov ee0640f176 Move flatten-c-type to death row so that it can be executed in part 5 2010-05-11 22:26:31 -04:00
Slava Pestov c211c3e84e FFI rewrite part 1: split up ##alien-invoke and friends into smaller instructions 2010-05-09 21:36:52 -04:00
Slava Pestov 627295f094 Language change: tuple slot setter words with stack effect ( value object -- ) are now named FOO<< instead of (>>FOO) 2010-05-06 17:21:02 -04:00
Slava Pestov e763c74096 More FFI cleanups 2010-05-05 01:13:45 -04:00
Slava Pestov de8e0ccd5c alien.c-types: cleanup 2010-05-04 19:33:55 -04:00
Joe Groff e5c65b2204 use word-props instead of singletons for enum>number conversion so there's not a big fat generic making the image buy another plane ticket 2010-04-21 22:22:06 -07:00