Joe Marshall [Mon, 21 May 2012 18:10:40 +0000 (11:10 -0700)]
Make ASSERT pass along arguments to ERROR.
Joe Marshall [Sat, 19 May 2012 17:29:08 +0000 (10:29 -0700)]
Remove undefined export.
Joe Marshall [Sat, 19 May 2012 17:28:04 +0000 (10:28 -0700)]
Echo output from CREF (if any).
Joe Marshall [Sat, 19 May 2012 17:25:56 +0000 (10:25 -0700)]
Wrap show-time around compilations. Add newline after disk-save.
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.
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.
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.
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.
Matt Birkholz [Wed, 9 May 2012 22:43:07 +0000 (15:43 -0700)]
bug #30546: Treat #f like WILD in directory-read pathname matching.
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".
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.
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
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.
Taylor R Campbell [Mon, 30 Apr 2012 23:33:32 +0000 (23:33 +0000)]
Fix typo in documentation for EVERY.
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".
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.
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.
Chris Hanson [Mon, 9 Apr 2012 05:54:39 +0000 (22:54 -0700)]
Fix typo.
Chris Hanson [Mon, 9 Apr 2012 05:54:20 +0000 (22:54 -0700)]
Fix fencepost error in level.
Chris Hanson [Sun, 25 Mar 2012 20:13:40 +0000 (13:13 -0700)]
Handle non-string value of *buffer-pstring*.
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
Chris Hanson [Sun, 25 Mar 2012 09:07:56 +0000 (02:07 -0700)]
Follow Emacs' advice to quote paren in first column.
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.
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
Taylor R Campbell [Sat, 24 Mar 2012 22:01:56 +0000 (22:01 +0000)]
Add ASSERT macro.
Chris Hanson [Sun, 11 Mar 2012 08:43:48 +0000 (00:43 -0800)]
Fix shell-script style issues.
Chris Hanson [Sun, 11 Mar 2012 08:40:37 +0000 (00:40 -0800)]
Eliminate bash-isms.
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.
Chris Hanson [Sun, 11 Mar 2012 08:20:59 +0000 (00:20 -0800)]
Update copyright years.
Chris Hanson [Sun, 11 Mar 2012 06:44:33 +0000 (22:44 -0800)]
Use shell script to conditionally update SVM file.
Chris Hanson [Sun, 11 Mar 2012 06:35:30 +0000 (22:35 -0800)]
Update version and copyright year.
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.
Chris Hanson [Sun, 11 Mar 2012 06:28:06 +0000 (22:28 -0800)]
Ignore svm build directory.
Chris Hanson [Sun, 11 Mar 2012 05:09:34 +0000 (21:09 -0800)]
Don't use fdatasync on OS X.
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.
Chris Hanson [Thu, 8 Mar 2012 07:09:06 +0000 (23:09 -0800)]
Prefer <termcap.h> to <term.h> if both are present.
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.
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'.
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.
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).
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.
Matt Birkholz [Wed, 7 Mar 2012 21:29:16 +0000 (14:29 -0700)]
Stage.sh: Keep .rtls,.laps with corresponding .mocs,.coms.
Matt Birkholz [Wed, 7 Mar 2012 21:28:05 +0000 (14:28 -0700)]
svm: Save a byte encoding (ea:stack-ref 0).
Matt Birkholz [Wed, 7 Mar 2012 21:27:06 +0000 (14:27 -0700)]
svm: Punt old (less interesting now) warnings.
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
Chris Hanson [Mon, 5 Mar 2012 01:50:39 +0000 (17:50 -0800)]
Include either <term.h> or <termcap.h> but not both.
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.
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.
Matt Birkholz [Wed, 29 Feb 2012 19:42:03 +0000 (12:42 -0700)]
svm: Add diagram of a compiled closure with 64 bit words.
Matt Birkholz [Wed, 29 Feb 2012 19:36:48 +0000 (12:36 -0700)]
svm: Port to 64 bit words.
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*).
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.
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.
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.
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.
Chris Hanson [Sun, 26 Feb 2012 09:12:39 +0000 (01:12 -0800)]
Simplify implementation of syntactic environments.
Chris Hanson [Sun, 26 Feb 2012 09:05:22 +0000 (01:05 -0800)]
Fix three duplicate definitions and one dangling reference.
Chris Hanson [Sun, 26 Feb 2012 09:04:42 +0000 (01:04 -0800)]
Fix dangling references.
Chris Hanson [Sun, 26 Feb 2012 08:33:59 +0000 (00:33 -0800)]
Fix broken pty support on Mac OS X 10.7.
Chris Hanson [Sat, 25 Feb 2012 06:45:00 +0000 (22:45 -0800)]
Always wrap multiple statements in stdin with (begin ...).
Chris Hanson [Sat, 25 Feb 2012 06:43:18 +0000 (22:43 -0800)]
Change var references for consistency.
Chris Hanson [Sat, 25 Feb 2012 06:28:34 +0000 (22:28 -0800)]
Don't fold argument check into expression.
Chris Hanson [Sat, 25 Feb 2012 06:23:17 +0000 (22:23 -0800)]
Fix think-o in previous change.
Matt Birkholz [Wed, 15 Feb 2012 20:03:54 +0000 (13:03 -0700)]
Syntax boot (LIAR/C) compiler with new runtime, sf, etc.
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.
Matt Birkholz [Wed, 15 Feb 2012 04:12:04 +0000 (21:12 -0700)]
Syntax new compiler with new runtime, sf, etc.
Matt Birkholz [Wed, 15 Feb 2012 01:19:26 +0000 (18:19 -0700)]
Remove unused variable from Prim_fixnum_lsh.
Matt Birkholz [Wed, 15 Feb 2012 01:18:57 +0000 (18:18 -0700)]
Typo in compiler-*.pkd installation.
Matt Birkholz [Tue, 14 Feb 2012 18:05:46 +0000 (11:05 -0700)]
svm: Include fixnum.h in fixnum.c.
Matt Birkholz [Tue, 14 Feb 2012 17:45:44 +0000 (10:45 -0700)]
svm: Mark stages of build with echoed progress commentary.
Matt Birkholz [Tue, 14 Feb 2012 17:34:17 +0000 (10:34 -0700)]
Fix stack address printing in Debug_Stack_Trace.
Matt Birkholz [Tue, 14 Feb 2012 17:32:00 +0000 (10:32 -0700)]
svm: Fix remote-link generators.
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.
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.
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.
Matt Birkholz [Tue, 14 Feb 2012 16:36:27 +0000 (09:36 -0700)]
svm: Fixed icall instruction, and cast in IMPORT_REGS.
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.
Joe Marshall [Sun, 12 Feb 2012 01:51:08 +0000 (17:51 -0800)]
Better unsyntaxing of lambda and extended-lambda.
Joe Marshall [Sun, 12 Feb 2012 01:41:01 +0000 (17:41 -0800)]
Avoid creating extended-lambdas just because of aux vars.
Joe Marshall [Sun, 12 Feb 2012 01:23:35 +0000 (17:23 -0800)]
Fix typo.
Joe Marshall [Sun, 12 Feb 2012 01:14:43 +0000 (17:14 -0800)]
Add lambda-interface, guarantees, and re-org code.
Joe Marshall [Sun, 12 Feb 2012 01:05:47 +0000 (17:05 -0800)]
Add codwlk handler for extended-lambda (defaults to lambda).
Joe Marshall [Sat, 11 Feb 2012 22:37:01 +0000 (14:37 -0800)]
Improve unsyntaxing of sequences.
Joe Marshall [Sat, 11 Feb 2012 19:52:56 +0000 (11:52 -0800)]
Merge branch 'master' of ssh://git.sv.gnu.org/srv/git/mit-scheme
Joe Marshall [Thu, 9 Feb 2012 04:39:26 +0000 (20:39 -0800)]
Use lambda-components* and lambda-bound rather than lambda-components.
Joe Marshall [Thu, 9 Feb 2012 04:07:24 +0000 (20:07 -0800)]
Use lambda-bound and lambda-body rather than lambda-components.
Matt Birkholz [Wed, 8 Feb 2012 04:48:06 +0000 (21:48 -0700)]
svm: Undo "fix" for copy-block.
There was nothing wrong with copy-block. Presumably define-code-
sequence took a separate pattern and "coding" for a reason...
Copy-block can remain the sole exercise of the separation...
Matt Birkholz [Tue, 7 Feb 2012 19:34:23 +0000 (12:34 -0700)]
svm: Fix copy-block instruction's parameter list.
Joe Marshall [Tue, 7 Feb 2012 18:42:30 +0000 (10:42 -0800)]
Add selectors for OPEN-BLOCKs, rewrite unscan-defines in direct style.
Joe Marshall [Tue, 7 Feb 2012 04:39:45 +0000 (20:39 -0800)]
Don't create LEXPRs or CLEXPRs.
Joe Marshall [Mon, 6 Feb 2012 22:38:59 +0000 (14:38 -0800)]
Fix how SF generates SCode for top level open blocks and procedure bodies.
Joe Marshall [Mon, 6 Feb 2012 22:27:26 +0000 (14:27 -0800)]
Merge branch 'master' of ssh://git.sv.gnu.org/srv/git/mit-scheme
Joe Marshall [Mon, 6 Feb 2012 19:55:19 +0000 (11:55 -0800)]
Use MAKE-LAMBDA-LIST rather than ad-hoc code.
Joe Marshall [Mon, 6 Feb 2012 19:54:23 +0000 (11:54 -0800)]
Add debugging tool.
Joe Marshall [Mon, 6 Feb 2012 16:55:54 +0000 (08:55 -0800)]
Add MAKE-LAMBDA-LIST.
Matt Birkholz [Mon, 6 Feb 2012 01:13:54 +0000 (18:13 -0700)]
svm: Fixed the return of trap results.
Matt Birkholz [Sun, 5 Feb 2012 22:46:25 +0000 (15:46 -0700)]
svm: Added compiler temporaries, for now, with warnings.
Matt Birkholz [Sat, 4 Feb 2012 01:23:03 +0000 (18:23 -0700)]
svm: Fix (load-option 'compiler).
Syntax compiler/machine/make, not compiler/make. The
compiler/make.bin|com symlinks seem to confuse sf/conditionally.
CREF is required when loading compiler-unx.pkd(?).
Matt Birkholz [Sat, 4 Feb 2012 01:13:31 +0000 (18:13 -0700)]
svm: workaround definition for pseudo-register-home
Matt Birkholz [Fri, 3 Feb 2012 23:40:24 +0000 (16:40 -0700)]
svm: IMPORT_REGS should restore dynamic-link.
The i386's interface_to_scheme restores this register from the
CC_STACK_ENV pushed by comutil_interrupt_dlink via
compiler_interrupt_common. comp_interrupt_restart has popped the
CC_STACK_ENV into the value register and interface_to_scheme takes it
from there.