Commit Graph

280 Commits (325d1bac2a0403e26206a4c98a41188b05b6e865)

Author SHA1 Message Date
Anton Gorenko 4e6fc292b9 Merge branch 'master' of git://factorcode.org/git/factor 2010-09-28 18:23:36 +06:00
Slava Pestov 7d6475df0b New boot image location: http://downloads.factorcode.org/images/ 2010-09-27 20:29:09 -07:00
Anton Gorenko d5a7f99bea Merge branch 'master' of git://factorcode.org/git/factor
Conflicts:
	basis/cairo/ffi/ffi.factor
	basis/pango/cairo/cairo.factor
	basis/pango/layouts/layouts.factor
2010-09-26 23:24:30 +06:00
Doug Coleman f791c8c5d2 Squashed commit of the following:
commit 197dbe9a6733775ac0ea19b3da4bd4dc3c85418c
Author: Doug Coleman <doug.coleman@gmail.com>
Date:   Sat Sep 18 19:01:38 2010 -0500

    Fix bootstrap, move privileges to windows.privileges

commit 521c622f8afb15bf42d263c738cb990560dc29cb
Author: Doug Coleman <doug.coleman@gmail.com>
Date:   Sat Sep 18 18:26:30 2010 -0500

    Hopefully fix bootstrap

commit eb3f22928b59758b9505430034044b5b94705da2
Author: Doug Coleman <doug.coleman@gmail.com>
Date:   Sat Sep 18 18:19:05 2010 -0500

    Remove wince from factor codebase

commit 619d6c99415f46208a7ede6a04b0ccda46b15360
Author: Doug Coleman <doug.coleman@gmail.com>
Date:   Sat Sep 18 16:07:46 2010 -0500

    Remove Windows CE from vm/
