mit-scheme.git
12 years agoFix basic debugging problems.
Peter Feigl [Thu, 3 May 2012 07:45:45 +0000 (09:45 +0200)]
Fix basic debugging problems.

* Debugging
There are numerous problems, including no replies sent to messages and
incorrect replies.
- Added condition/report-string to the abort message.
- Added a DYNAMIC-WIND in the condition handler in the message handler
  for emacs-rex to ensure that the :abort message is always written,
  even when a restart is called.
- Added a global (fluid) binding *index* that is used to send the
  correct message index in the :debug message.

There are many problems remaining, to be tackled in a later commit.

12 years agoAdding directory support to swank.scm.
Peter Feigl [Thu, 3 May 2012 07:36:24 +0000 (09:36 +0200)]
Adding directory support to swank.scm.

* Directories
Added directory functions SWANK:DEFAULT-DIRECTORY and
SWANK:SET-DEFAULT-DIRECTORY for slime commands ,!d ,cd ,+d ,-d
,change-directory ,push-directory ,pop-directory ,pushd ,popd ,pwd

12 years agoAdding completion function swank:completions as an alias for swank:simple-completions.
Peter Feigl [Thu, 3 May 2012 07:32:00 +0000 (09:32 +0200)]
Adding completion function swank:completions as an alias for swank:simple-completions.

* Completion
Trying to auto-complete in the REPL raises condition "Unbound variable:
swank:completions". It seems swank added swank:completions in addition
(or instead of?) swank:simple-completions.

12 years agoAdd autodoc for procedures
Peter Feigl [Thu, 3 May 2012 07:31:24 +0000 (09:31 +0200)]
Add autodoc for procedures

* Autodoc
Actually implement swank:autodoc. It is called with a list form that contains the special symbol swank::%cursor-marker% somewhere to show the position of the cursor.
The new procedure FIND-STRING-BEFORE-SWANK-CURSOR-MARKER returns the symbol that starts the expression which contains the cursor as a string.
The new procedure PROCEDURE-PARAMETERS returns a list containing the function name and the list of parameters (as printed by PA) if symbol is bound to a function.
The new variable SWANK-EXTRA-DOCUMENTATION contains an (incomplete) list of "parameters" to special forms and macros.

Now we have working autodoc in the REPL and in Scheme buffers.

12 years agoUpdating swank.scm to work with current slime-cvs
Peter Feigl [Thu, 3 May 2012 07:28:43 +0000 (09:28 +0200)]
Updating swank.scm to work with current slime-cvs

