mit-scheme.git
37 years agoInitial revision
Guillermo J. Rozas [Thu, 25 Jun 1987 10:24:04 +0000 (10:24 +0000)]
Initial revision

37 years agoChange abstraction to use hash tables, to eliminate possible quadratic
Chris Hanson [Wed, 24 Jun 1987 04:53:40 +0000 (04:53 +0000)]
Change abstraction to use hash tables, to eliminate possible quadratic
behavior.

37 years agoExtend symbol hash table abstraction with new operations.
Chris Hanson [Wed, 24 Jun 1987 04:51:11 +0000 (04:51 +0000)]
Extend symbol hash table abstraction with new operations.

37 years agoAdd additional integration dependencies for "back-end/laptop".
Chris Hanson [Wed, 24 Jun 1987 04:50:05 +0000 (04:50 +0000)]
Add additional integration dependencies for "back-end/laptop".

37 years agoMake fasload default to extension bin. Fix a bug in previous attempt.
Guillermo J. Rozas [Wed, 24 Jun 1987 03:12:40 +0000 (03:12 +0000)]
Make fasload default to extension bin.  Fix a bug in previous attempt.

37 years agoMake fasload default to extension bin.
Guillermo J. Rozas [Wed, 24 Jun 1987 02:49:10 +0000 (02:49 +0000)]
Make fasload default to extension bin.

37 years agoDefine new variable `Constant_Top' to mark the upper limit of constant
Chris Hanson [Tue, 23 Jun 1987 22:54:01 +0000 (22:54 +0000)]
Define new variable `Constant_Top' to mark the upper limit of constant
space.  Do not use unallocated parts of constant space for the stack;
the stack size is fixed at the beginning of time.  This fixes a bug in
which the constant space overflowed into the stack space, without
signalling any error.

37 years agoDefine new variable `Constant_Top' to mark the upper limit of constant
Chris Hanson [Tue, 23 Jun 1987 22:02:41 +0000 (22:02 +0000)]
Define new variable `Constant_Top' to mark the upper limit of constant
space.  Do not use unallocated parts of constant space for the stack;
the stack size is fixed at the beginning of time.  This fixes a bug in
which the constant space overflowed into the stack space, without
signalling any error.

37 years agoFix bugs in last revision.
Chris Hanson [Tue, 23 Jun 1987 03:31:43 +0000 (03:31 +0000)]
Fix bugs in last revision.

37 years agoGenerate correct code for combinations whose operators are unknown
Chris Hanson [Tue, 23 Jun 1987 03:31:10 +0000 (03:31 +0000)]
Generate correct code for combinations whose operators are unknown
references.

37 years agoGenerate code for letrec-bindings of IC procedures.
Chris Hanson [Tue, 23 Jun 1987 02:17:02 +0000 (02:17 +0000)]
Generate code for letrec-bindings of IC procedures.