2010-09-19 19:13:25 -05:00
Slava Pestov 5df4edc14f mason: when checking if we need to build, compare source for last finished (clean/dirty/error) build with the latest source hashes, instead of the last *downloaded* source hashes. This ensures that if a build is terminated due to machine failure, we start building again next time 2010-09-04 16:58:10 -07:00
Slava Pestov d2cf2d8f92 Rename get-fpu-state entry point to fpu-state, and fix stack-checker unit tests 2010-09-04 12:58:59 -07:00
Slava Pestov 1818bcb780 Fix three problems discovered by running math.floats.env tests in a loop:
- Crash if allocating error triggers a GC from a signal/SEH handler
- Crash if GC runs with floating point traps enabled on Windows
- Floating point traps didn't prettyprint properly
2010-09-02 22:57:14 -05:00
Slava Pestov d2dd184d58 Officially drop PowerPC port 2010-08-15 20:10:11 -07:00
Anton Gorenko 5c6d4d4017 Merge branch 'master' of git://factorcode.org/git/factor 2010-06-13 07:54:23 +06:00
Slava Pestov 806e54630a GC maps for more compact inline GC checks 2010-06-11 20:06:00 -04:00
Anton Gorenko e174b7a070 Merge branch 'master' of git://factorcode.org/git/factor 2010-06-07 23:12:23 +06:00
Slava Pestov e8cb8bb359 bootstrap.image.download: refactor it a bit to make mason.updates more robust 2010-05-25 17:18:06 -04:00
Anton Gorenko bfe6cba08d set Gtk-based ui backend as default on unix 2010-05-23 16:14:21 +06: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 2a137bed0e bootstrap.compiler.timing: small update 2010-05-14 18:37:07 -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 d215d691b5 Load debugger.{unix,windows} later on in bootstrap, because lopading it before the optimizing compiler incurs a long delay on Windows as all the WinAPI bindings get loaded and parsed 2010-05-06 17:41:00 -04:00
Slava Pestov 5fbc42e184 bootstrap.compiler.timing: update 2010-05-04 19:33:54 -04:00
Slava Pestov e436ae7314 continuations: keep original error when throwing wrapped errors as well, for easier debugging of bootstrap failures 2010-05-03 17:34:22 -04:00
Slava Pestov 0c8ed1b9d7 bootstrap.handbook: fix typo 2010-04-29 01:43:40 -04:00
Slava Pestov 703ff5385d Merge branch 'require-when' of git://github.com/littledan/Factor 2010-04-19 14:06:52 -05:00
Slava Pestov 2eda6fc6aa io.encodings: add a fast-path for ascii, utf8 and 8-bit encodings when string only contains ASCII characters 2010-04-19 01:14:00 -05:00
Slava Pestov 2517b2fc2b compiler: combine ##load-constant followed by ##alien-double into a ##load-double on x86-32, saving an integer register 2010-04-18 21:42:45 -05:00
Daniel Ehrenberg aa6158b366 Changing require-when usages to the new syntax for require-when 2010-04-18 14:29:24 -05:00
Slava Pestov da6bcbedfc Replace 'untested' tag with 'not loaded' and 'not tested' tags 2010-04-13 18:43:01 -07:00
Slava Pestov 74640b7f71 Get green threads working on Windows
- store stack base and limit in TIB
- set up a frame-based structured exception handler in each context's callstack
- boot.x86.32.image has now been replaced by boot.winnt-x86.32.image and boot.unix-x86.32.image
2010-04-03 20:24:33 -04:00
Slava Pestov 99771eb689 bootstrap.compiler: fix joint dependencies declared here 2010-03-29 13:14:26 -04:00
Daniel Ehrenberg 240c6819a9 Merge branch 'master' into conditional 2010-03-28 19:49:32 -04:00
Slava Pestov 560c119cd2 vm: actually use context callstacks when running code 2010-03-26 22:44:43 -04:00
Daniel Ehrenberg 4af88ff9ff Making more vocabs use require-when 2010-03-18 01:39:30 -04:00
Daniel Ehrenberg eb060443db Updating code to use require-when rather than vocab [ require ] when 2010-03-18 01:13:37 -04:00
Slava Pestov 6ff0393e2f debugger: Untangle some dodgy dependencies that were loading locals before prettyprint, resulting in locals.prettyprint not being loaded 2010-03-17 19:19:43 +13:00
Doug Coleman 55e772c528 Remove the http-data word 2010-03-01 22:32:15 -06:00
Doug Coleman 9bf7f56283 Add a new word http-data that is just http-get nip 2010-02-27 07:58:35 -06:00
Slava Pestov 95bfc8a240 vocabs.metadata: replace unportable tag with a platforms.txt file for more fine-grained control. Rename unportable tag to untested for remaining cases 2010-02-20 13:30:49 +13:00
Slava Pestov a1cb7b4be1 More preparations for a release 2010-02-15 01:03:26 +13:00
Slava Pestov 11be5a4bd5 Rename update to assoc-union!, add assoc-filter! assoc-diff! words 2010-02-04 02:55:00 +13:00
Slava Pestov 8d3c11c176 compiler: remove some unnecessary complexity 2010-02-04 01:36:52 +13:00
Slava Pestov fbf078d4b3 words: undefined error now contains the word in question 2010-02-03 23:11:23 +13:00
Slava Pestov e929d906ce classes: If a tuple class with subclasses is redefined into something that's not a tuple class, subclasses are changed to inherit from 'tuple' instead of being forgotten. Also, changing the metaclass of a union or intersection member no longer removes it from the union or intersection. Finally, make some internal words private 2010-02-01 02:48:39 +13:00
Slava Pestov 6cdf4de4eb Fix and clean up stage1 bootstrap 2010-01-28 17:30:35 +13:00
Slava Pestov d4435ed32a command-line: if -e= is passed, don't run main vocab after evaluation ends 2010-01-25 21:05:42 +13:00
Slava Pestov cc69719147 vm: don't recompile lazy-jit-compile more than once 2010-01-20 02:48:31 +13:00
Slava Pestov 1c10196c43 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 36d2ac8921 vm: move c_to_factor, lazy_jit_compile_impl, throw_impl, set_callstack assembly routines into non-optimizing compiler for x86-64 2010-01-06 15:47:36 +13:00
Slava Pestov ba5b90e063 Change how non-volatile register preservation is done in alien callbacks, with the aim of fixing callbacks on PowerPC, and to eventually eliminate assembly code from VM
- Simplify calculation of offset in relocation table
- Open-code %alien-callback
- Remove magic_frame hack from context objects
- Move magical return instruction from optimizing compiler backend into callback entry stub
2010-01-03 01:11:51 +13:00
Slava Pestov c4719b7f5f Fix PowerPC compiler backend for recent changes 2009-12-15 09:51:20 -05:00
Slava Pestov 0068bce934 vm: big overhaul of non-optimizing compiler
- change some primitives into sub-primitives: fixnum+ fixnum- fixnum* inline-cache-miss inline-cache-miss-tail
- rename some relocation types for clarity
- some other minor re-organizations and cleanups
2009-12-15 07:20:09 -05:00
Slava Pestov 68c09f0e93 Split literal table into literal and parameter tables, literal table is discarded after code block initialization 2009-12-02 04:28:15 -06:00
Slava Pestov 0612bc6177 Factor source files should not be executable 2009-11-21 17:50:43 -06:00
Slava Pestov 24c3ddbbde Clean up startup/shutdown hook code 2009-11-20 00:57:49 -06:00
Slava Pestov 6a2cf3516d Bootstrap and mason now record times in nanoseconds 2009-11-19 23:50:30 -06:00
Doug Coleman 2711456935 use nano-count for timing bootstrap 2009-11-19 18:24:34 -06:00
Doug Coleman b388d2a34b report times in ms again 2009-11-19 04:05:57 -06:00
Doug Coleman 35695b6ff8 print correct time on bootstrap 2009-11-19 03:22:43 -06:00
Slava Pestov a3cb03548c bootstrap.stage2: fix bootstrap time reporting 2009-11-19 02:08:28 -06:00
Doug Coleman f4450653a9 remove system-millis and update vocabs to use system-micros or nano-count 2009-11-18 20:56:09 -06:00
Doug Coleman 6f7ec206a1 rename millis to system-millis, micros to system-micros, add nano-count 2009-11-18 15:58:48 -06:00
Slava Pestov 64c209b5c9 Fixes to bootstrap-error.factor and finish-staging.factor 2009-11-16 01:14:24 -06:00
Doug Coleman cc194416f9 Merge branch 'master' into startup
Conflicts:
	core/bootstrap/primitives.factor
	vm/run.hpp
