Chris Hanson [Wed, 5 Apr 1989 04:29:03 +0000 (04:29 +0000)]
Organize handling of file system errors so that they share a common
generalization type.
Chris Hanson [Wed, 5 Apr 1989 04:27:38 +0000 (04:27 +0000)]
Use proper error-type to signal open file error.
Chris Hanson [Wed, 5 Apr 1989 04:26:29 +0000 (04:26 +0000)]
Initial revision
Chris Hanson [Wed, 5 Apr 1989 04:25:52 +0000 (04:25 +0000)]
Move unix primitives elsewhere.
Chris Hanson [Wed, 5 Apr 1989 04:25:25 +0000 (04:25 +0000)]
Can't use `po' in the runtime system -- it is strictly a part of the
compiler. Use `pp' instead.
Chris Hanson [Mon, 3 Apr 1989 22:03:55 +0000 (22:03 +0000)]
When a procedure appears in the operator position, the free variables
of all of its callees, as well as itself, must be collected.
Guillermo J. Rozas [Thu, 30 Mar 1989 16:40:21 +0000 (16:40 +0000)]
1) Add support for ordinary terminals by using the curses library.
2) Eliminate some interrupt windows in direct output.
3) Add operations to the screen data structure to accomodate curses.
4) Add a new structure, a display, which consists of a keyboard and a screen.
5) Conditions not trapped by edwin now revert to the user in a
reasonable way, ie. the terminal should be in the same state that it
was before edwin was entered.
6) Reentering edwin after an unhandled condition updates the display.
7) The interaction buffer prompt is now inserted in the "exit" thunk
of the dynamic unwind, so that an abort will insert it as well.
8) Fix wrong number of args bug in ^R Screen Video.
Panayotis Skordos [Wed, 29 Mar 1989 04:34:06 +0000 (04:34 +0000)]
array-cons-reals: use double precision as much as possible
Guillermo J. Rozas [Wed, 29 Mar 1989 04:14:08 +0000 (04:14 +0000)]
Fix a trivial bug in the open coding of SYSTEM-VECTOR-SIZE and
VECTOR-LENGTH. The header's type code field must be cleared before
or'ing in the new type.
Guillermo J. Rozas [Wed, 29 Mar 1989 02:45:50 +0000 (02:45 +0000)]
Add support for trap recovery:
- New condition types for hardware traps have been added.
- The stack parser knows how to parse (heuristically) the trap
recovery information.
- The debugger prints a description of the context of the trap.
- hardware-trap-frame/print-registers and
hardware-trap-frame/print-stack can be used on stack-frames of type
hardware-trap to display more information.
- The debugger's Y command (new) prints the stack frame structure
corresponding to the current subproblem.
Arthur Gleckler [Tue, 28 Mar 1989 20:41:57 +0000 (20:41 +0000)]
Deleted second copy of copyright message.
Guillermo J. Rozas [Tue, 28 Mar 1989 20:39:19 +0000 (20:39 +0000)]
Registers[REGBLOCK_PRIMITIVE] is now cleared when a primitive aborts
with a non-error/interrupt code.
Guillermo J. Rozas [Mon, 27 Mar 1989 23:17:29 +0000 (23:17 +0000)]
Trap recovery has been changed. The microcode attempts to determine
how much state is valid and then saves all the pertinent information
(pc, registers, etc) so that the context of the trap and the rest of
the stack can be examined from scheme.
Primitives for reading/setting/enabling the keyboard interrupt
characters have been added. There is now a single C keyboard
interrupt handler which dispatches according to the signal received
and what the current handler is supposed to do.
Scheme tty input has been rewritten for the NTH time. reader_context
and reader_state structures have been merged.
Guillermo J. Rozas [Thu, 23 Mar 1989 20:43:59 +0000 (20:43 +0000)]
Add optional filename argument to read-microcode-tables! to specify
a users own filename from scheme.
Chris Hanson [Wed, 15 Mar 1989 19:17:06 +0000 (19:17 +0000)]
*** empty log message ***
Chris Hanson [Wed, 15 Mar 1989 19:15:20 +0000 (19:15 +0000)]
Changes to make Dired work better.
Chris Hanson [Wed, 15 Mar 1989 19:14:38 +0000 (19:14 +0000)]
Changes to make this work with Emacs' tags tables.
Chris Hanson [Wed, 15 Mar 1989 19:14:13 +0000 (19:14 +0000)]
Change `read-buffer' to correctly update the read-only flag. Also fix
some bugs which might have occurred if the truename was #F.
Chris Hanson [Wed, 15 Mar 1989 19:13:05 +0000 (19:13 +0000)]
Change `current-default-pathname' and `pathname->buffer-name' to
support dired better. Add new operation `prompt-for-directory' to
help out as well.
Chris Hanson [Wed, 15 Mar 1989 19:11:35 +0000 (19:11 +0000)]
When evaluation errors occur, pop up buffer with error message in it.
Chris Hanson [Wed, 15 Mar 1989 19:10:42 +0000 (19:10 +0000)]
*** empty log message ***
Chris Hanson [Wed, 15 Mar 1989 19:10:20 +0000 (19:10 +0000)]
A number of changes to accomodate the unix environment.
Chris Hanson [Wed, 15 Mar 1989 19:09:51 +0000 (19:09 +0000)]
Remove `writeable?' flag; define writability in terms of
`group-read-only?'.
Chris Hanson [Wed, 15 Mar 1989 19:08:39 +0000 (19:08 +0000)]
Don't echo fasloads to REPL when loading libraries.
Chris Hanson [Wed, 15 Mar 1989 04:42:06 +0000 (04:42 +0000)]
*** empty log message ***
Chris Hanson [Tue, 14 Mar 1989 19:49:07 +0000 (19:49 +0000)]
Changes to repackage the environment optimizer.
Chris Hanson [Tue, 14 Mar 1989 19:45:15 +0000 (19:45 +0000)]
`undrift-procedure!' must set the block-parent of the procedure's
block to match the new closing-limit. Also: change the handling of
the closing-limit to guarantee that it is always either the same as
the closing-block, or #F; reorganize the code a bit.
Chris Hanson [Tue, 14 Mar 1989 19:42:25 +0000 (19:42 +0000)]
Rule which prevents lifting procedures of some "LET-like" procedures
is too general. Should not prevent trivial closures from being lifted
as far as they can.
Chris Hanson [Tue, 14 Mar 1989 19:38:55 +0000 (19:38 +0000)]
Can't pass a context to `make-return', because it expects a block.
This is because this procedure is usually called from fggen, and the
contexts are constructed later. Change this code to pass the block
and then clobber it.
Chris Hanson [Tue, 14 Mar 1989 19:35:30 +0000 (19:35 +0000)]
The `block/procedure' of a block is not always a procedure (it might
be an expression). Sometimes must check it to make sure.
Chris Hanson [Tue, 14 Mar 1989 09:33:13 +0000 (09:33 +0000)]
Export `condition/message' for use in error-reporting handlers.
Chris Hanson [Tue, 14 Mar 1989 08:18:39 +0000 (08:18 +0000)]
Fix another trivial bug.
Chris Hanson [Tue, 14 Mar 1989 08:12:21 +0000 (08:12 +0000)]
Initial revision
Chris Hanson [Tue, 14 Mar 1989 08:04:03 +0000 (08:04 +0000)]
Initial working version for C-Scheme.
Chris Hanson [Tue, 14 Mar 1989 02:23:10 +0000 (02:23 +0000)]
Don't use vector-ref on result of file-attributes.
Chris Hanson [Tue, 14 Mar 1989 02:18:42 +0000 (02:18 +0000)]
*** empty log message ***
Chris Hanson [Tue, 14 Mar 1989 02:18:01 +0000 (02:18 +0000)]
Change `delete-file' to return #F if the file does not exist, instead
of signalling an error.
Chris Hanson [Tue, 14 Mar 1989 02:17:20 +0000 (02:17 +0000)]
Add new operations to support Edwin:
file-modes
set-file-modes!
unix/file-access
file-writable?
unix/current-uid
unix/current-gid
Chris Hanson [Tue, 14 Mar 1989 02:16:13 +0000 (02:16 +0000)]
Change `identify-world' to accept an output port as its optional
argument, rather than a cmdl.
Chris Hanson [Tue, 14 Mar 1989 01:59:28 +0000 (01:59 +0000)]
Various changes to support Edwin.
Chris Hanson [Tue, 14 Mar 1989 01:59:01 +0000 (01:59 +0000)]
Implement new primitives to support Edwin:
file-modes
set-file-modes!
file-access
current-uid
current-gid
Chris Hanson [Tue, 14 Mar 1989 01:57:33 +0000 (01:57 +0000)]
Initial revision
Chris Hanson [Tue, 14 Mar 1989 01:57:10 +0000 (01:57 +0000)]
Fix some random typos.
Chris Hanson [Fri, 10 Mar 1989 08:05:25 +0000 (08:05 +0000)]
Add rule for
(ASSIGN (BYTE-OFFSET (REGISTER (? address)) (? offset))
(REGISTER (? source)))
Chris Hanson [Tue, 7 Mar 1989 01:23:35 +0000 (01:23 +0000)]
*** empty log message ***
Chris Hanson [Tue, 7 Mar 1989 01:23:04 +0000 (01:23 +0000)]
Add handlers for other errors that can be signalled by
`environment-link-name'.
Chris Hanson [Tue, 7 Mar 1989 01:21:30 +0000 (01:21 +0000)]
Add `weak-memq'. Make compound car/cdr operations type-safe.
Chris Hanson [Mon, 6 Mar 1989 20:00:30 +0000 (20:00 +0000)]
Export new operations to global environment.
Chris Hanson [Mon, 6 Mar 1989 19:59:42 +0000 (19:59 +0000)]
Add new operations `with-cmdl/{in,out}put-port'.
Chris Hanson [Mon, 6 Mar 1989 19:59:05 +0000 (19:59 +0000)]
Add new operation `object-component-binder'.
Chris Hanson [Mon, 6 Mar 1989 19:58:24 +0000 (19:58 +0000)]
Add new operation `set-current-output-port!'.
Chris Hanson [Mon, 6 Mar 1989 19:57:44 +0000 (19:57 +0000)]
Add new operation `set-current-input-port!'.
Chris Hanson [Thu, 2 Mar 1989 02:16:55 +0000 (02:16 +0000)]
*** empty log message ***
Gerald Jay Sussman [Wed, 1 Mar 1989 00:16:30 +0000 (00:16 +0000)]
Add \n\ to end of each line in primitive procedure documentation
strings.
Chris Hanson [Tue, 28 Feb 1989 18:36:10 +0000 (18:36 +0000)]
*** empty log message ***
Chris Hanson [Tue, 28 Feb 1989 18:35:03 +0000 (18:35 +0000)]
Add "record" package from JAR.
Chris Hanson [Tue, 28 Feb 1989 18:34:09 +0000 (18:34 +0000)]
Initial revision
Chris Hanson [Tue, 28 Feb 1989 18:23:55 +0000 (18:23 +0000)]
Allow stored description of named structure to be either a defstruct
structure description, or a procedure. In the latter case the
procedure is just called to produce the description.
Chris Hanson [Tue, 28 Feb 1989 17:06:47 +0000 (17:06 +0000)]
*** empty log message ***
Chris Hanson [Tue, 28 Feb 1989 17:05:50 +0000 (17:05 +0000)]
Fencepost error in `zellers-congruence' caused day of week to be
incorrect in February.
Chris Hanson [Tue, 28 Feb 1989 16:49:52 +0000 (16:49 +0000)]
`proceed' from an error, with an argument, wasn't skipping the first
subproblem frame.
Chris Hanson [Fri, 24 Feb 1989 09:29:05 +0000 (09:29 +0000)]
*** empty log message ***
Chris Hanson [Fri, 24 Feb 1989 09:28:33 +0000 (09:28 +0000)]
Add support for X11 graphics on HP machines.
Chris Hanson [Fri, 24 Feb 1989 09:24:50 +0000 (09:24 +0000)]
Initial revision
Chris Hanson [Wed, 22 Feb 1989 07:16:34 +0000 (07:16 +0000)]
Don't treat data lists like combinations.
Guillermo J. Rozas [Sun, 19 Feb 1989 20:02:52 +0000 (20:02 +0000)]
Fix a problem whereby invalid C was generated when there were no primitives.
Guillermo J. Rozas [Sun, 19 Feb 1989 18:09:08 +0000 (18:09 +0000)]
Fix problem with duplicate definition of PI.
Guillermo J. Rozas [Sun, 19 Feb 1989 17:52:08 +0000 (17:52 +0000)]
Some changes to unix.c to remove most conditionalization by machine
and OS type. Most of the code is now conditionalized according to
flags like HAS_<mumble> or macros defined by the included files.
mul.c is now included by fixnum.c, and all the assembly language
versions have been moved to mul.c.
Guillermo J. Rozas [Fri, 17 Feb 1989 15:05:19 +0000 (15:05 +0000)]
Fix a declaration in Mul.
Guillermo J. Rozas [Wed, 15 Feb 1989 19:23:27 +0000 (19:23 +0000)]
Fix some documentation on flags, and add sun4 info.
Guillermo J. Rozas [Wed, 15 Feb 1989 18:47:04 +0000 (18:47 +0000)]
Improve mantissa bit computation so that it takes round-off into account.
Guillermo J. Rozas [Wed, 15 Feb 1989 03:29:34 +0000 (03:29 +0000)]
Some enhancements for floating alignment and error checking.
Guillermo J. Rozas [Tue, 14 Feb 1989 20:41:32 +0000 (20:41 +0000)]
Fix uninitialized variable bug.
Guillermo J. Rozas [Fri, 10 Feb 1989 23:37:59 +0000 (23:37 +0000)]
Fix within-continuation and rewrite invocation-method/reentrant to
perform the state space motion after the control throw.
Guillermo J. Rozas [Fri, 10 Feb 1989 23:35:57 +0000 (23:35 +0000)]
Add #@ to read back hashed objects.
Fix within-continuation and rewrite invocation-method/reentrant to
perform the state space motion after the control throw.
Guillermo J. Rozas [Fri, 10 Feb 1989 22:13:50 +0000 (22:13 +0000)]
Add #@ to read back hashed objects.
Chris Hanson [Thu, 9 Feb 1989 04:16:28 +0000 (04:16 +0000)]
Pretty-printer needs definition of `unparse-list/prefix-pair?' from
unparser.
Chris Hanson [Thu, 9 Feb 1989 03:48:44 +0000 (03:48 +0000)]
*** empty log message ***
Chris Hanson [Thu, 9 Feb 1989 03:45:36 +0000 (03:45 +0000)]
Unparser now treats QUASIQUOTE, UNQUOTE, and UNQUOTE-SPLICING
specially.
Chris Hanson [Wed, 8 Feb 1989 22:43:50 +0000 (22:43 +0000)]
`define-structure' macro should return the name of the structure which
was defined.
Chris Hanson [Mon, 30 Jan 1989 13:04:03 +0000 (13:04 +0000)]
Eliminate C compiler warning.
Chris Hanson [Sat, 21 Jan 1989 09:29:50 +0000 (09:29 +0000)]
Eliminate unreferenced variable warning.
Chris Hanson [Sat, 21 Jan 1989 09:23:03 +0000 (09:23 +0000)]
*** empty log message ***
Chris Hanson [Sat, 21 Jan 1989 09:22:17 +0000 (09:22 +0000)]
Define `combination/inline/simple?'.
Chris Hanson [Sat, 21 Jan 1989 09:21:37 +0000 (09:21 +0000)]
Add several new rules which are needed because of changes to the
expression simplifier in the RTL generator. Rewrite the rules for
handling string manipulation: the previous rules weren't complete or
accurate.
Chris Hanson [Sat, 21 Jan 1989 09:18:55 +0000 (09:18 +0000)]
Change the expression-simplification to generate temporaries for more
kinds of expressions. This provides more intermediate values for the
CSE to work on, allowing it to do a better job, but assumes that the
code compressor will eliminate them later.
Chris Hanson [Sat, 21 Jan 1989 09:16:27 +0000 (09:16 +0000)]
Implement more aggressive compression of the RTL, because the
intermediate swell caused by having one RTL instruction per bblock
object finally exceeded the available memory for a reasonable file.
The current solution, which compresses the instructions associated
with each FG node as they are generated, saves a considerable amount
of space.
Chris Hanson [Sat, 21 Jan 1989 09:12:29 +0000 (09:12 +0000)]
Open coding of primitives: flesh out the type and range checking,
which was previously a little spotty (e.g. general-car-cdr had no type
checking). Improve handling of `string-ref' and `string-set!' so that
they inline code in the computed index case. Flush inline coding of
`char->ascii', which was incorrect anyway since it didn't check to see
if the character was in the ASCII range.
Chris Hanson [Sat, 21 Jan 1989 09:09:28 +0000 (09:09 +0000)]
Change simplicity analysis: previously all inline coded combinations
were treated as simple, now there are some (e.g. generic arithmetic)
which are not. There is still a problem relating to type checking
which could cause problems: if a type or range check fails in an
otherwise simple inlined combination, the exception handling is not
simple. This should be fixed without making the entire combination
non-simple.
Chris Hanson [Sat, 21 Jan 1989 09:06:39 +0000 (09:06 +0000)]
Change CSE to record expressions as their values are pushed on the
stack; previously these expressions weren't recorded until their first
reference. Fix `insert-stack-destination!' which was not setting up
the quantity associated with a stack slot correctly. Fix stack model
which was not invalidating things correctly when pops occurred.
Change method for `invocation:special-primitive' to forget the
contents of all pseudo registers.
Chris Hanson [Wed, 18 Jan 1989 19:44:06 +0000 (19:44 +0000)]
Remove all dependencies on "rtlbase/rtlcon".
Chris Hanson [Wed, 18 Jan 1989 13:49:56 +0000 (13:49 +0000)]
Fix stupid typo in `increment-machine-register'.
Chris Hanson [Wed, 18 Jan 1989 09:58:56 +0000 (09:58 +0000)]
Add definitions of `address-units-per-object' and
`address-units-per-packed-char', which are more convenient numbers to
manipulate when doing index arithmetic.
Chris Hanson [Wed, 18 Jan 1989 04:04:07 +0000 (04:04 +0000)]
Fix bug in rule for this expression:
(ASSIGN (OFFSET (REGISTER (? a)) (? n)) (FIXNUM->OBJECT (REGISTER (? source))))
There was a non-obvious order of argument evaluation problem here.
Chris Hanson [Sat, 7 Jan 1989 01:25:15 +0000 (01:25 +0000)]
Bug in interaction of continuation-entry setup code and invocation of
primitive for which the continuation-entry was created: the push of
extra items (e.g. dynamic link) was happening before the arguments to
the primitive were stashed in registers. The result was that
arguments that depended on the stack pointer were gobbling up the
wrong stuff.
Chris Hanson [Sat, 7 Jan 1989 00:24:54 +0000 (00:24 +0000)]
Fix several bugs in the stack-frame->continuation unparser.
It now seems to work on compiled code as well.
Chris Hanson [Fri, 6 Jan 1989 23:01:21 +0000 (23:01 +0000)]
Fix bug in Z command. Change G command so that it doesn't needlessly
load debugging information for frames that aren't displayed.
Chris Hanson [Fri, 6 Jan 1989 22:25:08 +0000 (22:25 +0000)]
Extend V and Z commands to allow lookup of symbols in compiled code
environments.
Chris Hanson [Fri, 6 Jan 1989 22:24:05 +0000 (22:24 +0000)]
Redefine `debug/eval' so that it will lookup symbols in compiled code
environments. Remove call to `hook/repl-environment' which seems
unnecessary.
Chris Hanson [Fri, 6 Jan 1989 21:00:48 +0000 (21:00 +0000)]
Change handling of debugging information to match changes in compiler
version 4.37. Add facilities for accessing source code from debugging
info. Add where commands `p' and `s' to debugger, moving the old
commands bound to those keys. Change debugger display formats a bit.