37 years agoGenerator for `assignment' statement was using `definition-rvalue'
Chris Hanson [Tue, 23 Jun 1987 02:15:57 +0000 (02:15 +0000)]
Generator for `assignment' statement was using `definition-rvalue'
instead of `assignment-rvalue' (an editing oversight).

37 years agoChange formatting of termination messages.
Chris Hanson [Mon, 22 Jun 1987 20:19:58 +0000 (20:19 +0000)]
Change formatting of termination messages.

37 years agoSave expression register when merging compiled code stack blocks.
Chris Hanson [Mon, 22 Jun 1987 19:59:38 +0000 (19:59 +0000)]
Save expression register when merging compiled code stack blocks.

37 years agoIn entry for IC procedure, equate the internal and external labels,
Chris Hanson [Mon, 22 Jun 1987 19:21:13 +0000 (19:21 +0000)]
In entry for IC procedure, equate the internal and external labels,
since all number of argument checks are performed by the interpreter.

37 years agoGenerate external label for IC procedures.
Chris Hanson [Mon, 22 Jun 1987 18:24:27 +0000 (18:24 +0000)]
Generate external label for IC procedures.

37 years agoGenerate frame-pointer assignment for IC procedures.
Chris Hanson [Mon, 22 Jun 1987 18:23:52 +0000 (18:23 +0000)]
Generate frame-pointer assignment for IC procedures.

37 years agoRemove use of 'in-package' (not supported by the compiler), replacing
Don Allen [Sun, 21 Jun 1987 14:51:56 +0000 (14:51 +0000)]
Remove use of 'in-package' (not supported by the compiler), replacing
with 'local-assignment'

37 years agoChanges for VMS.
Guillermo J. Rozas [Fri, 19 Jun 1987 17:38:18 +0000 (17:38 +0000)]
Changes for VMS.

37 years agoChanges for VMS.
Guillermo J. Rozas [Fri, 19 Jun 1987 15:54:29 +0000 (15:54 +0000)]
Changes for VMS.

37 years agoSome changes for pyramids.
Guillermo J. Rozas [Thu, 18 Jun 1987 22:15:11 +0000 (22:15 +0000)]
Some changes for pyramids.

37 years agoSome changes for BBN and VMS.
Guillermo J. Rozas [Thu, 18 Jun 1987 21:16:04 +0000 (21:16 +0000)]
Some changes for BBN and VMS.

37 years agoSome changes for BBN and VMS.
Guillermo J. Rozas [Thu, 18 Jun 1987 19:55:30 +0000 (19:55 +0000)]
Some changes for BBN and VMS.

37 years agoSome changes for VMS.
Guillermo J. Rozas [Thu, 18 Jun 1987 19:54:55 +0000 (19:54 +0000)]
Some changes for VMS.

37 years agoAdd main_type for VMS.
Guillermo J. Rozas [Thu, 18 Jun 1987 19:54:28 +0000 (19:54 +0000)]
Add main_type for VMS.

37 years agoAdd Band_Dump_Exit_Hook for butterflys.
Guillermo J. Rozas [Thu, 18 Jun 1987 19:18:57 +0000 (19:18 +0000)]
Add Band_Dump_Exit_Hook for butterflys.

37 years agoAdd new rule.
Chris Hanson [Thu, 18 Jun 1987 01:08:51 +0000 (01:08 +0000)]
Add new rule.

37 years agoFix stupid error in last modification.
Chris Hanson [Wed, 17 Jun 1987 21:03:20 +0000 (21:03 +0000)]
Fix stupid error in last modification.

37 years agoFix stupid error in last modification.
Chris Hanson [Wed, 17 Jun 1987 21:01:17 +0000 (21:01 +0000)]
Fix stupid error in last modification.

37 years agoAdd new objects to set of things that do not print. Change
Chris Hanson [Wed, 17 Jun 1987 20:11:29 +0000 (20:11 +0000)]
Add new objects to set of things that do not print.  Change
`unparse-object' (in `unparser-package') to require its third
argument.

37 years agoInitial revision
Chris Hanson [Wed, 17 Jun 1987 19:43:35 +0000 (19:43 +0000)]
Initial revision

37 years agoSplit files.
Chris Hanson [Wed, 17 Jun 1987 19:43:14 +0000 (19:43 +0000)]
Split files.

37 years agoSplit files into parts.
Chris Hanson [Wed, 17 Jun 1987 02:29:11 +0000 (02:29 +0000)]
Split files into parts.

37 years agoInitial revision
Chris Hanson [Wed, 17 Jun 1987 02:16:09 +0000 (02:16 +0000)]
Initial revision

37 years agoFix bug in purify by which the end of block marker was lost/garbled if it
Chris Hanson [Wed, 17 Jun 1987 01:17:31 +0000 (01:17 +0000)]
Fix bug in purify by which the end of block marker was lost/garbled if it
overflowed the window into the gc file.

