mit-scheme.git
28 years agoInitial revision
Stephen Adams [Tue, 30 Jul 1996 19:00:42 +0000 (19:00 +0000)]
Initial revision

28 years agoFixed a bug where stackopt was getting confused if the
Stephen Adams [Tue, 30 Jul 1996 18:23:53 +0000 (18:23 +0000)]
Fixed a bug where stackopt was getting confused if the
%make-stack-closure operator was integrated as a (non-operator)
%constant.

28 years agoFixed arity and formatting problems.
Stephen Adams [Tue, 30 Jul 1996 16:54:58 +0000 (16:54 +0000)]
Fixed arity and formatting problems.

28 years agoAdded %COMPILED-CODE-SUPPORT:SIGNAL-ERROR-IN-PRIMITIVE.
Stephen Adams [Tue, 30 Jul 1996 16:26:51 +0000 (16:26 +0000)]
Added %COMPILED-CODE-SUPPORT:SIGNAL-ERROR-IN-PRIMITIVE.

28 years agoAdded COMPILED-CODE-SUPPORT:NONRESTARTABLE-CONTINUATION.
Stephen Adams [Tue, 30 Jul 1996 00:12:55 +0000 (00:12 +0000)]
Added COMPILED-CODE-SUPPORT:NONRESTARTABLE-CONTINUATION.

28 years agoChanged coercion code to use the global procedure
Stephen Adams [Sat, 27 Jul 1996 05:13:49 +0000 (05:13 +0000)]
Changed coercion code to use the global procedure
COERCE-TO-COMPILED-PROCEDURE rather than the primitive.

28 years agoRe-instated the iterative version of MAP.
Stephen Adams [Sat, 27 Jul 1996 04:46:06 +0000 (04:46 +0000)]
Re-instated the iterative version of MAP.
I keep getting bitten by long lists.

28 years agoAdded a flag to TYPE:USER-DESCRIPTION.
Stephen Adams [Sat, 27 Jul 1996 03:31:38 +0000 (03:31 +0000)]
Added a flag to TYPE:USER-DESCRIPTION.

28 years ago*** empty log message ***
Stephen Adams [Sat, 27 Jul 1996 03:30:17 +0000 (03:30 +0000)]
*** empty log message ***

28 years agoAdded info for %RECORD.
Stephen Adams [Sat, 27 Jul 1996 03:29:10 +0000 (03:29 +0000)]
Added info for %RECORD.

28 years agoTweaked integration.
Stephen Adams [Sat, 27 Jul 1996 02:43:15 +0000 (02:43 +0000)]
Tweaked integration.

28 years agoAvoid interrupt checks due solely to tailing into an ordinary
Stephen Adams [Fri, 26 Jul 1996 23:43:03 +0000 (23:43 +0000)]
Avoid interrupt checks due solely to tailing into an ordinary
(i.e. not apply-like) primitive.

28 years agoFixed logic bug with +0 and +1 arity encodings.
Stephen Adams [Fri, 26 Jul 1996 23:39:26 +0000 (23:39 +0000)]
Fixed logic bug with +0 and +1 arity encodings.
Added a missing else to a case expression.

28 years agomake random-state-tag define-integrable.
Stephen Adams [Fri, 26 Jul 1996 20:00:31 +0000 (20:00 +0000)]
make random-state-tag define-integrable.

28 years agoReorganized and extended code.
Stephen Adams [Fri, 26 Jul 1996 19:57:38 +0000 (19:57 +0000)]
Reorganized and extended code.

28 years agoFixed load sequence bug.
Stephen Adams [Fri, 26 Jul 1996 14:58:55 +0000 (14:58 +0000)]
Fixed load sequence bug.

28 years agoInitial cut at writing COERCE-TO-COMPILED-PROCEDURE in Scheme. The
Stephen Adams [Fri, 26 Jul 1996 14:38:26 +0000 (14:38 +0000)]
Initial cut at writing COERCE-TO-COMPILED-PROCEDURE in Scheme.  The
next change will be to make the compiler generate calls to this
procedure rather than the primitive COERCE-TO-COMPILED-PROCEDURE,
which should result in both faster generation and invocation of
trampolines.

