Commit Graph

698 Commits (5582b2b66dbfa3f064810c3d30fd3b997e400cfe)

Author SHA1 Message Date
slava 72efe34950 Inference cleanup and documentation for errors 2006-08-18 07:10:08 +00:00
slava b2d68abd62 Fix various stack effect declarations 2006-08-18 06:05:13 +00:00
slava 77561573e0 Slight speedup 2006-08-18 05:50:34 +00:00
slava b4683b1985 Compiler fixes 2006-08-18 05:35:04 +00:00
slava 415d960b66 Mutually recursive inline words are not allowed anymore 2006-08-18 05:14:22 +00:00
slava 7f2e39430e Some more stack effect declarations 2006-08-18 04:54:55 +00:00
slava 535def2651 memcpy didn't compile due to a typo 2006-08-18 03:53:51 +00:00
slava 6cd9b95df8 compile-all fix 2006-08-18 03:52:59 +00:00
slava 816f60a6e7 Eliminate with-class<cache combinator in favor of a class<map that is always kept up to date 2006-08-18 03:50:59 +00:00
slava 28184dc835 Final round of HELP: syntax changes 2006-08-18 03:08:04 +00:00
slava 29e28008cd More documentation updates 2006-08-17 01:55:53 +00:00
slava c99c10632c HELP: syntax change 2006-08-16 01:23:05 +00:00
slava 06a4af7c00 More work on stack effect declaration 2006-08-15 20:29:35 +00:00
slava 5c1b5bc346 ( ... ) should no longer be used for arbitrary comments 2006-08-15 09:26:22 +00:00
slava 8dfdf52d3a Some unit test fixes 2006-08-15 09:24:30 +00:00
slava f15e657631 Stack effect declaration fixes 2006-08-15 08:57:12 +00:00
slava 56e19dbf14 First stage of stack effect declaration implementation 2006-08-15 07:01:24 +00:00
slava 577f4b26ff Compiler and module system fix 2006-08-12 19:58:32 +00:00
slava 61e1dff787 Automatically recompile words when files are loaded 2006-08-11 20:55:43 +00:00
slava b453a74743 Forgetting a word removes it from the recompile set 2006-08-10 20:47:10 +00:00
slava de124cc191 An experiment -- instead of decompiling words when a word they call has changed, recompile them 2006-08-10 20:44:00 +00:00
slava 0d0581fc34 New apropos from hell 2006-08-12 20:57:49 +00:00
slava 994fc7d38b Documentation fix 2006-08-11 22:23:14 +00:00
slava b19a6672bf Simplify inference code a bit 2006-08-10 20:33:15 +00:00
slava 69092b2851 Fix an inference bug 2006-08-10 20:03:51 +00:00
slava 512fc690ad Simplify the compiler 2006-08-10 18:39:12 +00:00
slava 9ff1e6300e Get Factor to bootstrap on AMD64 2006-08-10 05:33:16 +00:00
slava 187c5a5642 Simplify generator 2006-08-10 05:05:12 +00:00
slava 9c3a3f9db5 AMD64 fix 2006-08-10 04:58:01 +00:00
slava decfe5c53a Fix typo in x86 %dispatch 2006-08-10 04:39:13 +00:00
slava 2b2b4a9f22 Fix label handling in compiler 2006-08-10 04:14:43 +00:00
slava af171e41d9 x86 fixes 2006-08-09 22:43:08 +00:00
slava 9dc1a9854a x86 assembler fixes for new code heap layout 2006-08-09 22:25:11 +00:00
slava 40e3a2a063 finalize-compile now takes an alist of xts; fix ppc %dispatch 2006-08-09 22:09:10 +00:00
slava af1dcf3990 : delete-all 0 swap set-length ; 2006-08-09 20:14:54 +00:00
slava 25fc2f8af5 More generator/relocator fixes 2006-08-09 07:25:15 +00:00
slava 00d970cf15 Compiled code labels are now first-class 2006-08-09 06:12:01 +00:00
slava 251f12448f Big redesign of the compiler/runtime interface 2006-08-08 05:38:32 +00:00
slava 55ec0e3a91 sequence= is now inlined 2006-08-07 19:41:31 +00:00
slava b68fb8f9c1 Optimizer fixes 2006-08-07 05:17:04 +00:00
slava a8ae50c455 Class inference improvements 2006-08-07 02:30:52 +00:00
slava 5a8bd7b3c6 Constant branch folding 2006-08-07 00:31:15 +00:00
slava 5d7d152792 Scrolling fixes 2006-08-04 00:05:54 +00:00
slava f9b8f32e67 Generic word cleanups continued 2006-08-02 07:10:09 +00:00
slava 477fb4db7a Fix X11 UI backend for char* FFI change 2006-08-01 23:25:12 +00:00
slava 28035296f4 Some code cleanups 2006-08-01 21:56:20 +00:00
slava aaecfef11d Documentation for errors 2006-08-01 21:35:00 +00:00
slava a552e6d30d Start implementing :help 2006-08-01 08:45:05 +00:00
slava b0a4b6409a Changed argument order of {head,tail}{,-slice}{,*} and group 2006-07-30 00:36:25 +00:00
slava 6dabc9710e Misc updates 2006-07-28 04:50:09 +00:00
slava e9c2fbb835 Inference cleanups 2006-07-27 23:45:13 +00:00
slava 7223b8c637 Minor inference cleanups 2006-07-27 22:21:49 +00:00
slava 82db2792a2 More inference tweaks 2006-07-26 19:03:49 +00:00
slava 0569c0ee77 We don't use the inferring-base-case var anymore 2006-07-26 04:40:06 +00:00
slava d48bdc2694 Dicking with inference 2006-07-26 04:38:00 +00:00
slava ad0ae8dc63 Remove add-simple-library 2006-07-26 04:36:22 +00:00
slava d3d7d053fd Inference cleanups 2006-07-25 04:14:18 +00:00
slava 4102ad72c5 Faster hashtables 2006-07-24 04:11:22 +00:00
slava 79848ac511 Some simple-minded optimizations 2006-07-20 03:10:02 +00:00
slava dc7159578b Back out a threading change 2006-07-17 19:08:38 +00:00
slava 4d7acd57e7 Minor tweaks 2006-07-14 09:37:00 +00:00
slava 489bea18d5 AMD64 fix, Cocoa UI memory leak fix 2006-07-11 04:48:35 +00:00
slava 910d6de129 Don't worry about Factor-defined struct returning Objective C methods for now 2006-07-06 20:54:05 +00:00
slava 7a591325dc Bootstrap fixes 2006-07-06 20:43:55 +00:00
slava c9590d2560 More Mac Intel ABI fixes -- and fuck Apple for screwing up the Objective C ABI even further 2006-07-06 20:24:09 +00:00
slava 6a862a9696 Add support for 8-byte struct returns, Mac OS X Intel style 2006-07-06 07:04:58 +00:00
slava 200dbc4edd Stack alignment fixes 2006-07-06 05:01:05 +00:00
slava a393fe218c Fix problem which only seems to occur on Core Duo: we were relying on unspecified behavior, and that is SHL setting the overflow flag with a shift count greater than one 2006-07-06 03:30:56 +00:00
slava 84ea50c726 Fix malloc typo 2006-07-04 22:10:42 +00:00
slava 7610aa1587 New with-malloc combinator 2006-07-04 21:24:15 +00:00
slava fe48d6452b Intel Mac OS X ABI code progress 2006-07-04 06:04:33 +00:00
slava 0cfc5d4159 Fix bootstrap failure on x86 2006-07-03 07:30:11 +00:00
slava fc16aefc7d Add Mac OS X x86 ABI support 2006-07-03 07:27:30 +00:00
slava 21dc5a6761 Compiler backend cleanups 2006-07-03 06:52:44 +00:00
slava 52d7f4b32a Get Factor to compile on OS X/Intel 2006-07-03 03:41:13 +00:00
slava 50ec1d36db Remove obsolete examples, module system simplification, fix parse-resource restart when bootstrapping parse-syntax.factor 2006-06-19 07:41:42 +00:00
slava 0f34d6ecec add-literal fix 2006-06-13 20:02:09 +00:00
slava b4219e2184 Experimental help search 2006-06-12 03:38:39 +00:00
slava 5564691c27 Fix world focus bug, new [-] word, caret no longer blinks 2006-06-09 23:58:11 +00:00
slava bc3cafbcd9 Documentation updates; almost done updating everything for 0.83 2006-06-06 19:54:07 +00:00
slava d92a955283 Updating more help sections for 0.83 changes 2006-06-06 04:35:12 +00:00
slava 3409004602 Remove some dead code: help glossary and flushable words 2006-06-06 03:26:44 +00:00
slava 52321c4e0b Updating tools section, added documentation for builtin class words 2006-06-06 02:50:16 +00:00
slava 562533dc9c Documentation updates -- most primitives now documented 2006-06-06 02:04:49 +00:00
slava ef1b07adb1 Fix typos in declarations 2006-06-04 21:18:07 +00:00
slava 5029ca593f Documenting primitives; folded make-tuple into <tuple> primitive 2006-06-04 21:13:34 +00:00
wayo.cavazos 3bcd3eb97a Fix <c-object> documentation typo 2006-05-30 04:20:31 +00:00
slava f254d719ea Cocoa fixes 2006-05-29 10:09:31 +00:00
slava 6c656c4c26 <word> cleanup 2006-05-29 08:27:30 +00:00
slava 13f392737e Save window positions, re-arrange source tree a bit 2006-05-27 21:39:38 +00:00
slava 20306c972f Services fixes 2006-05-24 23:34:30 +00:00
slava 5733a45cd4 Fix x86 typo 2006-05-24 22:42:21 +00:00
slava 608aab0dcb FFI now supports Unicode (UTF16) strings better, and the Cocoa bridge uses this functionality 2006-05-23 03:32:27 +00:00
slava 716d9be374 Inference bug fix 2006-05-23 01:55:46 +00:00
slava e3a017d877 Remove unused relocation type 2006-05-20 22:15:46 +00:00
slava 8cdc10abdb New remove-hash* word; UI refactorings; adding new Whisker-style word browser 2006-05-20 06:13:44 +00:00
slava d0b79a9419 Re-introducing sum and product words, new change-nth and remove-index words, track control replaces and generalizes splitter 2006-05-20 01:08:42 +00:00
slava e76ba67cbf Minor alien fixes 2006-05-19 19:53:30 +00:00
slava 36f324370a Cons-less runtime now bootstraps itself 2006-05-17 23:05:44 +00:00
slava ee75b478ab Last traces of conses removed 2006-05-17 18:55:46 +00:00
slava 9b286735ea More quotation work 2006-05-16 20:50:51 +00:00
slava 0727036ee6 Ratios and complexes now have headers, inference fixes 2006-05-15 22:00:37 +00:00
slava e63be4d157 More test fixes 2006-05-15 05:49:07 +00:00
slava 1951e63d2d Fix various test failures 2006-05-15 05:37:11 +00:00
slava f3ce2a15ed More cons cell removals 2006-05-15 05:01:47 +00:00
slava fbfad83957 Remove cons usage from runtime 2006-05-15 04:03:55 +00:00
slava 307bc73f5e reverse-slice ==> <reversed> 2006-05-15 03:25:34 +00:00
slava a7be80d994 Parser no longer calls 'swons' 2006-05-15 03:10:54 +00:00
slava c3f37f956f AMD64 fixes 2006-05-15 00:05:57 +00:00
slava b1681213f0 fp-scratch cleanup 2006-05-14 20:44:47 +00:00
slava 4513192968 Minor fixes 2006-05-14 19:44:07 +00:00
slava 22eae0be15 Compiler cleanups and bootstrap speedup 2006-05-12 21:07:56 +00:00
slava 30e1f0fc2b Fix set-slot on x86 2006-05-11 23:46:19 +00:00
slava 4cd4db2347 Update AMD64 backend and clean up other backends 2006-05-11 06:22:51 +00:00
slava 1cce70aad6 Changing list code to use generic sequence words 2006-05-11 00:32:04 +00:00
slava 63703c2713 Minor performance improvements in optimizer 2006-05-10 22:51:18 +00:00
slava 72fe1b6134 Optimizer cleanup 2006-05-10 07:40:03 +00:00
slava fd8a3062e3 Bootstrap performance improvement and assorted cleanups 2006-05-10 06:18:25 +00:00
slava a842703e2f Fix typos 2006-05-10 02:22:21 +00:00
slava bfc0a0e67a Floating point intrinsics for PowerPC 2006-05-10 01:37:07 +00:00
slava a395743af5 Templates fixes for float vreg allocation 2006-05-09 17:48:55 +00:00
slava 3b6cccb620 Templates cleanups 2006-05-09 17:17:03 +00:00
slava 3c92baf8ed Bootstrap and compiler fixes 2006-05-09 16:38:57 +00:00
slava da2fc4eaba Compiler work 2006-05-09 15:31:10 +00:00
slava e0af419b9b Minor fixes 2006-05-06 04:27:40 +00:00
slava e13b28e0d5 More float tests, x86 float fixes 2006-05-06 03:06:08 +00:00
slava 6318d7d719 Floating point fixes 2006-05-06 01:41:57 +00:00
slava da29021086 Working on float intrinsics 2006-05-06 00:06:57 +00:00
slava 2fa14f55ad New 'pentium4' architecture 2006-05-05 06:08:37 +00:00
slava a6e9ed5c21 Preliminary floating point intrinsics work 2006-05-05 06:00:17 +00:00
slava 4af21da845 Register allocation cleanup 2006-05-04 22:19:39 +00:00
slava 1964164664 vregs now delegate to a register class 2006-05-04 22:08:52 +00:00
slava e2f6bf6fef Update x86 assembler for SSE2 2006-05-04 20:05:58 +00:00
slava 229b0c26a4 Minor fixes 2006-05-03 00:26:48 +00:00
slava 1a86171a99 Working on method inlining optimization 2006-05-02 18:16:59 +00:00
slava 5d7d205081 Type inference for clone and (clone) 2006-05-02 10:13:43 +00:00
slava adca3c8464 Tweaking some declarations 2006-05-02 10:05:58 +00:00
slava fd3f37c8e3 Aggressive arithmetic inlining 2006-05-02 07:05:57 +00:00
slava eb4ba47ef1 New optimizations: useless coerce elimination, builtin slot type declarations 2006-05-02 05:49:52 +00:00
slava 1bc9dbcf2a Specializer optimization 2006-05-02 04:11:59 +00:00
slava bdd78ad160 Generate if-intrinsics in more cases 2006-05-02 03:30:24 +00:00
slava 7c53f7ef57 Disable set-slot intrinsic since it seems problematic 2006-05-02 02:12:08 +00:00
slava 73730188c0 Updating x86 intrinsics 2006-05-02 00:45:40 +00:00
slava 706c5d825a First approximation at x86 intrinsic definitions 2006-04-30 20:13:35 +00:00
slava cad17564ad Add +clobber annotations for future optimization 2006-04-30 20:12:54 +00:00
slava 8e9a27eea0 Fix some problems in the x86 backend 2006-04-29 22:33:05 +00:00
slava 42cd1e89f8 Fix more typos 2006-04-29 21:32:15 +00:00
slava d5d47b6ae8 Fix x86 typo 2006-04-29 21:28:51 +00:00
slava f684243e2f Got scratch registers working; PowerPC backend fully operational, x86 in progress 2006-04-29 21:13:02 +00:00
slava 906fea6508 Updating x86 backend for new changes 2006-04-28 23:23:50 +00:00