2009-11-15 02:52:50 -06:00
Slava Pestov 064c00f78d New identity-hashcode primitive 2009-11-10 21:18:54 -06:00
Slava Pestov 47df580081 tools.time: overhaul 2009-11-05 01:07:59 -06:00
Slava Pestov e4ad642134 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
Slava Pestov 37abac7407 Merge branch 'master' into new_gc 2009-10-30 21:04:37 -05:00
Slava Pestov c05affdce3 Merge branch 'master' of git://factorcode.org/git/factor 2009-10-30 21:00:26 -05:00
Slava Pestov 8d613a8c9a bootstrap.image: small speedup 2009-10-30 20:53:18 -05:00
Joe Groff 6bcd6c68dd no need to pre-compile roll/-roll since they're not used in core or basis anymore 2009-10-30 18:00:47 -05:00
Joe Groff 3f15e028f7 exile roll and -roll to basis/shuffle and mark them deprecated 2009-10-30 17:11:45 -05:00
Slava Pestov 6f9336c29e Merge branch 'master' into new_gc 2009-10-30 03:03:05 -05:00
Doug Coleman bd13e018dd memq? -> member-eq?, sorted-memq? -> sorted-member-eq? 2009-10-28 15:02:00 -05:00
Slava Pestov 08e7d25dc5 change-each -> map!, deep-change-each -> deep-map! 2009-10-27 22:32:56 -05:00
Slava Pestov 9abe29bebc Merge branch 'master' into new_gc 2009-10-24 01:31:15 -05:00
Slava Pestov 2b142dabae Re-organize a few things to reduce '-include=' image size 2009-10-23 04:32:17 -05:00
Doug Coleman 5b4c1aea5d run bootstrap and startup hooks inside a with-destructors. use &dispose instead of setting shutdown hooks in a couple of places 2009-10-20 18:26:10 -04:00
Slava Pestov d85d84697a Change data heap alignment to 16 bytes 2009-10-20 12:45:00 -05:00
Doug Coleman 6b6e56a179 change add-init-hook to add-startup-hook, new add-shutdown-hook word 2009-10-19 22:17:02 -04:00
Slava Pestov 107c96f642 vm: code heap compaction at runtime using compact-gc primitive 2009-10-16 11:39:35 -05:00
Slava Pestov 38d120f92e vm: rt-vm relocation now supports accessing a field directly 2009-10-14 19:24:23 -05:00
Keith Lazuka 405e5d015b docs: change $subsection to $subsections 2009-10-02 12:15:48 -04:00
Slava Pestov b14c683b32 vm: ignore 'declare' calls in non-optimizing compiler 2009-09-25 18:08:21 -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 46045c882e Disposables are now registered in a global disposables set. To take advantage of this, subclass disposable instead of providing a disposed slot and call new-disposable instead of new. tools.disposables defines two words, 'disposable.' and 'leaks', to help track down resource lifetime problems 2009-08-24 02:26:13 -05:00
Slava Pestov 5e8e83c645 bootstrap.image: smarter object folding; 500kb boot image size reduction on 64-bit 2009-08-22 17:56:58 -05:00
Joe Groff 93c93a392b Merge branch 'master' of git://factorcode.org/git/factor 2009-08-20 16:21:58 -05:00
Joe Groff 6ca45f07b4 load tools.deprecation from bootstrap.tools 2009-08-20 16:18:28 -05:00
Joe Groff 6089251574 move deprecation to tools.deprecation; load with bootstrap.tools 2009-08-20 16:17:36 -05:00
Slava Pestov a3631f1878 bootstrap.compiler: add -debug-compiler switch which loads compiler but doesn't compile any words 2009-08-20 03:48:03 -05:00
Doug Coleman 7c92ab1ea5 move if-zero etc to math, remove 1-/1+ from math 2009-08-14 14:27:23 -05:00
Doug Coleman 3f3d57032b Delete empty unit tests files, remove 1- and 1+, reorder IN: lines in a lot of places, minor refactoring 2009-08-13 19:21:44 -05:00
Slava Pestov e5114aa510 bootstrap.compiler.timing: fix load error 2009-08-03 13:34:28 -05:00
Slava Pestov c1c8424605 Compiler speedups 2009-08-02 09:16:21 -05:00
Slava Pestov 47920a7a0c Passing -profile-compiler switch to bootstrap collects timing information from optimizer passes 2009-07-30 21:27:52 -05:00
Slava Pestov e1caaca6df bootstrap.compiler: compile a few more words early, for a big bootstrap speed boost 2009-07-30 02:45:29 -05:00
Doug Coleman 407377fc98 rename peek -> last and update all usages 2009-05-25 16:38:33 -05:00
Slava Pestov a0eb60906d Fix even more usings 2009-05-16 10:45:17 -05:00
Slava Pestov fb6df472a2 Cleaning up USING: lists for new strict semantics 2009-05-14 16:54:16 -05:00
Slava Pestov 1877a5ddd5 bootstrap.stage2: strip out UTF16 encoding. It will only be loaded again if needed. This reduces deployed binary size 2009-05-12 04:02:08 -05:00
Slava Pestov 6e08e29a3a Remove compiled slot from quotations since its not needed 2009-05-12 03:09:15 -05:00
Slava Pestov 4ee4357e75 Fix negative zero smashing with bootstrap 2009-05-09 18:17:30 -05:00
Slava Pestov 4915e1ced7 Clean up bootstrap.image, and implement new calling convention for tail calls; tail call sites now have PICs 2009-05-06 22:04:01 -05:00