* Startup Problems [when using Emacs setting (slime-setup '(slime-fancy))]
- M-x slime raises condition "Unbound variable: swank:swank-require"
  => fixed by defining swank:swank-require to return '()
- M-x slime shows "error in process filter: Can't find suitable coding-system"
  => fixed by adding :encoding (:coding-systems ("utf-8-unix" "iso-latin-1-unix")) to the connection info
- M-x slime raises condition "Unbound variable :conding-system" (which is due to all parameters being evaluated)
  => fixed by adding QUOTE-SPECIAL and mapping it over the parameters (quoting all keywords [symbols that start with a colon] and T and NIL)
- Typing an expression raises condition "Unbound variable: swank:autodoc"
  => fixed by defining swank:autodoc to return (list ':not-available 't)
- Slime complains about mismatched versions
  => fixed by changing :version in swank:connection-info to "2012-05-02" which matches slime-cvs

Now we have a working SLIME REPL again.

12 years agoMerge branch 'amd64-load-char-bug'
Taylor R Campbell [Wed, 11 Jul 2012 01:37:40 +0000 (01:37 +0000)]
Merge branch 'amd64-load-char-bug'

12 years agoFix syntax of MOVZX instruction in LOAD-CHAR-INTO-REGISTER.
Taylor R Campbell [Wed, 11 Jul 2012 01:35:10 +0000 (21:35 -0400)]
Fix syntax of MOVZX instruction in LOAD-CHAR-INTO-REGISTER.

Thanks, mejja.

We need to check this stuff at compile-time...blahhh.

12 years agoTry harder to mmap heap space.
Taylor R Campbell [Thu, 5 Jul 2012 00:57:00 +0000 (00:57 +0000)]
Try harder to mmap heap space.

Using mmap rather than malloc is important because we need read,
write, and execute privileges for the pages.

Some day, maybe we can change that requirement, but that day will not
be for a while.

12 years agoRework mmap_heap_malloc.
Taylor R Campbell [Wed, 4 Jul 2012 23:05:37 +0000 (23:05 +0000)]
Rework mmap_heap_malloc.

Don't do mmap(MAP_FIXED) unless we know the address space is free.
Otherwise it will clobber whatever else was there, including, say,
the text segment of the microcode!

12 years agoMerge branch 'master' of ssh://git.sv.gnu.org/srv/git/mit-scheme
Taylor R Campbell [Wed, 4 Jul 2012 23:02:39 +0000 (23:02 +0000)]
Merge branch 'master' of ssh://git.sv.gnu.org/srv/git/mit-scheme

12 years agoMake LETREC and LETREC* be ordinary macros. Avoid adding integrate declarations...
Joe Marshall [Tue, 5 Jun 2012 02:58:35 +0000 (19:58 -0700)]
Make LETREC and LETREC* be ordinary macros.  Avoid adding integrate declarations to procedures with no arguments.

12 years agoUse quote instead of tick mark.
Joe Marshall [Thu, 24 May 2012 18:46:42 +0000 (11:46 -0700)]
Use quote instead of tick mark.

12 years agoUse lambda-bound? procedure.
Joe Marshall [Thu, 24 May 2012 18:44:02 +0000 (11:44 -0700)]
Use lambda-bound? procedure.

12 years agoAdd lambda-bound? procedure.
Joe Marshall [Thu, 24 May 2012 18:42:03 +0000 (11:42 -0700)]
Add lambda-bound? procedure.

12 years agoGet rid of fluid variable by adding an argument. Better unsyntaxing of global refere...
Joe Marshall [Thu, 24 May 2012 16:24:11 +0000 (09:24 -0700)]
Get rid of fluid variable by adding an argument.  Better unsyntaxing of global references.

12 years agoAdd way to dump macroexpanded and optimized output from SF.
Joe Marshall [Wed, 23 May 2012 17:41:55 +0000 (10:41 -0700)]
Add way to dump macroexpanded and optimized output from SF.

12 years agoFix unsyntaxing of open-blocks and block-declarations.
Joe Marshall [Mon, 21 May 2012 18:24:38 +0000 (11:24 -0700)]
Fix unsyntaxing of open-blocks and block-declarations.

12 years agoMake ASSERT pass along arguments to ERROR.
Joe Marshall [Mon, 21 May 2012 18:10:40 +0000 (11:10 -0700)]
Make ASSERT pass along arguments to ERROR.

12 years agoRemove undefined export.
Joe Marshall [Sat, 19 May 2012 17:29:08 +0000 (10:29 -0700)]
Remove undefined export.

12 years agoEcho output from CREF (if any).
Joe Marshall [Sat, 19 May 2012 17:28:04 +0000 (10:28 -0700)]
Echo output from CREF (if any).

12 years agoWrap show-time around compilations. Add newline after disk-save.
Joe Marshall [Sat, 19 May 2012 17:25:56 +0000 (10:25 -0700)]
Wrap show-time around compilations.  Add newline after disk-save.

12 years agoFix names of environment variables MITSCHEME_HEAP_SIZE and MITSCHEME_STACK_SIZE....
Joe Marshall [Fri, 18 May 2012 16:24:56 +0000 (09:24 -0700)]
Fix names of environment variables MITSCHEME_HEAP_SIZE and MITSCHEME_STACK_SIZE.  Remove trailing whitespace.

12 years agoFix commit 339824b so %channel-read returns no-data instead of eof.
Matt Birkholz [Wed, 16 May 2012 21:26:32 +0000 (14:26 -0700)]
Fix commit 339824b so %channel-read returns no-data instead of eof.

12 years agoNew runtime ASSERT syntax conflicts with local assert binding.
Matt Birkholz [Wed, 9 May 2012 22:55:43 +0000 (15:55 -0700)]
New runtime ASSERT syntax conflicts with local assert binding.

Rename the assert procedure VALUE-ASSERT, like PREDICATE-ASSERTION.

12 years agomicrocode/configure.ac: error if --with-termcap=no on Unix.
Matt Birkholz [Wed, 9 May 2012 22:45:42 +0000 (15:45 -0700)]
microcode/configure.ac: error if --with-termcap=no on Unix.

The build will fail without a termcap-ish library in LIBS because of
references to e.g. tgetent in uxtty.c.

12 years agobug #30546: Treat #f like WILD in directory-read pathname matching.
Matt Birkholz [Wed, 9 May 2012 22:43:07 +0000 (15:43 -0700)]
bug #30546: Treat #f like WILD in directory-read pathname matching.

12 years agobug#36430: Write should escape symbols that look special.
Matt Birkholz [Tue, 8 May 2012 18:41:27 +0000 (11:41 -0700)]
bug#36430: Write should escape symbols that look special.

(write '|#f|) now emits "|#f|", not "#f".

12 years agoGuard against other threads unwinding block-on-io-descriptor.
Matt Birkholz [Fri, 4 May 2012 20:58:14 +0000 (13:58 -0700)]
Guard against other threads unwinding block-on-io-descriptor.

This only arises when another thread uses within-continuation to
unwind block-on-io-descriptor.  Such an unwinding can leave the
console-thread waiting for nothing.  With no other io-registrations
nor runnable threads, the runtime busy-waits.

12 years agoMerge branch 'master' of git.sv.gnu.org:/srv/git/mit-scheme
Chris Hanson [Fri, 4 May 2012 08:02:26 +0000 (01:02 -0700)]
Merge branch 'master' of git.sv.gnu.org:/srv/git/mit-scheme

12 years agoFix thinko: call-with-input-octets doesn't handle sub-range arguments.
Chris Hanson [Fri, 4 May 2012 08:01:55 +0000 (01:01 -0700)]
Fix thinko: call-with-input-octets doesn't handle sub-range arguments.

12 years agoFix duplicated `creates' in SIGNAL-CONDITION documentation.
Taylor R Campbell [Wed, 2 May 2012 14:29:11 +0000 (14:29 +0000)]
Fix duplicated `creates' in SIGNAL-CONDITION documentation.

Thanks, ecraven.  (Also, thanks for the previous typo fix too.)

12 years agoFix typo in documentation for EVERY.
Taylor R Campbell [Mon, 30 Apr 2012 23:33:32 +0000 (23:33 +0000)]
Fix typo in documentation for EVERY.

12 years agoFixed channel-open to unblock threads and update the io-registry...
Matt Birkholz [Mon, 30 Apr 2012 04:04:44 +0000 (21:04 -0700)]
Fixed channel-open to unblock threads and update the io-registry...

...using a new procedure: %deregister-io-descriptor.  Also tightened
up channel-read and channel-write to check, within an atomic section,
that the port has not been closed.

If a closed channel is left in the io-registry, wait-for-io piles up
error levels because test-select-registry returns an "illegal mode".

12 years agoedwin: Reworked get-console-input-operations.
Matt Birkholz [Sat, 28 Apr 2012 18:45:46 +0000 (11:45 -0700)]
edwin: Reworked get-console-input-operations.

Fixed the loop(s) to NOT block when incomplete-pending.  They must
busy-wait for half a second.  Thus the command key prefix ESC is
correctly echoed.

Also followed the example of get-xterm-input-operations, using
set-interrupt-enables! to implement an atomic section within which the
Edwin thread can test all event sources and block iff they are all
empty.  Thus ONE loop tests sources and matches special keys, and uses
the new procedure %channel-read, a version of channel-read that can be
unblocked by an interrupt or process status change.

12 years agoFixed typo in doc string for NEW-FILE-OPEN-EXCLUSIVE-OUTPUT-CHANNEL.
Arthur A. Gleckler [Sat, 14 Apr 2012 23:19:32 +0000 (16:19 -0700)]
Fixed typo in doc string for NEW-FILE-OPEN-EXCLUSIVE-OUTPUT-CHANNEL.

12 years agoFix typo.
Chris Hanson [Mon, 9 Apr 2012 05:54:39 +0000 (22:54 -0700)]
Fix typo.

12 years agoFix fencepost error in level.
Chris Hanson [Mon, 9 Apr 2012 05:54:20 +0000 (22:54 -0700)]
Fix fencepost error in level.

12 years agoHandle non-string value of *buffer-pstring*.
Chris Hanson [Sun, 25 Mar 2012 20:13:40 +0000 (13:13 -0700)]
Handle non-string value of *buffer-pstring*.

12 years agoMerge branch 'master' of git.sv.gnu.org:/srv/git/mit-scheme
Chris Hanson [Sun, 25 Mar 2012 09:08:20 +0000 (02:08 -0700)]
Merge branch 'master' of git.sv.gnu.org:/srv/git/mit-scheme

12 years agoFollow Emacs' advice to quote paren in first column.
Chris Hanson [Sun, 25 Mar 2012 09:07:56 +0000 (02:07 -0700)]
Follow Emacs' advice to quote paren in first column.

12 years agoSwank might use t for the true object; define it to the symbol T when
Chris Hanson [Sun, 25 Mar 2012 09:01:16 +0000 (02:01 -0700)]
Swank might use t for the true object; define it to the symbol T when
evaluating swank exprs.

12 years agoMerge branch 'master' of ssh://git.sv.gnu.org/srv/git/mit-scheme
Taylor R Campbell [Sat, 24 Mar 2012 22:07:20 +0000 (22:07 +0000)]
Merge branch 'master' of ssh://git.sv.gnu.org/srv/git/mit-scheme

12 years agoAdd ASSERT macro.
Taylor R Campbell [Sat, 24 Mar 2012 22:01:56 +0000 (22:01 +0000)]
Add ASSERT macro.

12 years agoFix shell-script style issues.
Chris Hanson [Sun, 11 Mar 2012 08:43:48 +0000 (00:43 -0800)]
Fix shell-script style issues.

12 years agoEliminate bash-isms.
Chris Hanson [Sun, 11 Mar 2012 08:40:37 +0000 (00:40 -0800)]
Eliminate bash-isms.

12 years agoChange get_fasl_file to set a variable rather than echo the name.
Chris Hanson [Sun, 11 Mar 2012 08:30:25 +0000 (00:30 -0800)]
Change get_fasl_file to set a variable rather than echo the name.

12 years agoUpdate copyright years.
Chris Hanson [Sun, 11 Mar 2012 08:20:59 +0000 (00:20 -0800)]
Update copyright years.

12 years agoUse shell script to conditionally update SVM file.
Chris Hanson [Sun, 11 Mar 2012 06:44:33 +0000 (22:44 -0800)]
Use shell script to conditionally update SVM file.

12 years agoUpdate version and copyright year.
Chris Hanson [Sun, 11 Mar 2012 06:35:30 +0000 (22:35 -0800)]
Update version and copyright year.

12 years agoUpdate to do all standard directories and to translate more than one
Chris Hanson [Sun, 11 Mar 2012 06:28:56 +0000 (22:28 -0800)]
Update to do all standard directories and to translate more than one
copyright if present.

12 years agoIgnore svm build directory.
Chris Hanson [Sun, 11 Mar 2012 06:28:06 +0000 (22:28 -0800)]
Ignore svm build directory.

12 years agoDon't use fdatasync on OS X.
Chris Hanson [Sun, 11 Mar 2012 05:09:34 +0000 (21:09 -0800)]
Don't use fdatasync on OS X.

12 years agoAlways wrap stdin in a (begin ...); otherwise expressions continue evaluating after...
Chris Hanson [Thu, 8 Mar 2012 07:21:47 +0000 (23:21 -0800)]
Always wrap stdin in a (begin ...); otherwise expressions continue evaluating after errors.

12 years agoPrefer <termcap.h> to <term.h> if both are present.
Chris Hanson [Thu, 8 Mar 2012 07:09:06 +0000 (23:09 -0800)]
Prefer <termcap.h> to <term.h> if both are present.

12 years agosvm: Remove setjmp from execute_instruction.
Matt Birkholz [Thu, 8 Mar 2012 04:06:24 +0000 (21:06 -0700)]
svm: Remove setjmp from execute_instruction.

Trade some debuggability for significantly better performance.

12 years agosvm: Use the svm1 machine to compile-everything.
Matt Birkholz [Thu, 8 Mar 2012 03:47:30 +0000 (20:47 -0700)]
svm: Use the svm1 machine to compile-everything.

This takes hours, but exercises the boot-compiler, which can compile
by-procedures.  Added timestamps to the progress notes.  The option to
cross-compile everything is available by defining FAST, e.g. `make
FAST=1'.

12 years agosvm: Fix generate/remote-link and generate/remote-links.
Matt Birkholz [Thu, 8 Mar 2012 03:45:15 +0000 (20:45 -0700)]
svm: Fix generate/remote-link and generate/remote-links.

Made generate/remote-links gc-wary.

12 years agosvm: Fix COMPILER_TEMP_SIZE to 2.
Matt Birkholz [Thu, 8 Mar 2012 03:40:02 +0000 (20:40 -0700)]
svm: Fix COMPILER_TEMP_SIZE to 2.

On x86-64 sizeof(double)/sizeof(SCHEME_OBJECT) is 1, but
svm/machine.scm expects it to be 2 (as on i386).

12 years agosvm: Added 32bit offsets to explicit-coding-type "address".
Matt Birkholz [Thu, 8 Mar 2012 03:33:33 +0000 (20:33 -0700)]
svm: Added 32bit offsets to explicit-coding-type "address".

Compilation of win32/wf_user.bin produces block offsets like #x11168
and #x10a38.

12 years agoStage.sh: Keep .rtls,.laps with corresponding .mocs,.coms.
Matt Birkholz [Wed, 7 Mar 2012 21:29:16 +0000 (14:29 -0700)]
Stage.sh: Keep .rtls,.laps with corresponding .mocs,.coms.

12 years agosvm: Save a byte encoding (ea:stack-ref 0).
Matt Birkholz [Wed, 7 Mar 2012 21:28:05 +0000 (14:28 -0700)]
svm: Save a byte encoding (ea:stack-ref 0).

12 years agosvm: Punt old (less interesting now) warnings.
Matt Birkholz [Wed, 7 Mar 2012 21:27:06 +0000 (14:27 -0700)]
svm: Punt old (less interesting now) warnings.

12 years agoMerge branch 'master' of git.sv.gnu.org:/srv/git/mit-scheme
Chris Hanson [Mon, 5 Mar 2012 01:50:58 +0000 (17:50 -0800)]
Merge branch 'master' of git.sv.gnu.org:/srv/git/mit-scheme

12 years agoInclude either <term.h> or <termcap.h> but not both.
Chris Hanson [Mon, 5 Mar 2012 01:50:39 +0000 (17:50 -0800)]
Include either <term.h> or <termcap.h> but not both.

12 years agoFix fencepost typo in integer_shift_left.
Taylor R Campbell [Fri, 2 Mar 2012 19:34:50 +0000 (19:34 +0000)]
Fix fencepost typo in integer_shift_left.

Now (fixnum? (expt 2 24)) returns #t as it should.

12 years agosvm: Fix load-non-pointer to handle small negative fixnums.
Matt Birkholz [Wed, 29 Feb 2012 19:43:16 +0000 (12:43 -0700)]
svm: Fix load-non-pointer to handle small negative fixnums.

With 64 bit words the negative fixnums need sign-extension.  Punt the
unsigned variant of load-immediate.

12 years agosvm: Add diagram of a compiled closure with 64 bit words.
Matt Birkholz [Wed, 29 Feb 2012 19:42:03 +0000 (12:42 -0700)]
svm: Add diagram of a compiled closure with 64 bit words.

12 years agosvm: Port to 64 bit words.
Matt Birkholz [Wed, 29 Feb 2012 19:36:48 +0000 (12:36 -0700)]
svm: Port to 64 bit words.

12 years agosvm: Widen invocation:lookup, :cache-reference patterns.
Matt Birkholz [Wed, 29 Feb 2012 19:36:13 +0000 (12:36 -0700)]
svm: Widen invocation:lookup, :cache-reference patterns.

The (REGISTER (?...)) patterns work for the entire system, but these
rules provide the same generality as those in other machines' lapgens.
Presume that interpreter-call-temporaries can be allocated in any
order (punting let*).

12 years agoExit with non-zero status when Aborting!: out of memory...
Matt Birkholz [Wed, 29 Feb 2012 19:00:02 +0000 (12:00 -0700)]
Exit with non-zero status when Aborting!: out of memory...

...when run with --batch-mode.  This correctly signals to make(1) that
there was an error.

I used nearest-cmdl/batch-mode? though I wonder what a "batch level"
is.  Such a thing should probably cmdl-interrupt/abort-previous rather
than %exit, but this short-circuits the whole gc-clean recovery
effort.  I find similar yuck (a call to %exit) in ttyio.scm's
operation/read-char.

12 years agoSorry; re-fixed Debug_Stack_Trace again.
Matt Birkholz [Sun, 26 Feb 2012 17:14:28 +0000 (10:14 -0700)]
Sorry; re-fixed Debug_Stack_Trace again.

The 20 year old code lies!  STACK_LOC(0) *is* the top-of-stack.
(Free[0] is not a valid object, but that is a different register.)
So... the stack slot address must be printed *before* the _POP.
I tried to pop the last commit, but apparently we have
receive.denyNonFastForwards at Savannah.

12 years agoUnfix "fix" to stack address printing in Debug_Stack_Trace.
Matt Birkholz [Sun, 26 Feb 2012 16:46:56 +0000 (09:46 -0700)]
Unfix "fix" to stack address printing in Debug_Stack_Trace.

Silly me; STACK_LOC(0) is *not* a valid object.  I don't know what gdb
was trying to tell me... but 20 year old code doesn't lie.

12 years agoFix bug: missed one of the places that needed env->senv conversion.
Chris Hanson [Sun, 26 Feb 2012 12:23:06 +0000 (04:23 -0800)]
Fix bug: missed one of the places that needed env->senv conversion.

12 years agoSimplify implementation of syntactic environments.
Chris Hanson [Sun, 26 Feb 2012 09:12:39 +0000 (01:12 -0800)]
Simplify implementation of syntactic environments.

12 years agoFix three duplicate definitions and one dangling reference.
Chris Hanson [Sun, 26 Feb 2012 09:05:22 +0000 (01:05 -0800)]
Fix three duplicate definitions and one dangling reference.

12 years agoFix dangling references.
Chris Hanson [Sun, 26 Feb 2012 09:04:42 +0000 (01:04 -0800)]
Fix dangling references.

12 years agoFix broken pty support on Mac OS X 10.7.
Chris Hanson [Sun, 26 Feb 2012 08:33:59 +0000 (00:33 -0800)]
Fix broken pty support on Mac OS X 10.7.

12 years agoAlways wrap multiple statements in stdin with (begin ...).
Chris Hanson [Sat, 25 Feb 2012 06:45:00 +0000 (22:45 -0800)]
Always wrap multiple statements in stdin with (begin ...).

12 years agoChange var references for consistency.
Chris Hanson [Sat, 25 Feb 2012 06:43:18 +0000 (22:43 -0800)]
Change var references for consistency.

12 years agoDon't fold argument check into expression.
Chris Hanson [Sat, 25 Feb 2012 06:28:34 +0000 (22:28 -0800)]
Don't fold argument check into expression.

12 years agoFix think-o in previous change.
Chris Hanson [Sat, 25 Feb 2012 06:23:17 +0000 (22:23 -0800)]
Fix think-o in previous change.

12 years agoSyntax boot (LIAR/C) compiler with new runtime, sf, etc.
Matt Birkholz [Wed, 15 Feb 2012 20:03:54 +0000 (13:03 -0700)]
Syntax boot (LIAR/C) compiler with new runtime, sf, etc.

12 years agoffi: Give up trying to make %radix a constant.
Matt Birkholz [Wed, 15 Feb 2012 19:55:51 +0000 (12:55 -0700)]
ffi: Give up trying to make %radix a constant.

When compiling to C on a 64bit host, the wrong constant is chosen.

12 years agoSyntax new compiler with new runtime, sf, etc.
Matt Birkholz [Wed, 15 Feb 2012 04:12:04 +0000 (21:12 -0700)]
Syntax new compiler with new runtime, sf, etc.

12 years agoRemove unused variable from Prim_fixnum_lsh.
Matt Birkholz [Wed, 15 Feb 2012 01:19:26 +0000 (18:19 -0700)]
Remove unused variable from Prim_fixnum_lsh.

12 years agoTypo in compiler-*.pkd installation.
Matt Birkholz [Wed, 15 Feb 2012 01:18:57 +0000 (18:18 -0700)]
Typo in compiler-*.pkd installation.

12 years agosvm: Include fixnum.h in fixnum.c.
Matt Birkholz [Tue, 14 Feb 2012 18:05:46 +0000 (11:05 -0700)]
svm: Include fixnum.h in fixnum.c.

12 years agosvm: Mark stages of build with echoed progress commentary.
Matt Birkholz [Tue, 14 Feb 2012 17:45:44 +0000 (10:45 -0700)]
svm: Mark stages of build with echoed progress commentary.

12 years agoFix stack address printing in Debug_Stack_Trace.
Matt Birkholz [Tue, 14 Feb 2012 17:34:17 +0000 (10:34 -0700)]
Fix stack address printing in Debug_Stack_Trace.

12 years agosvm: Fix remote-link generators.
Matt Birkholz [Tue, 14 Feb 2012 17:32:00 +0000 (10:32 -0700)]
svm: Fix remote-link generators.

12 years agosvm: Add clear-map! before invocation:special-primitive.
Matt Birkholz [Tue, 14 Feb 2012 17:00:33 +0000 (10:00 -0700)]
svm: Add clear-map! before invocation:special-primitive.

Also, fix order of float arguments in rule for flonum constants.
And simplify the POP-RETURN rule.

12 years agosvm: Fixed signedness of some fixnum instructions.
Matt Birkholz [Tue, 14 Feb 2012 16:53:59 +0000 (09:53 -0700)]
svm: Fixed signedness of some fixnum instructions.

Included code from liarc.h by moving it to fixnum.h.  Included
fixnum.h in fixnum.c and used it to replace near-identical code.

12 years agosvm: Added "product" instruction, i.e. Mul().
Matt Birkholz [Tue, 14 Feb 2012 16:45:55 +0000 (09:45 -0700)]
svm: Added "product" instruction, i.e. Mul().

Using this new instruction only when overflow detection is required.

12 years agosvm: Fixed icall instruction, and cast in IMPORT_REGS.
Matt Birkholz [Tue, 14 Feb 2012 16:36:27 +0000 (09:36 -0700)]
svm: Fixed icall instruction, and cast in IMPORT_REGS.

12 years agoAdd LETREC*. Convert LETREC to R6RS semantics. Use internal definition for expansio...
Joe Marshall [Mon, 13 Feb 2012 21:04:49 +0000 (13:04 -0800)]
Add LETREC*.  Convert LETREC to R6RS semantics.  Use internal definition for expansion of named let.

12 years agoBetter unsyntaxing of lambda and extended-lambda.
Joe Marshall [Sun, 12 Feb 2012 01:51:08 +0000 (17:51 -0800)]
Better unsyntaxing of lambda and extended-lambda.

12 years agoAvoid creating extended-lambdas just because of aux vars.
Joe Marshall [Sun, 12 Feb 2012 01:41:01 +0000 (17:41 -0800)]
Avoid creating extended-lambdas just because of aux vars.

12 years agoFix typo.
Joe Marshall [Sun, 12 Feb 2012 01:23:35 +0000 (17:23 -0800)]
Fix typo.

12 years agoAdd lambda-interface, guarantees, and re-org code.
Joe Marshall [Sun, 12 Feb 2012 01:14:43 +0000 (17:14 -0800)]
Add lambda-interface, guarantees, and re-org code.

12 years agoAdd codwlk handler for extended-lambda (defaults to lambda).
Joe Marshall [Sun, 12 Feb 2012 01:05:47 +0000 (17:05 -0800)]
Add codwlk handler for extended-lambda (defaults to lambda).