mit-scheme.git
34 years agoAdd open coding for bit-wise boolean operations, and
Guillermo J. Rozas [Tue, 26 Jun 1990 22:16:41 +0000 (22:16 +0000)]
Add open coding for bit-wise boolean operations, and
primitive-object-ref/set! .

Enable the open coding of fixnum-quotient and fixnum-remainder.

Add optimizations for these operations when the second operand is a
power of 2 (tricky, see GLS's paper "Arithmetic shifting considered
harmful").

34 years agoAdd open coding for bit-wise boolean operations, and
Guillermo J. Rozas [Tue, 26 Jun 1990 22:07:13 +0000 (22:07 +0000)]
Add open coding for bit-wise boolean operations, and
primitive-object-ref/set! .

Enable the open coding of fixnum-quotient and fixnum-remainder.

Add optimizations for these operations when the second operand is a
power of 2 (tricky, see GLS's paper "Arithmetic shifting considered
harmful").

34 years agoAdd fixnum bit-wise operations.
Guillermo J. Rozas [Mon, 25 Jun 1990 18:54:16 +0000 (18:54 +0000)]
Add fixnum bit-wise operations.

34 years agoChange gpio-read-string and gpio-write-string to take position and
Guillermo J. Rozas [Mon, 25 Jun 1990 18:33:46 +0000 (18:33 +0000)]
Change gpio-read-string and gpio-write-string to take position and
count parameters, rather than just count parameters.  This speeds up
output when it is divided into chunks.

34 years agoAdd "rm -f" lines to the rules for scm6003, scmkit, and scmLYN to
Guillermo J. Rozas [Mon, 25 Jun 1990 18:29:04 +0000 (18:29 +0000)]
Add "rm -f" lines to the rules for scm6003, scmkit, and scmLYN to
guarantee the correct ownership on the file.

34 years agoAdd "rm -f" lines to the scheme and bchscheme rules to guarantee the
Guillermo J. Rozas [Mon, 25 Jun 1990 18:27:41 +0000 (18:27 +0000)]
Add "rm -f" lines to the scheme and bchscheme rules to guarantee the
correct ownership on the file.

34 years agoAdd bit-wise fixnum operations.
Guillermo J. Rozas [Mon, 25 Jun 1990 18:18:34 +0000 (18:18 +0000)]
Add bit-wise fixnum operations.

34 years agoIn `OS_file_remove_link', delete regular files no matter how many
Chris Hanson [Fri, 22 Jun 1990 01:44:14 +0000 (01:44 +0000)]
In `OS_file_remove_link', delete regular files no matter how many
links they have.

34 years agoImplement `check-and-clean-up-input-channel' in runtime system --
Chris Hanson [Fri, 22 Jun 1990 01:04:48 +0000 (01:04 +0000)]
Implement `check-and-clean-up-input-channel' in runtime system --
microcode no longer provides this service.

34 years agoUse new `get-decoded-time' primitive.
Chris Hanson [Thu, 21 Jun 1990 23:19:39 +0000 (23:19 +0000)]
Use new `get-decoded-time' primitive.

34 years agoForgot to convert elements of `get-decoded-time' to Scheme integers.
Chris Hanson [Thu, 21 Jun 1990 23:09:32 +0000 (23:09 +0000)]
Forgot to convert elements of `get-decoded-time' to Scheme integers.

34 years agoForgot to convert elements of `get-decoded-time' to Scheme integers.
Chris Hanson [Thu, 21 Jun 1990 23:06:44 +0000 (23:06 +0000)]
Forgot to convert elements of `get-decoded-time' to Scheme integers.

34 years agoChange console-input-port so that it always buffers the input.
Chris Hanson [Thu, 21 Jun 1990 22:11:52 +0000 (22:11 +0000)]
Change console-input-port so that it always buffers the input.
Because of this change there is no need to use the special terminal
input primitives -- these should be flushed from the microcode.
All buffered input channels now support the `interval' argument of the
`char-ready?' operation.

34 years agoAdd dependencies on OS_PRIM_SOURCES for all usrdef.* .
Guillermo J. Rozas [Thu, 21 Jun 1990 21:01:08 +0000 (21:01 +0000)]
Add dependencies on OS_PRIM_SOURCES for all usrdef.* .

34 years agoPatch to `Restore_History' from JMiller.
Chris Hanson [Thu, 21 Jun 1990 20:17:03 +0000 (20:17 +0000)]
Patch to `Restore_History' from JMiller.

34 years agoChange `OS_channel_read' and `OS_channel_write' to be interruptable,
Chris Hanson [Thu, 21 Jun 1990 20:02:06 +0000 (20:02 +0000)]
Change `OS_channel_read' and `OS_channel_write' to be interruptable,
so that any I/O can be interrupted by the user typing ^G.  Fix minor
thinko in `OS_channel_close' that caused the console I/O channels to
be marked as closed even though they were still open.

34 years ago.DEFAULT hack doesn't work very well, so disable it.
Chris Hanson [Thu, 21 Jun 1990 19:59:16 +0000 (19:59 +0000)]
.DEFAULT hack doesn't work very well, so disable it.

34 years agoFix bogus type declaration in Load_Data (FILE * -> SCHEME_OBJECT *).
Guillermo J. Rozas [Thu, 21 Jun 1990 03:50:30 +0000 (03:50 +0000)]
Fix bogus type declaration in Load_Data (FILE * -> SCHEME_OBJECT *).

34 years agoChanges to match runtime system 14.82.
Chris Hanson [Wed, 20 Jun 1990 23:02:09 +0000 (23:02 +0000)]
Changes to match runtime system 14.82.

34 years agoGenerate a .cref file when resyntaxing Edwin.
Chris Hanson [Wed, 20 Jun 1990 22:49:45 +0000 (22:49 +0000)]
Generate a .cref file when resyntaxing Edwin.

34 years agoGenerate a .cref file when resyntaxing Edwin.
Chris Hanson [Wed, 20 Jun 1990 22:42:25 +0000 (22:42 +0000)]
Generate a .cref file when resyntaxing Edwin.

34 years ago* Complete redesign of the operating-system interface. I/O is more
Chris Hanson [Wed, 20 Jun 1990 21:13:44 +0000 (21:13 +0000)]
* Complete redesign of the operating-system interface.  I/O is more
uniform and is able to take advantage of things like sockets, pipes,
ptys, etc.  All I/O buffering is moved into the runtime system for
better performance with Scheme compiler code.  Strong knowledge of
POSIX.1 should make porting to VMS easy once VMS supports POSIX.1.

* Change operating system conditionalizations to standard form
suggested by POSIX.1.

* Add FSF macros to support ANSI declarations.

* Add dynamic-stack package and obstacks.

* Provide higher-level utilities for parsing command line options.

* Instead of `Back_To_Eval', there is now a procedure
`abort_to_interpreter' which knows about everything that needs to be
cleaned up.

* Change names of some macros:

Pop STACK_POP
Push STACK_PUSH
Push_From STACK_LOCATIVE_PUSH
Pop_Into STACK_LOCATIVE_POP (similar)
Stack_Ref STACK_REF
Top_Of_Stack() STACK_REF(0)
Simulate_Popping STACK_LOC
Simulate_Pushing STACK_LOC (similar)
Stack_Distance STACK_LOCATIVE_DIFFERENCE (similar)
Pop_Primitive_Frame POP_PRIMITIVE_FRAME
Metering_Apply_Primitive PRIMITIVE_APPLY
Export_Regs_Before_Primitive EXPORT_REGS_BEFORE_PRIMITIVE
Import_Regs_After_Primitive IMPORT_REGS_AFTER_PRIMITIVE

* Sun assembler can't handle a constant used in "cmpaux-mc68k.m4", so
provide an option to rewrite that instruction as two instructions.

* Some compilers won't cast a function to an integer, so kludge around
it by mis-declaring the external function as an integer, taking it the
integer's address, and casting THAT to an integer.

* Move critical section code and termination code to their own files.

34 years ago* Changes to operating system interface to match those introduced in
Chris Hanson [Wed, 20 Jun 1990 20:37:44 +0000 (20:37 +0000)]
* Changes to operating system interface to match those introduced in
microcode version 11.33, which is required for this runtime system
version.

* The low-level channel abstraction has been changed -- it now
contains only a microcode channel descriptor and the channel type.
The microcode no longer knows the format of channels.

* Subprocess support has been temporarily removed.  New subprocess
support is being designed to accompany changes in the microcode.

* The file-copy primitive is now written in Scheme using lower-level
file system and I/O operations.

* Use `input-port/immediate-mode' and `input-port/normal-mode' to
switch terminal mode.  The operations `read-char-immediate' and
`peek-char-immediate' are now obsolete.  REP loops force the input
port into normal mode, while the debugger forces it into immediate
mode.

* I/O buffering for input files, output files, and the console output
is now done in Scheme.  The microcode provides no buffering.
These ports understand `buffer-size' and `set-buffer-size' operations
to control the amount of buffering.  A buffer size of 0 disables
buffering entirely.

* `read-start!' and `read-finish!' are now optional operations on
input ports.

* An input or output port will now report the set of operations that
it responds to.

34 years agoInitial revision
Chris Hanson [Wed, 20 Jun 1990 20:34:23 +0000 (20:34 +0000)]
Initial revision

34 years ago* Changes to operating system interface to match those introduced in
Chris Hanson [Wed, 20 Jun 1990 20:30:31 +0000 (20:30 +0000)]
* Changes to operating system interface to match those introduced in
microcode version 11.33, which is required for this runtime system
version.

* The low-level channel abstraction has been changed -- it now
contains only a microcode channel descriptor and the channel type.
The microcode no longer knows the format of channels.

* Subprocess support has been temporarily removed.  New subprocess
support is being designed to accompany changes in the microcode.

* The file-copy primitive is now written in Scheme using lower-level
file system and I/O operations.

* Use `input-port/immediate-mode' and `input-port/normal-mode' to
switch terminal mode.  The operations `read-char-immediate' and
`peek-char-immediate' are now obsolete.  REP loops force the input
port into normal mode, while the debugger forces it into immediate
mode.

* I/O buffering for input files, output files, and the console output
is now done in Scheme.  The microcode provides no buffering.
These ports understand `buffer-size' and `set-buffer-size' operations
to control the amount of buffering.  A buffer size of 0 disables
buffering entirely.

* `read-start!' and `read-finish!' are now optional operations on
input ports.

* An input or output port will now report the set of operations that
it responds to.

34 years ago* Complete redesign of the operating-system interface. I/O is more
Chris Hanson [Wed, 20 Jun 1990 20:00:58 +0000 (20:00 +0000)]
* Complete redesign of the operating-system interface.  I/O is more
uniform and is able to take advantage of things like sockets, pipes,
ptys, etc.  All I/O buffering is moved into the runtime system for
better performance with Scheme compiler code.  Strong knowledge of
POSIX.1 should make porting to VMS easy once VMS supports POSIX.1.

* Change operating system conditionalizations to standard form
suggested by POSIX.1.

* Add FSF macros to support ANSI declarations.

* Add dynamic-stack package and obstacks.

* Provide higher-level utilities for parsing command line options.

* Instead of `Back_To_Eval', there is now a procedure
`abort_to_interpreter' which knows about everything that needs to be
cleaned up.

* Change names of some macros:

Pop STACK_POP
Push STACK_PUSH
Push_From STACK_LOCATIVE_PUSH
Pop_Into STACK_LOCATIVE_POP (similar)
Stack_Ref STACK_REF
Top_Of_Stack() STACK_REF(0)
Simulate_Popping STACK_LOC
Simulate_Pushing STACK_LOC (similar)
Stack_Distance STACK_LOCATIVE_DIFFERENCE (similar)
Pop_Primitive_Frame POP_PRIMITIVE_FRAME
Metering_Apply_Primitive PRIMITIVE_APPLY
Export_Regs_Before_Primitive EXPORT_REGS_BEFORE_PRIMITIVE
Import_Regs_After_Primitive IMPORT_REGS_AFTER_PRIMITIVE

* Sun assembler can't handle a constant used in "cmpaux-mc68k.m4", so
provide an option to rewrite that instruction as two instructions.

* Some compilers won't cast a function to an integer, so kludge around
it by mis-declaring the external function as an integer, taking it the
integer's address, and casting THAT to an integer.

* Move critical section code and termination code to their own files.

34 years agoInitial revision
Chris Hanson [Wed, 20 Jun 1990 19:56:08 +0000 (19:56 +0000)]
Initial revision

34 years ago* Complete redesign of the operating-system interface. I/O is more
Chris Hanson [Wed, 20 Jun 1990 19:55:07 +0000 (19:55 +0000)]
* Complete redesign of the operating-system interface.  I/O is more
uniform and is able to take advantage of things like sockets, pipes,
ptys, etc.  All I/O buffering is moved into the runtime system for
better performance with Scheme compiler code.  Strong knowledge of
POSIX.1 should make porting to VMS easy once VMS supports POSIX.1.

* Change operating system conditionalizations to standard form
suggested by POSIX.1.

* Add FSF macros to support ANSI declarations.

* Add dynamic-stack package and obstacks.

* Provide higher-level utilities for parsing command line options.

* Instead of `Back_To_Eval', there is now a procedure
`abort_to_interpreter' which knows about everything that needs to be
cleaned up.

* Change names of some macros:

Pop STACK_POP
Push STACK_PUSH
Push_From STACK_LOCATIVE_PUSH
Pop_Into STACK_LOCATIVE_POP (similar)
Stack_Ref STACK_REF
Top_Of_Stack() STACK_REF(0)
Simulate_Popping STACK_LOC
Simulate_Pushing STACK_LOC (similar)
Stack_Distance STACK_LOCATIVE_DIFFERENCE (similar)
Pop_Primitive_Frame POP_PRIMITIVE_FRAME
Metering_Apply_Primitive PRIMITIVE_APPLY
Export_Regs_Before_Primitive EXPORT_REGS_BEFORE_PRIMITIVE
Import_Regs_After_Primitive IMPORT_REGS_AFTER_PRIMITIVE

* Sun assembler can't handle a constant used in "cmpaux-mc68k.m4", so
provide an option to rewrite that instruction as two instructions.

* Some compilers won't cast a function to an integer, so kludge around
it by mis-declaring the external function as an integer, taking it the
integer's address, and casting THAT to an integer.

* Move critical section code and termination code to their own files.

34 years ago* Complete redesign of the operating-system interface. I/O is more
Chris Hanson [Wed, 20 Jun 1990 19:39:44 +0000 (19:39 +0000)]
* Complete redesign of the operating-system interface.  I/O is more
uniform and is able to take advantage of things like sockets, pipes,
ptys, etc.  All I/O buffering is moved into the runtime system for
better performance with Scheme compiler code.  Strong knowledge of
POSIX.1 should make porting to VMS easy once VMS supports POSIX.1.

* Change operating system conditionalizations to standard form
suggested by POSIX.1.

* Add FSF macros to support ANSI declarations.

* Add dynamic-stack package and obstacks.

* Provide higher-level utilities for parsing command line options.

* Instead of `Back_To_Eval', there is now a procedure
`abort_to_interpreter' which knows about everything that needs to be
cleaned up.

* Change names of some macros:

Pop STACK_POP
Push STACK_PUSH
Push_From STACK_LOCATIVE_PUSH
Pop_Into STACK_LOCATIVE_POP (similar)
Stack_Ref STACK_REF
Top_Of_Stack() STACK_REF(0)
Simulate_Popping STACK_LOC
Simulate_Pushing STACK_LOC (similar)
Stack_Distance STACK_LOCATIVE_DIFFERENCE (similar)
Pop_Primitive_Frame POP_PRIMITIVE_FRAME
Metering_Apply_Primitive PRIMITIVE_APPLY
Export_Regs_Before_Primitive EXPORT_REGS_BEFORE_PRIMITIVE
Import_Regs_After_Primitive IMPORT_REGS_AFTER_PRIMITIVE

* Sun assembler can't handle a constant used in "cmpaux-mc68k.m4", so
provide an option to rewrite that instruction as two instructions.

* Some compilers won't cast a function to an integer, so kludge around
it by mis-declaring the external function as an integer, taking it the
integer's address, and casting THAT to an integer.

* Move critical section code and termination code to their own files.

34 years agoInitial revision
Chris Hanson [Wed, 20 Jun 1990 19:38:59 +0000 (19:38 +0000)]
Initial revision

34 years agoInitial revision
Chris Hanson [Wed, 20 Jun 1990 17:49:26 +0000 (17:49 +0000)]
Initial revision

34 years ago* Complete redesign of the operating-system interface. I/O is more
Chris Hanson [Wed, 20 Jun 1990 17:42:58 +0000 (17:42 +0000)]
* Complete redesign of the operating-system interface.  I/O is more
uniform and is able to take advantage of things like sockets, pipes,
ptys, etc.  All I/O buffering is moved into the runtime system for
better performance with Scheme compiler code.  Strong knowledge of
POSIX.1 should make porting to VMS easy once VMS supports POSIX.1.

* Change operating system conditionalizations to standard form
suggested by POSIX.1.

* Add FSF macros to support ANSI declarations.

* Add dynamic-stack package and obstacks.

* Provide higher-level utilities for parsing command line options.

* Instead of `Back_To_Eval', there is now a procedure
`abort_to_interpreter' which knows about everything that needs to be
cleaned up.

* Change names of some macros:

Pop STACK_POP
Push STACK_PUSH
Push_From STACK_LOCATIVE_PUSH
Pop_Into STACK_LOCATIVE_POP (similar)
Stack_Ref STACK_REF
Top_Of_Stack() STACK_REF(0)
Simulate_Popping STACK_LOC
Simulate_Pushing STACK_LOC (similar)
Stack_Distance STACK_LOCATIVE_DIFFERENCE (similar)
Pop_Primitive_Frame POP_PRIMITIVE_FRAME
Metering_Apply_Primitive PRIMITIVE_APPLY
Export_Regs_Before_Primitive EXPORT_REGS_BEFORE_PRIMITIVE
Import_Regs_After_Primitive IMPORT_REGS_AFTER_PRIMITIVE

* Sun assembler can't handle a constant used in "cmpaux-mc68k.m4", so
provide an option to rewrite that instruction as two instructions.

* Some compilers won't cast a function to an integer, so kludge around
it by mis-declaring the external function as an integer, taking it the
integer's address, and casting THAT to an integer.

* Move critical section code and termination code to their own files.

34 years agoFix a bug in bignum_destructive_scale_up by which the most significant
Guillermo J. Rozas [Thu, 14 Jun 1990 19:54:57 +0000 (19:54 +0000)]
Fix a bug in bignum_destructive_scale_up by which the most significant
digit of a bignum was not being scaled.

34 years agoFix more bugs in bit_string_to_bignum.
Guillermo J. Rozas [Thu, 14 Jun 1990 19:54:00 +0000 (19:54 +0000)]
Fix more bugs in bit_string_to_bignum.

34 years agoFix bug in bit_string_to_bignum by which the top digit was not masked
Guillermo J. Rozas [Thu, 14 Jun 1990 17:30:32 +0000 (17:30 +0000)]
Fix bug in bit_string_to_bignum by which the top digit was not masked
according to the number of valid bits.  Thus the result was larger
under certain conditions.

34 years agoNot all uses of lambda-list had been updated to pass four parameters
Guillermo J. Rozas [Thu, 14 Jun 1990 01:27:54 +0000 (01:27 +0000)]
Not all uses of lambda-list had been updated to pass four parameters
instead of three.

34 years agoAdd sequence-immediate-actions that does not flatten the structure.
Guillermo J. Rozas [Thu, 14 Jun 1990 00:02:47 +0000 (00:02 +0000)]
Add sequence-immediate-actions that does not flatten the structure.

34 years agoAdd a unsyntaxer:macroize? flag to the unsyntaxer to get a more
Guillermo J. Rozas [Thu, 14 Jun 1990 00:02:08 +0000 (00:02 +0000)]
Add a unsyntaxer:macroize? flag to the unsyntaxer to get a more
"truthfull" result.

34 years agoAdd a unsyntaxer:macroize? flag to get a more "truthfull" result.
Guillermo J. Rozas [Thu, 14 Jun 1990 00:01:49 +0000 (00:01 +0000)]
Add a unsyntaxer:macroize? flag to get a more "truthfull" result.

34 years agoAllow specification of arity for the INTEGRATE-PRIMITIVE-PROCEDURES
Guillermo J. Rozas [Wed, 13 Jun 1990 22:20:02 +0000 (22:20 +0000)]
Allow specification of arity for the INTEGRATE-PRIMITIVE-PROCEDURES
declaration.

34 years agoAdd missing pair of parenthesis (how come gcc did not catch it?).
Guillermo J. Rozas [Wed, 13 Jun 1990 21:15:14 +0000 (21:15 +0000)]
Add missing pair of parenthesis (how come gcc did not catch it?).

34 years agoAdd new style primitives (multiple byte transfers, string based).
Guillermo J. Rozas [Wed, 13 Jun 1990 20:49:58 +0000 (20:49 +0000)]
Add new style primitives (multiple byte transfers, string based).
Add control primitives.
Add locking of the interface.

34 years agoAdd rule for gpio.c .
Guillermo J. Rozas [Wed, 13 Jun 1990 20:45:51 +0000 (20:45 +0000)]
Add rule for gpio.c .

34 years agoRemove scmkit from install.world.
Guillermo J. Rozas [Tue, 12 Jun 1990 17:53:18 +0000 (17:53 +0000)]
Remove scmkit from install.world.

34 years agoAdd a .DEFAULT entry that re-invokes make on the target using
Guillermo J. Rozas [Tue, 12 Jun 1990 17:52:24 +0000 (17:52 +0000)]
Add a .DEFAULT entry that re-invokes make on the target using
xmakefile.

34 years agoAdd a .DEFAULT entry that re-invokes make on the target using
Guillermo J. Rozas [Tue, 12 Jun 1990 17:32:29 +0000 (17:32 +0000)]
Add a .DEFAULT entry that re-invokes make on the target using
xmakefile.

34 years agoAdd Franklyn's microcode and a microcode for hacking the toolkit. It
Guillermo J. Rozas [Tue, 12 Jun 1990 16:38:29 +0000 (16:38 +0000)]
Add Franklyn's microcode and a microcode for hacking the toolkit.  It
is a standard microcode plus gpio primitives.

34 years agoInitial revision
Guillermo J. Rozas [Tue, 12 Jun 1990 16:35:28 +0000 (16:35 +0000)]
Initial revision

34 years agoFix transform/definition to allow non-scanned top-level definitions.
Guillermo J. Rozas [Mon, 11 Jun 1990 16:34:51 +0000 (16:34 +0000)]
Fix transform/definition to allow non-scanned top-level definitions.
The arise due to in-package.

34 years agoFix transform/definition in xform.scm to allow non-scanned top-level
Guillermo J. Rozas [Mon, 11 Jun 1990 16:34:32 +0000 (16:34 +0000)]
Fix transform/definition in xform.scm to allow non-scanned top-level
definitions.  The arise due to in-package.

34 years agoRename references to primitives that have been renamed in the
Chris Hanson [Thu, 7 Jun 1990 19:56:35 +0000 (19:56 +0000)]
Rename references to primitives that have been renamed in the
microcode.

34 years agoWhen loading a .scm file, fetch the repl environment and syntax table
Chris Hanson [Mon, 4 Jun 1990 20:46:42 +0000 (20:46 +0000)]
When loading a .scm file, fetch the repl environment and syntax table
at the beginning of the load rather than for each expression in the
file.  This means that changing the repl environment or syntax table
in the file will have no effect on the load.

34 years agoWhen loading a .scm file, fetch the repl environment and syntax table
Chris Hanson [Mon, 4 Jun 1990 20:45:55 +0000 (20:45 +0000)]
When loading a .scm file, fetch the repl environment and syntax table
at the beginning of the load rather than for each expression in the
file.  This means that changing the repl environment or syntax table
in the file will have no effect on the load.

34 years agoIn bignum division when doing add-back because initial guess was too
Chris Hanson [Wed, 16 May 1990 22:42:55 +0000 (22:42 +0000)]
In bignum division when doing add-back because initial guess was too
large: if the add-back causes a carry it must be discarded.

34 years ago`in-package' must not scan out the defines in its body.
Chris Hanson [Thu, 10 May 1990 19:25:33 +0000 (19:25 +0000)]
`in-package' must not scan out the defines in its body.

34 years agoUse 6-bit type codes.
Chris Hanson [Tue, 8 May 1990 10:20:11 +0000 (10:20 +0000)]
Use 6-bit type codes.

35 years agoInitial revision
Guillermo J. Rozas [Mon, 7 May 1990 04:18:00 +0000 (04:18 +0000)]
Initial revision

35 years ago*** empty log message ***
Guillermo J. Rozas [Mon, 7 May 1990 04:09:24 +0000 (04:09 +0000)]
*** empty log message ***

35 years agoFix one more problem in the interaction between multiclosures and
Guillermo J. Rozas [Sun, 6 May 1990 00:34:56 +0000 (00:34 +0000)]
Fix one more problem in the interaction between multiclosures and
subproblem free variables.

35 years agoFix a bug in walk-procedure that manifested itself in sf/subst.
Guillermo J. Rozas [Fri, 4 May 1990 15:15:18 +0000 (15:15 +0000)]
Fix a bug in walk-procedure that manifested itself in sf/subst.
The free variables in closures are determined exclusively by the
closure block, not by the free variables of the procedure block.

35 years agoAdd support for multi-closures, ie. closures with multiple (or no)
Guillermo J. Rozas [Thu, 3 May 1990 15:22:29 +0000 (15:22 +0000)]
Add support for multi-closures, ie. closures with multiple (or no)
entry points that share the environment "frame".

35 years agoChange generate/sequence to process forms in order (left to right).
Guillermo J. Rozas [Thu, 3 May 1990 15:06:40 +0000 (15:06 +0000)]
Change generate/sequence to process forms in order (left to right).
In this way, compilation by procedures compiles the procedures in the
order in which they appear in the file, producing predictable output.

35 years agoFix the lap->code example.
Guillermo J. Rozas [Thu, 3 May 1990 15:03:49 +0000 (15:03 +0000)]
Fix the lap->code example.
procedure-variables are now cleaned up after phase/setup-block-types
rather than phase/identify-closure-limits, since the multi-closure
code in phase/setup-block-types needs this information.

35 years agoIncrease the size of symbol tables. Symbol tables should be growing
Guillermo J. Rozas [Thu, 3 May 1990 14:59:34 +0000 (14:59 +0000)]
Increase the size of symbol tables.  Symbol tables should be growing
(re-hashing) hash tables, but are currently fixed.  The previous value
was too small for large compilation units.  The current one may be too
large for small units, but oh well.

35 years agoOne more step of making file-touch work better in a distributed
Guillermo J. Rozas [Fri, 27 Apr 1990 23:43:27 +0000 (23:43 +0000)]
One more step of making file-touch work better in a distributed
environment.  Some changes for NFS (addition of special handling of
ESTALE), and better handling of some other conditions.

35 years agoAdd ADJUST_CLOSURE_AT_CALL.
Guillermo J. Rozas [Mon, 23 Apr 1990 02:43:10 +0000 (02:43 +0000)]
Add ADJUST_CLOSURE_AT_CALL.

35 years agoRemove the interrupt multiclosure register setup and special entry
Guillermo J. Rozas [Mon, 23 Apr 1990 02:36:21 +0000 (02:36 +0000)]
Remove the interrupt multiclosure register setup and special entry
point.

35 years agoAdd ADJUST_CLOSURE_AT_CALL.
Guillermo J. Rozas [Mon, 23 Apr 1990 02:35:49 +0000 (02:35 +0000)]
Add ADJUST_CLOSURE_AT_CALL.
Remove the interrupt multiclosure register setup.

35 years agoEliminate comutil_interrupt_multiclosure. It was not correct.
Guillermo J. Rozas [Mon, 23 Apr 1990 02:35:00 +0000 (02:35 +0000)]
Eliminate comutil_interrupt_multiclosure.  It was not correct.
Modify comutil_interrupt_closure to accomodate closures in machines
where the environment pointer does not match the entry point.
This is done using a new macro ADJUST_CLOSURE_AT_CALL from
cmpint-xxx.h

35 years agoFixed bug in comutil_interrupt_dlink (passing 2 instead of 3 arguments
Jim Miller [Sat, 21 Apr 1990 17:18:08 +0000 (17:18 +0000)]
Fixed bug in comutil_interrupt_dlink (passing 2 instead of 3 arguments
to compiler_interrupt_common).

35 years agoNew information in closure dbg blocks to accomodate multiclosures and
Guillermo J. Rozas [Sat, 21 Apr 1990 16:26:47 +0000 (16:26 +0000)]
New information in closure dbg blocks to accomodate multiclosures and
make the accessors/mutators architecture independent.

35 years agoNew information in closure dbg blocks to accomodate multiclosures and
Guillermo J. Rozas [Sat, 21 Apr 1990 15:20:05 +0000 (15:20 +0000)]
New information in closure dbg blocks to accomodate multiclosures and
make the accessors/mutators architecture independent.

35 years ago- Change "link.l" into "link" because Asmcvt does not understand it.
Guillermo J. Rozas [Thu, 19 Apr 1990 19:09:56 +0000 (19:09 +0000)]
- Change "link.l" into "link" because Asmcvt does not understand it.
- Change "jmp(%a0)" into "jmp (%a0)" because Asmcvt does not parse
it correctly.

35 years ago*** empty log message ***
Chris Hanson [Tue, 17 Apr 1990 22:20:34 +0000 (22:20 +0000)]
*** empty log message ***

35 years agoFor hp-ux 7.0, must define _HPUX_SOURCE if the compiler is ANSI C.
Chris Hanson [Tue, 17 Apr 1990 22:20:00 +0000 (22:20 +0000)]
For hp-ux 7.0, must define _HPUX_SOURCE if the compiler is ANSI C.

35 years agoEliminate (now incorrect) declarations for various procedures defined
Chris Hanson [Tue, 17 Apr 1990 22:16:44 +0000 (22:16 +0000)]
Eliminate (now incorrect) declarations for various procedures defined
in the C library.

35 years agoEliminate (now incorrect) declarations for various procedures defined
Chris Hanson [Tue, 17 Apr 1990 21:56:23 +0000 (21:56 +0000)]
Eliminate (now incorrect) declarations for various procedures defined
in the C library.

35 years agoFix conversion of Scheme argument to fopen.
Chris Hanson [Tue, 17 Apr 1990 21:54:56 +0000 (21:54 +0000)]
Fix conversion of Scheme argument to fopen.

35 years ago"bignum.o" depends on "limits.h".
Chris Hanson [Tue, 17 Apr 1990 19:16:28 +0000 (19:16 +0000)]
"bignum.o" depends on "limits.h".

35 years agoAdded LOAD-LATEST and FASLOAD-LATEST to load the most recently
Mark Friedman [Fri, 13 Apr 1990 14:14:58 +0000 (14:14 +0000)]
Added LOAD-LATEST and FASLOAD-LATEST to load the most recently
modified of the LOAD/DEFAULT-TYPES (or FASLOAD/DEFAULT-TYPES). Also
added a LOAD/DEFAULT-FIND-PATHNAME-WITH-TYPE variable which LOAD and
FASLOAD will use (indirectly) to determine what file type to load. See
the rcs log for load.scm for more info.

35 years agoDon't treat `restore-value' frame as a subproblem.
Chris Hanson [Thu, 12 Apr 1990 22:54:21 +0000 (22:54 +0000)]
Don't treat `restore-value' frame as a subproblem.

35 years agoRewrite file_touch to use fstat after open rather than stat and then
Guillermo J. Rozas [Thu, 12 Apr 1990 22:51:15 +0000 (22:51 +0000)]
Rewrite file_touch to use fstat after open rather than stat and then
open.  This seems to reduce the problems with stale NFS handles, and
should affect nothing else.

35 years agoOops, forgot some initializations for the LOAD-LATEST stuff. See the
Mark Friedman [Thu, 12 Apr 1990 22:50:28 +0000 (22:50 +0000)]
Oops, forgot some initializations for the LOAD-LATEST stuff. See the
log for the last version for more info.

35 years agoAdd multi closure interrupt support.
Guillermo J. Rozas [Thu, 12 Apr 1990 22:47:59 +0000 (22:47 +0000)]
Add multi closure interrupt support.
Merge in some MIPS changes (bug fix to bitstrings, and file_touch).

35 years agoAdd asm_interrupt_multiclosure.
Guillermo J. Rozas [Thu, 12 Apr 1990 22:46:59 +0000 (22:46 +0000)]
Add asm_interrupt_multiclosure.

35 years agoAdd comutil_interrupt_multiclosure.
Guillermo J. Rozas [Thu, 12 Apr 1990 22:46:26 +0000 (22:46 +0000)]
Add comutil_interrupt_multiclosure.

35 years agoAdded LOAD-LATEST and FASLOAD-LATEST to load the most recently
Mark Friedman [Thu, 12 Apr 1990 21:56:31 +0000 (21:56 +0000)]
Added LOAD-LATEST and FASLOAD-LATEST to load the most recently
modified version among the LOAD/DEFAULT-TYPES.

Added a variable LOAD/DEFAULT-FIND-PATHNAME-WITH-TYPE which may be set
to a procedure which tells load how to decide which file type to use.
The procedure accepts a pathname and a list of file type strings
(usually this will be LOAD/DEFAULT-TYPES) and should return the
complete pathname for load to use.

35 years agoFix a bug in BIT_STRING_INDEX_PAIR_TO_INDEX for machines with vax byte
Guillermo J. Rozas [Thu, 12 Apr 1990 21:12:22 +0000 (21:12 +0000)]
Fix a bug in BIT_STRING_INDEX_PAIR_TO_INDEX for machines with vax byte
order.

35 years agoForgot to change the copyright date.
Guillermo J. Rozas [Thu, 12 Apr 1990 21:08:14 +0000 (21:08 +0000)]
Forgot to change the copyright date.

35 years agoAdd `#undef ultrix' for unknown reasons -- JMiller.
Guillermo J. Rozas [Thu, 12 Apr 1990 21:07:04 +0000 (21:07 +0000)]
Add `#undef ultrix' for unknown reasons -- JMiller.

35 years agoBump the default space parameters on the MIPS when there is compiler
Guillermo J. Rozas [Thu, 12 Apr 1990 21:05:34 +0000 (21:05 +0000)]
Bump the default space parameters on the MIPS when there is compiler
support.

35 years agoAdd 6 bit type codes and an optimizer switch to be able to handle
Guillermo J. Rozas [Thu, 12 Apr 1990 21:04:06 +0000 (21:04 +0000)]
Add 6 bit type codes and an optimizer switch to be able to handle
interp.c

35 years agoChange `file-open-channel' primitive to permit opening a file in
Chris Hanson [Tue, 10 Apr 1990 20:10:04 +0000 (20:10 +0000)]
Change `file-open-channel' primitive to permit opening a file in
append mode.  The second argument to this primitive is now interpreted
as follows:

#F => open for input
#T => open for output
else => open for append

35 years agoAdd optional second argument to `open-output-file': if supplied and
Chris Hanson [Tue, 10 Apr 1990 20:05:26 +0000 (20:05 +0000)]
Add optional second argument to `open-output-file': if supplied and
not false, the file is opened for append.

35 years agoRename local variable to prevent confusion during debugging.
Chris Hanson [Tue, 10 Apr 1990 16:03:03 +0000 (16:03 +0000)]
Rename local variable to prevent confusion during debugging.

35 years agoDetect and signal error for `(let 3 4)'.
Chris Hanson [Tue, 10 Apr 1990 15:53:35 +0000 (15:53 +0000)]
Detect and signal error for `(let 3 4)'.

35 years agoForce top-level syntax definitions to be local to the file in which
Chris Hanson [Tue, 10 Apr 1990 15:53:06 +0000 (15:53 +0000)]
Force top-level syntax definitions to be local to the file in which
they appear.

35 years agoForce top-level syntax definitions to be local to the file in which
Chris Hanson [Tue, 10 Apr 1990 15:46:39 +0000 (15:46 +0000)]
Force top-level syntax definitions to be local to the file in which
they appear.

35 years agoFix broken movb and movib instruction definitions.
Chris Hanson [Mon, 9 Apr 1990 21:21:01 +0000 (21:21 +0000)]
Fix broken movb and movib instruction definitions.

35 years agoFix broken qualifier.
Chris Hanson [Mon, 9 Apr 1990 21:07:36 +0000 (21:07 +0000)]
Fix broken qualifier.