37 years agoFix bug in purify by which the end of block marker was lost/garbled if it
Chris Hanson [Tue, 16 Jun 1987 23:43:14 +0000 (23:43 +0000)]
Fix bug in purify by which the end of block marker was lost/garbled if it
overflowed the window into the gc file.

37 years ago`:read-string' operation for string input ports must move the position
Chris Hanson [Tue, 16 Jun 1987 22:43:55 +0000 (22:43 +0000)]
`:read-string' operation for string input ports must move the position
index when it encounters end of string.

37 years agoCharacter parser must be careful near end of file.
Chris Hanson [Tue, 16 Jun 1987 22:39:53 +0000 (22:39 +0000)]
Character parser must be careful near end of file.

37 years ago*** empty log message ***
Chris Hanson [Tue, 16 Jun 1987 04:19:53 +0000 (04:19 +0000)]
*** empty log message ***

37 years ago*** empty log message ***
Chris Hanson [Tue, 16 Jun 1987 04:18:48 +0000 (04:18 +0000)]
*** empty log message ***

37 years agoCorrectly fix unparser to detect unparsing of partially marked
Chris Hanson [Mon, 15 Jun 1987 23:42:12 +0000 (23:42 +0000)]
Correctly fix unparser to detect unparsing of partially marked
vectors.

37 years agoChange `error_external_error' to correct name `error_external_return'.
Chris Hanson [Mon, 15 Jun 1987 23:02:20 +0000 (23:02 +0000)]
Change `error_external_error' to correct name `error_external_return'.

37 years agoRetract last change.
Chris Hanson [Mon, 15 Jun 1987 22:44:31 +0000 (22:44 +0000)]
Retract last change.

37 years agoUse `reference-alias-register!' in some appropriate places. These
Chris Hanson [Mon, 15 Jun 1987 22:05:31 +0000 (22:05 +0000)]
Use `reference-alias-register!' in some appropriate places.  These
places were not properly loading alias registers under certain
circumstances.

37 years agoRedefine `reference-alias-register!' to load the alias register rather
Chris Hanson [Mon, 15 Jun 1987 22:04:22 +0000 (22:04 +0000)]
Redefine `reference-alias-register!' to load the alias register rather
than just allocating it.  This is almost always what is desired.

37 years agoIn `indirect-reference!', need to load the alias register that is
Chris Hanson [Mon, 15 Jun 1987 22:03:23 +0000 (22:03 +0000)]
In `indirect-reference!', need to load the alias register that is
allocated under certain circumstances.

37 years agoReason:
Guillermo J. Rozas [Mon, 15 Jun 1987 19:29:41 +0000 (19:29 +0000)]
Reason:
  Make fasdump in bchscheme back out when the object being dumped is too large.
Files changed:
  bchdmp.c
  bchgcc.h
  bchgcl.c
  bchmmg.c
  bchpur.c
  TODO

37 years agoMake fasdump in bchscheme back out when the object being dumped is too large.
Guillermo J. Rozas [Mon, 15 Jun 1987 19:26:16 +0000 (19:26 +0000)]
Make fasdump in bchscheme back out when the object being dumped is too large.

37 years agoMake vector unparser smarter about looking for nmv headers within the
Chris Hanson [Mon, 15 Jun 1987 18:22:43 +0000 (18:22 +0000)]
Make vector unparser smarter about looking for nmv headers within the
vector so that we do not blindly unparse partially marked vectors.

37 years agoChange primitives to use new type code for compiled-code-block.
Chris Hanson [Mon, 15 Jun 1987 18:21:00 +0000 (18:21 +0000)]
Change primitives to use new type code for compiled-code-block.
Change print name to match one in runtime system.

37 years agoFix logic for determining end-of-file in a buffered input port.
Chris Hanson [Mon, 15 Jun 1987 18:09:02 +0000 (18:09 +0000)]
Fix logic for determining end-of-file in a buffered input port.

