Commit Graph

237 Commits (fa810bc3b4f598eb4c12bd0089617d6094ee1b0d)

Author SHA1 Message Date
Slava Pestov fa810bc3b4 compiler.tests.alien: fix typo 2010-04-10 00:41:20 -07:00
Joe Groff 3b4f8758b5 Merge branch 'master' of git://factorcode.org/git/factor into abi-symbols
Conflicts:
	basis/compiler/tests/alien.factor
2010-04-06 12:30:15 -07:00
Joe Groff e2e562ab05 add tests for fastcall callbacks 2010-04-02 00:23:39 -07:00
Joe Groff 8384a9de68 test fastcall indirect struct return 2010-04-02 00:00:34 -07:00
Joe Groff abfaabea5d remove fastcall struct param tests because GCC appears to behave differently from VC++ here and again, who cares 2010-04-01 23:54:08 -07:00
Joe Groff 22bba39a75 add tests for struct returns from fastcall 2010-04-01 23:52:56 -07:00
Joe Groff 6d9d5df8e1 test indirect fastcalls 2010-04-01 23:43:55 -07:00
Joe Groff a1ea6729ae compiler.tests.alien: add back fastcall float and struct tests 2010-04-01 22:47:16 -07:00
Joe Groff 5739dbd6bb add a test that multiple stdcalls or fastcalls in the same word behave correctly 2010-04-01 18:48:12 -07:00
Joe Groff d6ad21bcc6 make "fastcall" symbol private since it doesn't really work in all cases 2010-04-01 18:34:15 -07:00
Joe Groff db1f454cf0 retire mixed int/float fastcall tests because who cares 2010-04-01 18:25:56 -07:00
Slava Pestov 4f585f991d compiler: new set-special-object intrinsic; more efficient special-object intrinsic 2010-04-01 20:09:14 -04:00
Joe Groff 8c5b45694e check gc after fastcall ffi tests like stdcall tests 2010-04-01 14:15:34 -07:00
Joe Groff 202b62add9 typos in ffi tests 2010-04-01 03:02:36 -07:00
Joe Groff 7296e27e23 add fastcall functions to ffi tests 2010-04-01 02:22:42 -07:00
Joe Groff 1d06be5021 "stdcall" -> stdcall 2010-03-31 19:29:04 -07:00
Joe Groff d951be1832 "cdecl" -> cdecl 2010-03-31 19:20:35 -07:00
Slava Pestov adeb6fb68f vm: actually use context callstacks when running code 2010-03-26 22:44:43 -04:00
Slava Pestov af573bd022 Add context-specific special object table, generalizing catchstack_save and current_callback_save fields of context struct 2010-03-18 22:06:00 +13:00
Joe Groff 13cf49c45c fix stack effects in compiler tests 2010-03-08 23:46:20 -08:00
Joe Groff 96ab4492d2 rename current string-mangling "char*" to "c-string". char* is now just a boring old pointer to char 2010-02-23 11:42:02 -08:00
Slava Pestov ad951c85ae stack-checker.alien: now that C types are words, the compiler can add dependencies on them when compiling alien words. This triggers the necessary recompilation when C types are redefined 2010-02-22 21:32:41 +13:00
Slava Pestov 58d035f1c7 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 410c501b76 compiler.units: fix bug that came up recently with nested compilation units 2010-02-04 03:20:48 +13:00
Slava Pestov 80f604ac73 compiler: remove some unnecessary complexity 2010-02-04 01:36:52 +13:00
Slava Pestov d19709c188 vm: modify-code-heap primitive now takes a pair of parameters, update-existing? and reset-pics?. If no generic words were changed, PICs do not need to be reset. If no existing words were redefined, the code heap doesn't have to be traced at all. Speeds up compilation of PEGs since those create lots of compilation units 2010-02-03 23:11:28 +13:00
Slava Pestov 29e1d268b7 generic: rename method-body predicate class to method 2010-02-03 23:11:24 +13:00
Slava Pestov 83a2de6565 Fix ffi-test library to work with Windows SDK. Turns out MINGW has a different ABI for struct returns than MS's compiler; make the MS ABI the default for cdecl on Windows, and add mingw ABI for libraries that use the MINGW ABI 2010-02-02 04:01:12 -06:00
Slava Pestov 7f664a6387 Fix a couple of unit tests that were relying on the old compiler crossref structures 2010-01-31 23:26:55 +13:00
Slava Pestov 2138b55708 New 'conditional dependency' mechanism for more accurate recording of recompilation information 2010-01-30 09:28:57 +13:00
Slava Pestov 1da446d8fc Code cleanups 2010-01-30 09:28:56 +13:00
Slava Pestov 0738e85df1 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
Slava Pestov 0a77399242 Add test case for mixin bug Doug found, seems to be fixed now 2010-01-30 09:28:52 +13:00
Slava Pestov 0cbf9c9b50 Move compile-call and related words only meant to be used for debugging to compiler.test 2010-01-23 00:39:56 +13:00
Doug Coleman 7521807b55 random is generic now -- iota random -> random 2010-01-14 12:48:57 -06:00
Slava Pestov 880fb747fc Removing integers-as-sequences 2010-01-15 07:15:33 +13:00
Slava Pestov 5770a5f9b3 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 005db61ad6 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 790674cf89 Rename kernel.private:getenv/setenv to special-object/set-special-object to mirror recent renaming on the VM side 2010-01-13 18:08:18 +13:00
Slava Pestov 5ef9fb5473 More PowerPC non-optimizing compiler backend fixes 2010-01-13 03:09:43 +13:00
Slava Pestov 1e2c0327ee 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 8f449f1a82 Get optimizing compiler working without global register variables in VM 2009-12-22 15:42:49 +13:00
Slava Pestov 08b6ebc7fa Factor source files should not be executable 2009-11-21 17:50:43 -06:00
Slava Pestov 3b75114015 Fixing test failures 2009-11-11 02:40:24 -06:00
Slava Pestov 5dc20ef385 Use a more compact representation for "compiled-uses" and "compiled-generic-uses" word-props; reduces image size 2009-11-08 06:08:04 -06:00
Slava Pestov 0731485d86 compiler: fix alien tests 2009-11-06 01:04:02 -06:00
Joe Groff f780bbddc3 deprimitivize tuck and put it to pasture 2009-11-05 22:47:05 -06:00
Slava Pestov 3d392cbc2c compiler: fix intrinsics tests on 32-bit 2009-11-04 18:28:46 -06:00
Slava Pestov d0a784d61c compiler: update unit tests for 4-bit tag change 2009-11-03 21:40:29 -06:00
Slava Pestov d65296b334 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