Eventually we might make the linker use this code too.

The code is a bit hairy and needs special initialization, hence the
changes in make.scm.

28 years agoInitial revision
Stephen Adams [Fri, 26 Jul 1996 14:25:07 +0000 (14:25 +0000)]
Initial revision

28 years agoTweaked format of time reports so that the non-gc process time is
Stephen Adams [Fri, 26 Jul 1996 01:01:44 +0000 (01:01 +0000)]
Tweaked format of time reports so that the non-gc process time is
always first.

28 years agoFixed bug: LEXPR primitive were being mistaken as having the wrong
Stephen Adams [Fri, 26 Jul 1996 00:59:26 +0000 (00:59 +0000)]
Fixed bug: LEXPR primitive were being mistaken as having the wrong
arity and thus were being applied via short_circuit_apply_n.

28 years agoAdded new stack frame type for preservation frames (restore-regs).
Stephen Adams [Fri, 26 Jul 1996 00:36:11 +0000 (00:36 +0000)]
Added new stack frame type for preservation frames (restore-regs).
Added a debugging-info method.

Changed the illegal-arg error handler for primitive procedures to
avoid using retry restarts when the primitive signalled a type or
range error when called from compiled code.  This is necessary because
the compiler assumes that if it calls a primitive just to raise an
error then teh primitive will not return.  This assumption allows type
inference to eliminate furthur checks.

In order to stop the debugger returning a value, the primitive should
be called `indirectly' via another compiler procedure which refuses to
return.  I.e instead of compiling the error CAR operation as
INVOKE:PRIMITIVE

  (#[primitive-procedure car] x)

call it like this:

  (signal-primitive-error '#[primitive-procedure car] x)

where SIGNAL-PRIMITIVE-ERROR is compiled like this:

  (define (signal-primitive-error primitive . arguments)
     (apply primitive arguments)
     (error "..."))

28 years agoFixed missing argument bug.
Stephen Adams [Wed, 24 Jul 1996 23:42:04 +0000 (23:42 +0000)]
Fixed missing argument bug.

28 years agoFixed typo.
Stephen Adams [Wed, 24 Jul 1996 22:56:34 +0000 (22:56 +0000)]
Fixed typo.

28 years agoFixed a bug with constant folding binary operators: the continuation
Stephen Adams [Wed, 24 Jul 1996 22:32:30 +0000 (22:32 +0000)]
Fixed a bug with constant folding binary operators: the continuation
was being ignored.

Added a whole bunch of code to rewrite return (and calls with few
arguments) sequences that are passing an inlined predicate or
conditional expression.
For limited cases, for example, returning (null? x) or tail-calling, e.g.
  (f (if (pair? x) (car x) #F))
there is small benefit.

28 years agoMade extra arguments in some calls (e.g. %internal-apply) explicit to
Stephen Adams [Wed, 24 Jul 1996 17:07:07 +0000 (17:07 +0000)]
Made extra arguments in some calls (e.g. %internal-apply) explicit to
COMPAT/REWRITE-CALL/SPLIT.

28 years agoAdded code so that %RECORD-REF/SET! at known index 0 does not do a
Stephen Adams [Wed, 24 Jul 1996 15:11:44 +0000 (15:11 +0000)]
Added code so that %RECORD-REF/SET! at known index 0 does not do a
range check.  %RECORDs are always created with at least a descriptor
slot.

28 years agoImproved hashing of flonums.
Stephen Adams [Wed, 24 Jul 1996 04:44:06 +0000 (04:44 +0000)]
Improved hashing of flonums.

28 years agoMade CSE of predicate arguments only occur for REGISTER expressions.
Stephen Adams [Wed, 24 Jul 1996 04:03:51 +0000 (04:03 +0000)]
Made CSE of predicate arguments only occur for REGISTER expressions.
This allows pre-cse-rewriting to block cheap arguments from being
CSE-ed.

28 years ago . Fixed bug that was preventing CSE of flonums.
Stephen Adams [Wed, 24 Jul 1996 03:45:18 +0000 (03:45 +0000)]
 . Fixed bug that was preventing CSE of flonums.
 . Changed `CSE avoiding' rewrites to use CONSTANT-REGISTER-EXPRESSION, thus
   including #F and '() in the games we play with `0'.
 . Punted the `is-rtl-zero?' predicate as no longer used.
 . Simplified REGISTER-KNOWN-FIXNUM-CONSTANT
 . Added `CSE avoiding' rewrites for comparison operators.