37 years agoInitial revision
Chris Hanson [Sat, 13 Jun 1987 21:18:20 +0000 (21:18 +0000)]
Initial revision

37 years agoBreak up files into smaller pieces for compilation.
Chris Hanson [Sat, 13 Jun 1987 21:17:14 +0000 (21:17 +0000)]
Break up files into smaller pieces for compilation.

37 years agoBreak up files into smaller pieces for compilation.
Chris Hanson [Sat, 13 Jun 1987 21:08:57 +0000 (21:08 +0000)]
Break up files into smaller pieces for compilation.

37 years agoInitial revision
Chris Hanson [Sat, 13 Jun 1987 20:59:21 +0000 (20:59 +0000)]
Initial revision

37 years agoBreak up file into smaller pieces for compilation.
Chris Hanson [Sat, 13 Jun 1987 20:56:33 +0000 (20:56 +0000)]
Break up file into smaller pieces for compilation.

37 years agoInitialize package structure.
Chris Hanson [Sat, 13 Jun 1987 20:49:35 +0000 (20:49 +0000)]
Initialize package structure.

37 years agoMissing whitespace.
Chris Hanson [Sat, 13 Jun 1987 20:45:51 +0000 (20:45 +0000)]
Missing whitespace.

37 years agoChange contents of `*ic-procedure-headers*' so that it can be
Chris Hanson [Sat, 13 Jun 1987 20:17:39 +0000 (20:17 +0000)]
Change contents of `*ic-procedure-headers*' so that it can be
fasdumped.

37 years agoRestructure packaging to eliminate explicit make-environment in
Chris Hanson [Sat, 13 Jun 1987 20:16:51 +0000 (20:16 +0000)]
Restructure packaging to eliminate explicit make-environment in
"regmap".

37 years agoRestructure packaging to eliminate explicit make-environment in
Chris Hanson [Sat, 13 Jun 1987 19:41:12 +0000 (19:41 +0000)]
Restructure packaging to eliminate explicit make-environment in
"regmap".

37 years agoDecisions to use variable cache mechanism are raised to a higher level
Chris Hanson [Sat, 13 Jun 1987 03:01:28 +0000 (03:01 +0000)]
Decisions to use variable cache mechanism are raised to a higher level
to allow special handling of IC procedure references.

37 years agoWhen counting the operands of a combination, do not include operands
Chris Hanson [Sat, 13 Jun 1987 00:14:10 +0000 (00:14 +0000)]
When counting the operands of a combination, do not include operands
which do not push any values.  This means that `length' is not
adequate for computing the number of operands.  Instead use the new
procedure `count-operands'.

37 years agoWhen generating code for combinations whose operator is known, use
Chris Hanson [Fri, 12 Jun 1987 21:51:10 +0000 (21:51 +0000)]
When generating code for combinations whose operator is known, use
original parameters to that procedure to determine which operands must
be pushed.

37 years agoFix bugs in signalling of interrupts through the compiled code
Chris Hanson [Thu, 11 Jun 1987 22:22:41 +0000 (22:22 +0000)]
Fix bugs in signalling of interrupts through the compiled code
interface to the lookup code.

37 years agoHandle pathological error codes in `Do_Micro_Error'.
Chris Hanson [Thu, 11 Jun 1987 21:51:44 +0000 (21:51 +0000)]
Handle pathological error codes in `Do_Micro_Error'.

37 years agoPass error-code to error handlers as well as expression, since some
Chris Hanson [Thu, 11 Jun 1987 21:30:21 +0000 (21:30 +0000)]
Pass error-code to error handlers as well as expression, since some
error handlers need to know this.

37 years ago`generate-invocation-prefix' now knows not to reallocate fixed
Chris Hanson [Thu, 11 Jun 1987 20:48:14 +0000 (20:48 +0000)]
`generate-invocation-prefix' now knows not to reallocate fixed
register arguments to invocations.  In particular,
`cache-reference-apply' accepts A3 as an argument, and under certain
circumstances that register was being allocated as a temporary for the
`move-frame-up' invocation.

