Commit Graph

125 Commits (4bfcc86cc4c68b0c11d35da159f8da61c0247a8c)

Author SHA1 Message Date
Björn Lindqvist df3852f54a bootstrap.assembler: new word define-sub-primitives
This way all sub primitives can be declared at once which imo is cleaner.
2016-03-27 17:42:25 +02:00
Doug Coleman 92afdc3ad0 hashtables: rename ((tombstone)) to +tombstone+, ((empty)) to +empty+ 2016-03-25 03:13:27 -07:00
Björn Lindqvist b0a201165a bootstrap.image: docs 2016-03-01 17:32:43 +01:00
Björn Lindqvist 1a72f731e0 VM: now special-objects is used for -1, 0, 1 and t
The fields in the image_header aren't read or written to but I haven't
changed the format yet.
2015-12-10 10:22:38 +01:00
Björn Lindqvist 339b1b6466 VM: put the singletons t, -1, 0 and 1 in the special objects table
Having them there instead of as fields in the vm struct removes a bunch
of special handling. This commit just adds them and doesn't remove the
old ones to avoid potential chicken-and-egg bootstrap problems.
2015-12-09 21:31:13 +01:00
John Benediktsson e477f6996f Fix comments to be ! not #!. 2015-09-08 16:15:10 -07:00
Björn Lindqvist cee0b19324 VM: the ffi-signal-handler and ffi-leaf-signal-handler primitives are unused 2015-09-02 21:54:15 +02:00
Doug Coleman 886935f5d7 bootstrap.image: rename ' to prepare-object. it doesn't actually output the object, unlike what the comment said. 2015-08-15 21:21:03 -07:00
Björn Lindqvist dbb045e2cd bootstrap.image: better to use the special-object-count constant from kernel.private 2015-08-14 20:19:53 -07:00
Björn Lindqvist 8c70f04d41 bootstrap.image: bs-special-objects -> special-objects,
bootstrap.image.syntax vocab not needed anymore
2015-08-14 20:19:53 -07:00
Björn Lindqvist 9cf36e3dc2 bootstrap.image: attempt to remove the SPECIAL-OBJECT: table
Instead of using newly defined words as keys to the special-objects
hash being built, you can reuse the constants in kernel.private
2015-08-14 20:19:52 -07:00
John Benediktsson ceb75057da change ERROR: words from throw-foo back to foo. 2015-08-13 16:13:05 -07:00
Doug Coleman b6be8685c3 basis: ERROR: changes. 2015-08-13 03:20:39 -07:00
Doug Coleman 46587f8457 factor: arch -> arch-name. fix breakage caused by other patch. 2015-08-12 11:08:24 -05:00
Doug Coleman 351f51b72e bootstrap.image: images -> image-strings 2015-08-12 08:42:58 -05:00
Doug Coleman 00338f62f3 factor: put inline on same line as ; for experimentation 2015-08-10 12:55:27 -05:00
Björn Lindqvist 5e29aac0a6 Docs: various more compiler-related docs 2015-07-28 17:58:28 -07:00
Doug Coleman 80601662a3 bootstrap.image: rename image -> bootstrapping-image 2015-07-20 01:26:44 -07:00
John Benediktsson 5825099745 bootstrap.image: minor cleanup. 2015-07-16 11:09:17 -07:00
John Benediktsson f3a8546b23 core: get rid of some unnecessary wrappers. 2014-11-02 20:16:22 -08:00
Doug Coleman 9af269a864 bootstrap.image: Use error syntax. 2013-03-29 09:51:26 -07:00
John Benediktsson d25fb6161e bootstrap.image: 6-7% speedup to make-image. 2013-03-25 16:59:38 -07:00
Doug Coleman 5fab749dcc words: Change word -> last-word, set-word -> set-last-word. 2013-03-23 16:12:03 -07:00
John Benediktsson a9c165db4f bootstrap.image: adding make-my-image for @erg. 2012-09-21 11:35:46 -07:00
John Benediktsson 5c76cbb421 rename some words to x>sequence and sequence>x. 2012-07-23 21:28:38 -07:00
John Benediktsson 4e72d80256 Using "same?" in more places. 2012-07-21 10:22:44 -07:00
John Benediktsson 90d0951ada more use of H{ } make. 2012-07-19 11:24:45 -07:00
Joe Groff 16e510bc76 namespaces: rework so a singleton isn't necessary
Make global foldable, and make the underlying global object a hashtable wrapper. Also, use a tuple instead of a generic array for the global box type.
2011-11-28 18:25:27 -08:00
Joe Groff a1b730e867 namespaces: make set-global/get-global foldable
Store the globals hashtable as an array of boxes so that the key-to-reference mapping is constant. Use a singleton and an unfoldable "box-at" word so that get-global and set-global optimize to direct operations on the associated box when the variable name is a compile-time constant. Fixes #200.
2011-11-28 18:25:27 -08:00
Joe Groff 943596575a use radix literals 2011-11-23 19:03:40 -08:00
Joe Groff c31530caec vm: strip out call-counting profiler
This makes the separate "code" and "entry_point" fields in word and quotation redundant, so also remove them to reclaim an additional cell per word and quotation object, which should help with #318.
2011-11-10 16:01:07 -08:00
Doug Coleman c731dc6edb Rename lookup to lookup-word. 2011-11-06 16:00:00 -08:00
Joe Groff 6bb46a3f1e vm: always generate safepoints in jit
Even if there's no stack frame we still need to safepoint before leaving the function. Fixes #332.
2011-11-03 11:57:43 -07:00
Joe Groff d28845a1ef vm: reserve some more special-objects
Need a jit-safepoint object to deal with #332, and ffi-signal-handler words for immediate signal handling during FFI calls
2011-11-02 22:16:08 -07:00
Joe Groff 1386212d23 vm: dispatch signal handlers through subprimitive
We also need to save C ABI volatile registers before calling the signal handler in order to be able to reliably resume. Add signal-handler and leaf-signal-handler subprimitives to preserve volatile registers before invoking the signal handler C function.
2011-10-27 21:18:18 -07:00
Doug Coleman f9257959fd Rename class to class-of 2011-10-24 06:47:42 -05:00
John Benediktsson ed72c670b9 bootstrap.image: disable auto-use. Fixes #263. 2011-10-15 10:34:34 -07:00
John Benediktsson 6417f36397 namespaces: adding a "with-global" word to replace "global [ ] bind". 2011-10-13 17:21:59 -07:00
Slava Pestov 05f7419f2f Rework non-optimizing compiler backend to use compiler.codegen.relocation 2011-10-03 00:26:21 -07:00
Doug Coleman bf2a96e9e0 Remove Windows CE from core/ basis/ and build-support/
Rename the winnt singleton to windows in core/ basis/ extra/
Rename boot images winnt -> windows
Fixes #84.
2011-09-18 23:19:06 -05:00
John Benediktsson f8b4d2d2f9 bootstrap.image: use "parser-quiet? off" for consistency. 2011-09-07 10:50:54 -07:00
Doug Coleman 5fce2d0f27 Make "quiet" true by default. Disable quiet mode for listener, bootstrap, and deploy tool.
Move "quiet" to parser-quiet? in parser.notes. Change a few places where quiet was handle wrong.
2011-09-06 17:58:12 -07:00
Erik Charlebois 64252dbdbc 32 and 64 bit Linux PPC support 2011-05-23 23:36:14 -04: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
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 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 560c119cd2 vm: actually use context callstacks when running code 2010-03-26 22:44:43 -04:00
Slava Pestov fbf078d4b3 words: undefined error now contains the word in question 2010-02-03 23:11:23 +13:00