28 years ago . Improved predicates FITS-IN-nn-BITS?.
Stephen Adams [Wed, 24 Jul 1996 03:33:54 +0000 (03:33 +0000)]
 . Improved predicates FITS-IN-nn-BITS?.
 . Split REGISTER-EXPRESSION, extracting CONSTANT-REGISTER-EXPRESSION for the
   pre-loaded registers.

28 years agoTweaked with constant costs.
Stephen Adams [Wed, 24 Jul 1996 03:25:54 +0000 (03:25 +0000)]
Tweaked with constant costs.
Removed some code from the ols split type-code compiler.

28 years agoExtended hashing to include reals rather than just (exact and inexact)
Stephen Adams [Wed, 24 Jul 1996 03:09:30 +0000 (03:09 +0000)]
Extended hashing to include reals rather than just (exact and inexact)
integers.  Enables flonums like PI to be subject to CSE.

28 years agoRemoved rules containing CHAR->ASCII because the rtlgen.scm does not
Stephen Adams [Tue, 23 Jul 1996 20:02:21 +0000 (20:02 +0000)]
Removed rules containing CHAR->ASCII because the rtlgen.scm does not
generate this RTL.

28 years agorevert one line.
Stephen Adams [Tue, 23 Jul 1996 19:23:21 +0000 (19:23 +0000)]
revert one line.

28 years agoRemoved lots (500 lines) of tagged-fixnum code. If you want it, use
Stephen Adams [Tue, 23 Jul 1996 19:11:20 +0000 (19:11 +0000)]
Removed lots (500 lines) of tagged-fixnum code.  If you want it, use
RCS.  Changed the comments to reflect the current code.

Made things more robust:

 . Changed FITS-IN-nn-BITS? predicates to test for fixnum arguments.
 . Changed all the register*constant and constant*register predicates
   to be true only if the constant is a *fixnum* in the correct range.
 . Punted the GUARANTEE-SIGNED-FIXNUM (as the predicates now guarantee it).