37 years agoAdd `need-registers!' operation.
Chris Hanson [Thu, 11 Jun 1987 20:44:20 +0000 (20:44 +0000)]
Add `need-registers!' operation.

37 years agoThis commit was generated by cvs2svn to compensate for changes in r458,
Guillermo J. Rozas [Wed, 10 Jun 1987 21:22:36 +0000 (21:22 +0000)]
This commit was generated by cvs2svn to compensate for changes in r458,
which included commits to RCS files with non-trunk default branches.

37 years agoAdd original bindings for transformers.
Guillermo J. Rozas [Wed, 10 Jun 1987 21:22:36 +0000 (21:22 +0000)]
Add original bindings for transformers.

37 years agoFor `move-frame-up' invocation prefix, zero frame-size does not
Chris Hanson [Wed, 10 Jun 1987 19:48:46 +0000 (19:48 +0000)]
For `move-frame-up' invocation prefix, zero frame-size does not
indicate that nothing need be done.

37 years agoSplit some files up for compilation.
Chris Hanson [Tue, 9 Jun 1987 19:59:29 +0000 (19:59 +0000)]
Split some files up for compilation.

37 years agoInitial revision
Chris Hanson [Tue, 9 Jun 1987 19:56:56 +0000 (19:56 +0000)]
Initial revision

37 years agoSplit into pieces for compilation.
Chris Hanson [Tue, 9 Jun 1987 19:56:30 +0000 (19:56 +0000)]
Split into pieces for compilation.

37 years agoFix bug in assignment to compiler cached variables.
Chris Hanson [Tue, 9 Jun 1987 18:50:05 +0000 (18:50 +0000)]
Fix bug in assignment to compiler cached variables.

37 years ago`load-dnw' returns a single instruction, not a list.
Chris Hanson [Mon, 8 Jun 1987 14:50:15 +0000 (14:50 +0000)]
`load-dnw' returns a single instruction, not a list.

37 years agoMust treat error-combination specially here to prevent block from
Chris Hanson [Fri, 5 Jun 1987 21:36:53 +0000 (21:36 +0000)]
Must treat error-combination specially here to prevent block from
being marked unsafe.

37 years agoDefine new type code for compiled code blocks to guarantee that they
Chris Hanson [Fri, 5 Jun 1987 20:56:37 +0000 (20:56 +0000)]
Define new type code for compiled code blocks to guarantee that they
are not put in pure space.

37 years agoFix stupid bug where files were not fasloaded in `load-system!'.
Chris Hanson [Fri, 5 Jun 1987 20:41:54 +0000 (20:41 +0000)]
Fix stupid bug where files were not fasloaded in `load-system!'.

37 years agoRenamed variable.
Chris Hanson [Fri, 5 Jun 1987 19:55:06 +0000 (19:55 +0000)]
Renamed variable.

37 years agoDefine new type code for compiled code blocks to guarantee that they
Chris Hanson [Fri, 5 Jun 1987 18:04:01 +0000 (18:04 +0000)]
Define new type code for compiled code blocks to guarantee that they
are not put in pure space.

37 years agoNew microcode handles purification of compiled code blocks without
Chris Hanson [Fri, 5 Jun 1987 18:02:50 +0000 (18:02 +0000)]
New microcode handles purification of compiled code blocks without
special treatment by the runtime system.

37 years agoDefine new type code for compiled code blocks to guarantee that they
Chris Hanson [Fri, 5 Jun 1987 17:29:53 +0000 (17:29 +0000)]
Define new type code for compiled code blocks to guarantee that they
are not put in pure space.

37 years agoDefine new type code for compiled code blocks to guarantee that they
Chris Hanson [Fri, 5 Jun 1987 17:23:11 +0000 (17:23 +0000)]
Define new type code for compiled code blocks to guarantee that they
are not put in pure space.

