mit-scheme.git
12 years agoUse pollts if it is available but ppoll is not.
Taylor R Campbell [Mon, 3 Sep 2012 19:34:13 +0000 (19:34 +0000)]
Use pollts if it is available but ppoll is not.

Also change all references to the poll/select variants to use the UX_
names.

All four ways -- select, select & pselect, poll, poll & pollts --
tested on a NetBSD 6.99.4 kernel running a NetBSD 5.1 userland by
tweaking config.h by hand.

12 years agoUse ppoll() and pselect() when available.
Matt Birkholz [Mon, 3 Sep 2012 06:38:12 +0000 (23:38 -0700)]
Use ppoll() and pselect() when available.

Use them only when a test-select- primitive should block.  The old
poll()/select() functions continue to be used when not blocking,
e.g. in uxsock.c's do_connect().

12 years agoedwin: Fixed arrow keys in xterms.
Matt Birkholz [Mon, 3 Sep 2012 05:57:08 +0000 (22:57 -0700)]
edwin: Fixed arrow keys in xterms.

Added ts-enter/exit-keypad-mode and used them in console-enter/exit!.

12 years agoAdded --args and -- option parsers, and a command-line procedure.
Matt Birkholz [Fri, 31 Aug 2012 00:38:18 +0000 (17:38 -0700)]
Added --args and -- option parsers, and a command-line procedure.

12 years agoProcess all queued X events, not just one, if I/O is ready.
Taylor R Campbell [Wed, 29 Aug 2012 16:37:42 +0000 (16:37 +0000)]
Process all queued X events, not just one, if I/O is ready.

X-DISPLAY-PROCESS-EVENTS may have the side effect of moving events
from the kernel's pipe buffer into Xlib's queue, in which case after
processing one event there may be more events pending in the queue
but no more I/O pending on the pipe.  Before this change we failed to
report these other events in a timely fashion.

Do this both in Edwin's xterm.scm and the runtime's x11graph.scm.

12 years agoAdd cruft to confshared.h for ARM.
Taylor R Campbell [Tue, 28 Aug 2012 04:33:49 +0000 (04:33 +0000)]
Add cruft to confshared.h for ARM.

Works on the Raspberry Pi and the BeagleBone, which seem to be,
remarkably enough, the first ARM platforms on which anyone has ever
tried to run MIT Scheme.

12 years agoAsk Xlib for events before blocking on the display in x11graph.scm.
Taylor R Campbell [Tue, 28 Aug 2012 04:26:04 +0000 (04:26 +0000)]
Ask Xlib for events before blocking on the display in x11graph.scm.

Fixes race whereby Xlib may have queued up events already before we
ask the OS about I/O on the underlying file descriptor.  This can
cause us to fail to notice an event until a second one comes along,
so that, e.g., a newly created window will hang until you move the
mouse over it or similar.

12 years agoRemove alternate/optimized types of scode combinations from runtime.
Chris Hanson [Thu, 16 Aug 2012 06:48:36 +0000 (23:48 -0700)]
Remove alternate/optimized types of scode combinations from runtime.

12 years agoRemove now-unnecessary comment about 64-bit machines.
Chris Hanson [Thu, 16 Aug 2012 05:18:08 +0000 (22:18 -0700)]
Remove now-unnecessary comment about 64-bit machines.

12 years agoFix broken memory allocation on 32-bit OS X.
Chris Hanson [Thu, 16 Aug 2012 05:16:37 +0000 (22:16 -0700)]
Fix broken memory allocation on 32-bit OS X.

12 years agoAdd missing comma in fixobj.h in FIXED_OBJECTS_NAMES.
Taylor R Campbell [Sun, 12 Aug 2012 01:07:33 +0000 (01:07 +0000)]
Add missing comma in fixobj.h in FIXED_OBJECTS_NAMES.

Turned up while building on arm.  I guess there just must have always
been a zero in memory after this array in utabmd.c on every other
platform!

12 years agoAdd fmod as primitive FLONUM-MODULO.
Joe Marshall [Thu, 2 Aug 2012 17:34:45 +0000 (10:34 -0700)]
Add fmod as primitive FLONUM-MODULO.

12 years agomicrocode: Fix start in mmap_heap_malloc_search for __linux__.
Matt Birkholz [Fri, 13 Jul 2012 00:30:21 +0000 (17:30 -0700)]
microcode: Fix start in mmap_heap_malloc_search for __linux__.

The AppArmor hack moved and missed its chance to frob start.

12 years agoAdded warn-errors?, like ignore-errors, to turn errors into warnings.
Matt Birkholz [Thu, 12 Jul 2012 22:01:21 +0000 (15:01 -0700)]
Added warn-errors?, like ignore-errors, to turn errors into warnings.

12 years agotests/unit-testing.scm: Start report with a fresh-line.
Matt Birkholz [Thu, 12 Jul 2012 21:56:49 +0000 (14:56 -0700)]
tests/unit-testing.scm: Start report with a fresh-line.

12 years agotests/ffi/: De-register callback. Document asserts.
Matt Birkholz [Thu, 12 Jul 2012 21:55:38 +0000 (14:55 -0700)]
tests/ffi/: De-register callback.  Document asserts.

12 years agodoc/ffi/ffi.texinfo: Frob whitespace.
Matt Birkholz [Thu, 12 Jul 2012 21:49:15 +0000 (14:49 -0700)]
doc/ffi/ffi.texinfo: Frob whitespace.

12 years agoffi/Makefile-fragment: Always wrap stdin in a (begin ...)...
Matt Birkholz [Thu, 12 Jul 2012 21:48:15 +0000 (14:48 -0700)]
ffi/Makefile-fragment: Always wrap stdin in a (begin ...)...

12 years agoffi: Fix free to update malloced-aliens.
Matt Birkholz [Thu, 12 Jul 2012 21:46:25 +0000 (14:46 -0700)]
ffi: Fix free to update malloced-aliens.

12 years agoMerge branch 'ecraven-swank'
Taylor R Campbell [Wed, 11 Jul 2012 03:46:20 +0000 (03:46 +0000)]
Merge branch 'ecraven-swank'

12 years agoBasic support for describing things in swank.
Peter Feigl [Thu, 3 May 2012 07:58:44 +0000 (09:58 +0200)]
Basic support for describing things in swank.

* Describing
Adding basic support for SWANK:DESCRIBE-FUNCTION and
SWANK:DESCRIBE-SYMBOL.

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.