The net effect is that the compiler now compiles code like (fix:+ x
1.2) or (fix:* 'a n) to the obvious, albeit meaningless, instructions
rather than signalling a confusing error.  Note that the midend
typerew phase can generate error messages for any of these conditions.

28 years agoChanged FORM->SOURCE-IRRITANT to give a more useful output when source
Stephen Adams [Tue, 23 Jul 1996 16:13:42 +0000 (16:13 +0000)]
Changed FORM->SOURCE-IRRITANT to give a more useful output when source
is not available.

28 years agoRemoved old (mostly unused) method of reporting type errors via bogus
Stephen Adams [Tue, 23 Jul 1996 15:41:23 +0000 (15:41 +0000)]
Removed old (mostly unused) method of reporting type errors via bogus
re-writes that issue the warning and leave the program unchanged.

Replaced with type-checks based on the typedb information.  All
operators with typedb information are checked (not just those with
rewrites).  Checking (and thus warnings) are disabled by setting
COMPILER:TYPE-ERROR-WARNINGS? to false.

28 years agoAdded type:user-description, which gives an english description of the
Stephen Adams [Tue, 23 Jul 1996 15:34:53 +0000 (15:34 +0000)]
Added type:user-description, which gives an english description of the
type for some simple types.

28 years agoFixed typo.
Stephen Adams [Tue, 23 Jul 1996 15:33:51 +0000 (15:33 +0000)]
Fixed typo.

28 years agoRemoved debugging print code, reformated 2 small procedures.
Stephen Adams [Tue, 23 Jul 1996 15:17:13 +0000 (15:17 +0000)]
Removed debugging print code, reformated 2 small procedures.

28 years agoAdded switch compiler:type-error-warnings?, default true.
Stephen Adams [Tue, 23 Jul 1996 14:57:33 +0000 (14:57 +0000)]
Added switch compiler:type-error-warnings?, default true.

28 years agoAdded SORT[!], FOR-EACH and MAP, and some generic arithmetic operators.
Stephen Adams [Tue, 23 Jul 1996 14:49:42 +0000 (14:49 +0000)]
Added SORT[!], FOR-EACH and MAP, and some generic arithmetic operators.

28 years agoFixed to keep runtime and runtime-check debugging info separate.
Stephen Adams [Tue, 23 Jul 1996 03:44:03 +0000 (03:44 +0000)]
Fixed to keep runtime and runtime-check debugging info separate.

28 years agoDisable optimizations with INTEGER-<relation> because it causes loops
Stephen Adams [Tue, 23 Jul 1996 02:28:13 +0000 (02:28 +0000)]
Disable optimizations with INTEGER-<relation> because it causes loops
in the arith.scm generic handlers.

28 years agoFix typos.
Stephen Adams [Tue, 23 Jul 1996 02:27:12 +0000 (02:27 +0000)]
Fix typos.

28 years agoFixed bug in typerew/remember* (it was sometimes returning unspecific).
Stephen Adams [Mon, 22 Jul 1996 23:12:49 +0000 (23:12 +0000)]
Fixed bug in typerew/remember* (it was sometimes returning unspecific).

28 years agoAdded EXACT->INEXACT, INEXACT->EXACT, MAKE-STRING, MAKE-VECTOR,
Stephen Adams [Mon, 22 Jul 1996 19:04:06 +0000 (19:04 +0000)]
Added EXACT->INEXACT, INEXACT->EXACT, MAKE-STRING, MAKE-VECTOR,
STRING, STRING-APPEND and STRING-COPY to global procedures.

28 years agoRemoved suggestion mechanism for rewrites. It was no longer used and
Stephen Adams [Mon, 22 Jul 1996 18:48:32 +0000 (18:48 +0000)]
Removed suggestion mechanism for rewrites.  It was no longer used and
might be a problem because it couples type analysis to the use of the
information.

28 years agoDeleted unused let-binding.
Stephen Adams [Mon, 22 Jul 1996 18:06:48 +0000 (18:06 +0000)]
Deleted unused let-binding.

28 years ago. Changes to permit use of procedures with variable arity in the
Stephen Adams [Mon, 22 Jul 1996 18:04:14 +0000 (18:04 +0000)]
. Changes to permit use of procedures with variable arity in the
  typedb.scm database.

. EXACT->INEXACT may be replaced by %fixnum->flonum if appropriate.

. Changes to generic arithmetic for fix*flo combinations.  Now these
  are open-coded with an explicit conversion (which man be constant
  folded).

28 years agoAdded LENGTH, and vector and string constructors.
Stephen Adams [Mon, 22 Jul 1996 17:49:20 +0000 (17:49 +0000)]
Added LENGTH, and vector and string constructors.

28 years agoImproved the ascii byte store code (elide object->datum on store).
Stephen Adams [Mon, 22 Jul 1996 17:47:18 +0000 (17:47 +0000)]
Improved the ascii byte store code (elide object->datum on store).

28 years agoRemoved useless rule for flonum-subtract.
Stephen Adams [Mon, 22 Jul 1996 17:46:16 +0000 (17:46 +0000)]
Removed useless rule for flonum-subtract.

28 years agoCanonicalized (flonum-less? x 0.) to flonum-negative? etc.
Stephen Adams [Mon, 22 Jul 1996 17:45:29 +0000 (17:45 +0000)]
Canonicalized (flonum-less? x 0.) to flonum-negative? etc.

28 years agoAdded open-coder for %fixnum->flonum.
Stephen Adams [Mon, 22 Jul 1996 16:24:01 +0000 (16:24 +0000)]
Added open-coder for %fixnum->flonum.

28 years ago*** empty log message ***
Stephen Adams [Mon, 22 Jul 1996 04:46:15 +0000 (04:46 +0000)]
*** empty log message ***

28 years agoAdded (FLONUM-1-ARG FIXNUM->FLONUM ...) rules.
Stephen Adams [Mon, 22 Jul 1996 04:45:41 +0000 (04:45 +0000)]
Added (FLONUM-1-ARG FIXNUM->FLONUM ...) rules.

28 years agoAdded constant-folding of %fixnum->flonum.
Stephen Adams [Sat, 20 Jul 1996 23:03:03 +0000 (23:03 +0000)]
Added constant-folding of %fixnum->flonum.

28 years agoAdded %fixnum->flonum.
Stephen Adams [Sat, 20 Jul 1996 22:57:13 +0000 (22:57 +0000)]
Added %fixnum->flonum.

28 years agoTypo.
Stephen Adams [Sat, 20 Jul 1996 22:36:00 +0000 (22:36 +0000)]
Typo.

28 years agoAdded FIXNUM->FLONUM.
Stephen Adams [Sat, 20 Jul 1996 22:26:26 +0000 (22:26 +0000)]
Added FIXNUM->FLONUM.

28 years agoAdded STRING relational operators.
Stephen Adams [Sat, 20 Jul 1996 18:30:14 +0000 (18:30 +0000)]
Added STRING relational operators.

28 years agoAdded switch compiler:rtl-instruction-scheduling?
Stephen Adams [Sat, 20 Jul 1996 18:08:46 +0000 (18:08 +0000)]
Added switch compiler:rtl-instruction-scheduling?

28 years agoFixed type checked indexed operators to not generate a type check for
Stephen Adams [Sat, 20 Jul 1996 17:59:37 +0000 (17:59 +0000)]
Fixed type checked indexed operators to not generate a type check for
indexes that are known to be fixnums.

28 years agoFixed bug in PROCEDURE-TYPE.
Stephen Adams [Fri, 19 Jul 1996 23:53:58 +0000 (23:53 +0000)]
Fixed bug in PROCEDURE-TYPE.

Added TYPE:->CONSTANT.

28 years agoAdded rewrite code to replace an expression with a literal if the type
Stephen Adams [Fri, 19 Jul 1996 23:32:03 +0000 (23:32 +0000)]
Added rewrite code to replace an expression with a literal if the type
system tells us what the value must be.  Most useful for
IF-predicates, as replacing <pred> by, e.g., (BEGIN <pred> '#T) allows
the dead code to be removed.

Added predicate code to yield a #T or #F value.  Previously the
predicate information was being used only in the branches of an if.
Obviously, it is nice to know when the predicate is always true or
false.

Tweaked with inference rules for EQ?/EQV?/EQUAL?.  This could be
better, for example, if (eq? x y) then we know the types must be in
the intersection.  This would require work in TYPEREW/PRED.

28 years agoAdded an arity check so that primitives with rewrite rules but used
Stephen Adams [Fri, 19 Jul 1996 18:27:18 +0000 (18:27 +0000)]
Added an arity check so that primitives with rewrite rules but used
with teh wrong arity are silently ignored.  The applicat phase will
give a warning.

Added rewrites for most int: primitives to produce fixnum diamonds, or
to use the generic operations (for comparisons).

28 years agoExported flag compiler:rtl-instruction-scheduling?
Stephen Adams [Fri, 19 Jul 1996 02:50:10 +0000 (02:50 +0000)]
Exported flag compiler:rtl-instruction-scheduling?

28 years agoSET-INTERRUPT-ENABLES! is now open-coded as a special primitive unless
Stephen Adams [Fri, 19 Jul 1996 02:49:36 +0000 (02:49 +0000)]
SET-INTERRUPT-ENABLES! is now open-coded as a special primitive unless
'SET-INTERRUPT-ENABLES! is in compiler:primitives-with-no-open-coding.

28 years agoSET-INTERRUPT-ENABLES! is now open-coded as a special primitive unless
Stephen Adams [Fri, 19 Jul 1996 02:28:32 +0000 (02:28 +0000)]
SET-INTERRUPT-ENABLES! is now open-coded as a special primitive unless
'SET-INTERRUPT-ENABLES! is in compiler:primitives-with-no-open-coding.

28 years agoAdded set_interrupt_enables_hook
Stephen Adams [Fri, 19 Jul 1996 02:22:05 +0000 (02:22 +0000)]
Added set_interrupt_enables_hook

28 years agoAdded rules for %/, which enables &/ -> flo:/
Stephen Adams [Wed, 17 Jul 1996 21:37:45 +0000 (21:37 +0000)]
Added rules for %/, which enables &/ -> flo:/

28 years agoFixed bug in TYPEREW/EXPR*/UNORDERED/HARD where type information was
Stephen Adams [Wed, 17 Jul 1996 20:48:42 +0000 (20:48 +0000)]
Fixed bug in TYPEREW/EXPR*/UNORDERED/HARD where type information was
being lost because the list had been REVERSE!-ed.

28 years agoAdded graphcis operations DRAW-ARC, DRAW-CIRCLE and FILL-CIRCLE.
Stephen Adams [Fri, 12 Jul 1996 20:20:56 +0000 (20:20 +0000)]
Added graphcis operations DRAW-ARC, DRAW-CIRCLE and FILL-CIRCLE.

28 years agoFixed X-GRAPHICS-DRAW-ARC to do the right thing when the X and/or Y
Stephen Adams [Fri, 12 Jul 1996 20:12:15 +0000 (20:12 +0000)]
Fixed X-GRAPHICS-DRAW-ARC to do the right thing when the X and/or Y
axes are flipped.

28 years agoAdded X-graphics documentation about DRAW-CIRCLE and FILL-CIRCLE.
Stephen Adams [Fri, 12 Jul 1996 18:51:05 +0000 (18:51 +0000)]
Added X-graphics documentation about DRAW-CIRCLE and FILL-CIRCLE.

28 years agoAdded X-GRAPHICS/DRAW-ARC, X-GRAPHICS/DRAW-CIRCLE and X-GRAPHICS/FILL-CIRCLE.
Stephen Adams [Fri, 12 Jul 1996 18:03:45 +0000 (18:03 +0000)]
Added X-GRAPHICS/DRAW-ARC, X-GRAPHICS/DRAW-CIRCLE and X-GRAPHICS/FILL-CIRCLE.

28 years agoAdded X-GRAPHICS-DRAW-ARC for drawing filled and unfilled arcs.
Stephen Adams [Fri, 12 Jul 1996 17:52:28 +0000 (17:52 +0000)]
Added X-GRAPHICS-DRAW-ARC for drawing filled and unfilled arcs.

28 years agoRewrite `poll' support to make it conditionalized more cleanly.
Chris Hanson [Tue, 2 Jul 1996 21:13:29 +0000 (21:13 +0000)]
Rewrite `poll' support to make it conditionalized more cleanly.

28 years agoUse POLLNORM in preference to POLLIN since the former is supported
Chris Hanson [Tue, 2 Jul 1996 21:03:25 +0000 (21:03 +0000)]
Use POLLNORM in preference to POLLIN since the former is supported
more widely.

28 years agoFix minor bug in handling of cursor during SCREEN-FORCE-UPDATE.
Chris Hanson [Tue, 2 Jul 1996 21:01:15 +0000 (21:01 +0000)]
Fix minor bug in handling of cursor during SCREEN-FORCE-UPDATE.

28 years agoIf the `poll' system call is available, use it in preference to
Chris Hanson [Mon, 1 Jul 1996 23:28:17 +0000 (23:28 +0000)]
If the `poll' system call is available, use it in preference to
`select'.  This is needed for HP-UX 10.10 because `select' is broken
in that release.

28 years agoAdd conditionalization to detect versions of HP-UX that supply the
Chris Hanson [Mon, 1 Jul 1996 23:27:18 +0000 (23:27 +0000)]
Add conditionalization to detect versions of HP-UX that supply the
`poll' system call.

28 years agoAdd conditionalization to detect HP-UX version 10.10.
Chris Hanson [Mon, 1 Jul 1996 23:25:27 +0000 (23:25 +0000)]
Add conditionalization to detect HP-UX version 10.10.

28 years agoFix bug that caused RMAIL to signal an error when converting poorly
Chris Hanson [Sun, 16 Jun 1996 05:18:24 +0000 (05:18 +0000)]
Fix bug that caused RMAIL to signal an error when converting poorly
formed messages to RMAIL format.

28 years agoImplement "engineering" display mode.
Chris Hanson [Tue, 11 Jun 1996 04:29:58 +0000 (04:29 +0000)]
Implement "engineering" display mode.

28 years agoIncluded "load.scm" in syntax sequence.
Stephen Adams [Fri, 7 Jun 1996 04:34:16 +0000 (04:34 +0000)]
Included "load.scm" in syntax sequence.
Added copyright notice.

28 years agoAny identifier containing `protect' is no longer exported.
Stephen Adams [Fri, 7 Jun 1996 04:29:09 +0000 (04:29 +0000)]
Any identifier containing `protect' is no longer exported.

28 years agoExtend FLONUM-UNPARSER-CUTOFF to allow specification of the display
Chris Hanson [Thu, 6 Jun 1996 21:07:57 +0000 (21:07 +0000)]
Extend FLONUM-UNPARSER-CUTOFF to allow specification of the display
mode, e.g. SCIENTIFIC or ENGINEERING.

28 years agoFix bug: don't enqueue a process in the process-input-queue if it is
Chris Hanson [Fri, 24 May 1996 07:33:41 +0000 (07:33 +0000)]
Fix bug: don't enqueue a process in the process-input-queue if it is
already in the queue.  Otherwise, it can easily get entered very many
times: if there is input waiting, and the editor is busy, the process
will be queued as often as the select code can run.

28 years agoChange mechanism used to open files and sockets, so that interrupts
Chris Hanson [Sat, 18 May 1996 06:16:11 +0000 (06:16 +0000)]
Change mechanism used to open files and sockets, so that interrupts
are enabled during the open.  This is necessary, because any
network-based operation could potentially hang for long periods of
time, and it's desirable for the user to be able to interrupt out of
the operation.

This change requires microcode version 11.154 (or the corresponding
version 13).

In addition to this change, the low-level channel code was changed to
eliminate the now-obsolete gc-daemon interlocking code.

28 years agoFix code so that interrupts delivered during socket calls will
Chris Hanson [Sat, 18 May 1996 06:10:25 +0000 (06:10 +0000)]
Fix code so that interrupts delivered during socket calls will
deallocated sockets where necessary.

28 years agoAdd code to allow delivery of interrupts during socket-opening system
Chris Hanson [Sat, 18 May 1996 06:09:25 +0000 (06:09 +0000)]
Add code to allow delivery of interrupts during socket-opening system
calls.

28 years agoImplement new primitives to support new method for opening files and
Chris Hanson [Sat, 18 May 1996 06:08:14 +0000 (06:08 +0000)]
Implement new primitives to support new method for opening files and
sockets.  This code is required for runtime version 14.170.

28 years agoAllow keyboard interrupts while opening sockets. This is only a
Chris Hanson [Fri, 17 May 1996 17:49:45 +0000 (17:49 +0000)]
Allow keyboard interrupts while opening sockets.  This is only a
partial solution: there is a small window in which an interrupt can
arrive, leaving the descriptor open but forgotten.

28 years agoImplement new procedure, like WITHOUT-INTERRUPTS, except that it
Chris Hanson [Fri, 17 May 1996 17:47:59 +0000 (17:47 +0000)]
Implement new procedure, like WITHOUT-INTERRUPTS, except that it
allows keyboard interrupts.

28 years agoAllow interrupt delivery during socket system calls.
Chris Hanson [Fri, 17 May 1996 17:26:03 +0000 (17:26 +0000)]
Allow interrupt delivery during socket system calls.

28 years agoFix typo.
Chris Hanson [Fri, 17 May 1996 17:10:18 +0000 (17:10 +0000)]
Fix typo.

28 years agoFix thinko.
Chris Hanson [Wed, 15 May 1996 20:05:50 +0000 (20:05 +0000)]
Fix thinko.

28 years agoFix bug: GROUP-INSERT-FILE! was depending on the fact that
Chris Hanson [Wed, 15 May 1996 19:10:52 +0000 (19:10 +0000)]
Fix bug: GROUP-INSERT-FILE! was depending on the fact that
INPUT-BUFFER/READ-SUBSTRING did not return until the argument buffer
was full -- which is no longer true.