37 years agoDo not put compiled code into pure space, just constant space. This
Chris Hanson [Fri, 5 Jun 1987 16:28:08 +0000 (16:28 +0000)]
Do not put compiled code into pure space, just constant space.  This
is a temporary hack until the microcode is fixed to recognize compiled
code blocks specially.

37 years agoChange definition and name of compiler address operations so that they
Chris Hanson [Fri, 5 Jun 1987 16:25:42 +0000 (16:25 +0000)]
Change definition and name of compiler address operations so that they
work on all kinds of compiled code addresses.

37 years agoFix a long standing bug in fasdump, fasload, band-dump, and band-load.
Guillermo J. Rozas [Fri, 5 Jun 1987 04:16:55 +0000 (04:16 +0000)]
Fix a long standing bug in fasdump, fasload, band-dump, and band-load.
If a file write fails, a scheme error is reported.  Similarly if a
read fails.

37 years agoFix `unfold-and-reverse-rib' so that it properly handles both kinds of
Chris Hanson [Thu, 4 Jun 1987 21:08:49 +0000 (21:08 +0000)]
Fix `unfold-and-reverse-rib' so that it properly handles both kinds of
dummy compiler reductions.  Previously it was only handling those that
were generated by `New_Compiler_Subproblem' in the microcode.

37 years agoAdd support for multiple cache-variable entries.
Chris Hanson [Thu, 4 Jun 1987 15:56:01 +0000 (15:56 +0000)]
Add support for multiple cache-variable entries.

37 years agoInitial revision
Chris Hanson [Thu, 4 Jun 1987 00:07:18 +0000 (00:07 +0000)]
Initial revision

37 years agoAdd error handlers for compiled code unbound/unassigned variable
Chris Hanson [Thu, 4 Jun 1987 00:02:13 +0000 (00:02 +0000)]
Add error handlers for compiled code unbound/unassigned variable
errors during lookup-apply operations.

37 years agoNew primitive `return-address-block'.
Chris Hanson [Wed, 3 Jun 1987 20:59:23 +0000 (20:59 +0000)]
New primitive `return-address-block'.
Alias `return-code' for `return-address'.

37 years agoCreate multiple cache-variable entries in the compiled code interface.
Chris Hanson [Wed, 3 Jun 1987 19:57:42 +0000 (19:57 +0000)]
Create multiple cache-variable entries in the compiled code interface.

37 years agoBug in dumpworld.
Guillermo J. Rozas [Tue, 2 Jun 1987 23:44:38 +0000 (23:44 +0000)]
Bug in dumpworld.

37 years agoChange the frame-size for invocation:lookup to indicate the size of
Chris Hanson [Tue, 2 Jun 1987 21:19:34 +0000 (21:19 +0000)]
Change the frame-size for invocation:lookup to indicate the size of
the frame at application time rather than when it executes the
instruction.

37 years agoOptimize code being emitted for lookup-apply.
Chris Hanson [Tue, 2 Jun 1987 18:49:05 +0000 (18:49 +0000)]
Optimize code being emitted for lookup-apply.

37 years agoCombination should be added to vnode-combinations of the operator
Chris Hanson [Tue, 2 Jun 1987 18:44:05 +0000 (18:44 +0000)]
Combination should be added to vnode-combinations of the operator
vnode, if any.  Previously it was added to vnode-combinations of the
combination-value, completely incorrect.

37 years agoChange unsyntaxing of `error' and `bkpt', which now use absolute
Chris Hanson [Tue, 2 Jun 1987 13:24:17 +0000 (13:24 +0000)]
Change unsyntaxing of `error' and `bkpt', which now use absolute
references for the combination operator.

37 years agoChange `error' and `bkpt' macros to use absolute references for the
Chris Hanson [Tue, 2 Jun 1987 13:13:29 +0000 (13:13 +0000)]
Change `error' and `bkpt' macros to use absolute references for the
operator of the expansion.