Guillermo J. Rozas [Mon, 24 Feb 1992 22:10:33 +0000 (22:10 +0000)]
Add conditionalization on REGBLOCK_ALLOCATED_BY_INTERFACE.
Guillermo J. Rozas [Thu, 20 Feb 1992 21:22:57 +0000 (21:22 +0000)]
This commit was generated by cvs2svn to compensate for changes in r4576,
which included commits to RCS files with non-trunk default branches.
Guillermo J. Rozas [Thu, 20 Feb 1992 21:22:57 +0000 (21:22 +0000)]
Fix herald string.
Guillermo J. Rozas [Thu, 20 Feb 1992 16:33:15 +0000 (16:33 +0000)]
Add 386 processor definitions.
Guillermo J. Rozas [Thu, 20 Feb 1992 16:30:07 +0000 (16:30 +0000)]
Yet another mach fp bug on 386s.
Guillermo J. Rozas [Thu, 20 Feb 1992 16:23:58 +0000 (16:23 +0000)]
Fix bug in modf. It was not preserving the sign of the operand,
making floor and ceiling only work for positive values.
Guillermo J. Rozas [Thu, 20 Feb 1992 05:30:14 +0000 (05:30 +0000)]
Back-merge with 7.1.3
Guillermo J. Rozas [Thu, 20 Feb 1992 05:30:14 +0000 (05:30 +0000)]
This commit was generated by cvs2svn to compensate for changes in r4567,
which included commits to RCS files with non-trunk default branches.
Guillermo J. Rozas [Wed, 19 Feb 1992 23:56:32 +0000 (23:56 +0000)]
Add missing comma in CONS-MULTICLOSURE rule.
Guillermo J. Rozas [Wed, 19 Feb 1992 22:02:51 +0000 (22:02 +0000)]
Back-merged version to run under 7.1.3.
Guillermo J. Rozas [Wed, 19 Feb 1992 22:02:51 +0000 (22:02 +0000)]
This commit was generated by cvs2svn to compensate for changes in r4562,
which included commits to RCS files with non-trunk default branches.
Guillermo J. Rozas [Wed, 19 Feb 1992 19:00:06 +0000 (19:00 +0000)]
First working version of compiled runtime system.
Guillermo J. Rozas [Wed, 19 Feb 1992 18:57:36 +0000 (18:57 +0000)]
Update to reflect compiler port.
Guillermo J. Rozas [Wed, 19 Feb 1992 18:46:18 +0000 (18:46 +0000)]
Conditionalize HAS_FLOOR for i386 under Mach. The library version is
seriously broken.
Guillermo J. Rozas [Wed, 19 Feb 1992 06:18:25 +0000 (06:18 +0000)]
Add missing (ST 0) operands.
Guillermo J. Rozas [Wed, 19 Feb 1992 05:38:05 +0000 (05:38 +0000)]
Add definition of FNLDCW and fix opcode bug in FMULP, etc.
Guillermo J. Rozas [Wed, 19 Feb 1992 05:36:13 +0000 (05:36 +0000)]
Eliminate spurious extra call to flonum-unary-operation/general from
rules involving 1.
Guillermo J. Rozas [Wed, 19 Feb 1992 04:56:56 +0000 (04:56 +0000)]
Add missing operand to FCOMP instructions.
Guillermo J. Rozas [Wed, 19 Feb 1992 04:17:17 +0000 (04:17 +0000)]
Disable FLONUM-EXP because the F2XM1 instruction is broken on some
hardware.
Chris Hanson [Wed, 19 Feb 1992 00:11:02 +0000 (00:11 +0000)]
* Time, load, and mail notification are now separately selectable.
Edwin variables notify-show-time, notify-show-load, and
notify-show-mail select the components.
Additionally, the Scheme variable NOTIFIER-ELEMENTS controls what is
displayed and when; you can add new elements to customize the
notifier for your needs.
* The notifier has been changed to use the new inferior thread output
mechanism, which should eliminate the redisplay bugs that people
have been seeing.
* The command M-x run-notifier is used to start the notifier; M-x
kill-notifier kills it. To start the notifier from your init file,
use ((REF-COMMAND RUN-NOTIFIER)).
* The Edwin variable notify-interval is now in units of seconds
instead of milliseconds.
Chris Hanson [Wed, 19 Feb 1992 00:05:47 +0000 (00:05 +0000)]
Add new mechanism for registering inferior threads that do output.
Each inferior thread has its own flag to indicate when it needs to do
output, and a thunk that is to be run in the editor to produce the
output. When the thread wants to do output, it sets the flag; later,
the editor notices that the flag has been set and calls the thunk.
Chris Hanson [Wed, 19 Feb 1992 00:01:59 +0000 (00:01 +0000)]
Eliminate gratuitous calls from MARK-FLASH and SIT-FOR to
KEYBOARD-PEEK-NO-CHAR. These calls were originally there to eliminate
unnecessary screen update and to make the cursor flash appropriately;
recent changes to KEYBOARD-PEEK-NO-CHAR make this undesirable.
Guillermo J. Rozas [Tue, 18 Feb 1992 22:57:48 +0000 (22:57 +0000)]
Remove rewriting rules for FLONUM-ASIN and FLONUM-ACOS. They cannot
be done in quite this way now.
Guillermo J. Rozas [Tue, 18 Feb 1992 22:57:25 +0000 (22:57 +0000)]
Remove FLONUM-ASIN and FLONUM-ACOS from open-coded list of primitives.
Guillermo J. Rozas [Tue, 18 Feb 1992 22:05:20 +0000 (22:05 +0000)]
Fix currying problem.
Guillermo J. Rozas [Tue, 18 Feb 1992 21:57:31 +0000 (21:57 +0000)]
Fix bug in byte-offset-address re-write rule.
It was constructing invalid RTL, and using the wrong offset to boot.
Guillermo J. Rozas [Tue, 18 Feb 1992 21:56:48 +0000 (21:56 +0000)]
Fix bug in multiply-fixnum-constant. There is no
(IMUL (R ?foo) (& ?bar))
instruction. It is an assembler macro for
(IMUL (R ?foo) (R ?foo) (& ?bar))
Henry M. Wu [Tue, 18 Feb 1992 20:56:12 +0000 (20:56 +0000)]
Macroized sub-directory delimiter to make DOS win.
Added default directories for DOS.
Henry M. Wu [Tue, 18 Feb 1992 20:51:57 +0000 (20:51 +0000)]
Macroized sub-directory delimiter to make DOS win.
Arthur Gleckler [Tue, 18 Feb 1992 20:47:26 +0000 (20:47 +0000)]
Don't record input events in the input history. If an input event
arrives when a keyboard macro is being defined, terminate the keyboard
macro definition before applying the event.
Henry M. Wu [Tue, 18 Feb 1992 20:34:47 +0000 (20:34 +0000)]
Macroized sub-directory delimiter to make DOS win.
Guillermo J. Rozas [Tue, 18 Feb 1992 17:31:11 +0000 (17:31 +0000)]
Changes for 386 port:
Use START/END_OPERATOR_RELOCATION and START/END_CLOSURE_RELOCATION.
Guillermo J. Rozas [Tue, 18 Feb 1992 17:29:32 +0000 (17:29 +0000)]
Changes for 386 port:
Conditionally define some of the macros so that a cmpint-md.h file can
override them.
Use FIRST_OPERATOR_LINKAGE_OFFSET for some of the execute cache
macros.
Guillermo J. Rozas [Tue, 18 Feb 1992 17:28:19 +0000 (17:28 +0000)]
Changes for 386 port:
link_cc_block needed to be changed to set the block relocation
address.
Guillermo J. Rozas [Tue, 18 Feb 1992 16:09:39 +0000 (16:09 +0000)]
Add missing rules (eq-test to machine constant) generated by
rulrew.scm.
Mark Friedman [Tue, 18 Feb 1992 16:00:30 +0000 (16:00 +0000)]
Added the ability to reset SCHEME-ENVIRONMENT (and its default value)
to 'DEFAULT via SET-ENVIRONMENT and SET-DEFAULT-ENVIRONMENT.
Chris Hanson [Tue, 18 Feb 1992 15:24:56 +0000 (15:24 +0000)]
Fix pattern in GET-LOAD-AVERAGE-STRING so it works on Sony.
Detect case where thread is dead; don't send event to it then.
Optimize CHECK-FOR-MAIL.
Chris Hanson [Tue, 18 Feb 1992 15:23:35 +0000 (15:23 +0000)]
Use correct syntax table for "notify".
Chris Hanson [Tue, 18 Feb 1992 14:29:09 +0000 (14:29 +0000)]
Reformatting.
Chris Hanson [Tue, 18 Feb 1992 14:12:29 +0000 (14:12 +0000)]
Eliminate redundant call to UPDATE-SCREENS!.
Chris Hanson [Tue, 18 Feb 1992 14:11:32 +0000 (14:11 +0000)]
Make sure that redisplay occurs whenever any subprocess events occur,
and that it is finished if interrupted.
Chris Hanson [Tue, 18 Feb 1992 14:09:51 +0000 (14:09 +0000)]
Eliminate additional (and harmful) unbinding of local variables in
RESET-EDITOR.
Guillermo J. Rozas [Tue, 18 Feb 1992 14:05:02 +0000 (14:05 +0000)]
Fix bug in apply rule. The procedure was not being passed in the
interface register, and the frame size was passed in the wrong
register.
Guillermo J. Rozas [Tue, 18 Feb 1992 04:35:56 +0000 (04:35 +0000)]
Fix open codings of FIXNUM-REMAINDER, FIXNUM-LSH, and unary fixnum
predicates.
Guillermo J. Rozas [Tue, 18 Feb 1992 04:35:22 +0000 (04:35 +0000)]
Fix JS opcode.
Guillermo J. Rozas [Tue, 18 Feb 1992 04:34:43 +0000 (04:34 +0000)]
Fix bug in transmogrifly. It was inserting too many nulls for the
relocation pointer.
Brian A. LaMacchia [Tue, 18 Feb 1992 03:25:07 +0000 (03:25 +0000)]
START-NOTIFIER modified per CPH's request.
Guillermo J. Rozas [Tue, 18 Feb 1992 01:53:26 +0000 (01:53 +0000)]
Fix bug in rule for
(CONS-POINTER (MACHINE-CONSTANT (? type)) (REGISTER (? datum)))
Guillermo J. Rozas [Tue, 18 Feb 1992 01:52:53 +0000 (01:52 +0000)]
Add package comment.
Guillermo J. Rozas [Tue, 18 Feb 1992 01:52:23 +0000 (01:52 +0000)]
Fix bad opcode in a PUSH rule.
Guillermo J. Rozas [Tue, 18 Feb 1992 01:50:54 +0000 (01:50 +0000)]
Split EXTRACT_EXECUTE_CACHE_ADDRESS from EXTRACT_OPERATOR_LINKAGE_ADDRESS.
The i386 does not need relocation for EXTRACT_EXECUTE_CACHE_ADDRESS,
so it is safer.
Chris Hanson [Tue, 18 Feb 1992 00:17:36 +0000 (00:17 +0000)]
Make sure that screen updates are finished before going into input
wait. Previously screen updates could be interrupted by new events,
and not resumed before input wait.
Guillermo J. Rozas [Mon, 17 Feb 1992 22:38:12 +0000 (22:38 +0000)]
Fix uses of rtl-target:=machine-register!
Guillermo J. Rozas [Mon, 17 Feb 1992 22:37:34 +0000 (22:37 +0000)]
Fix defn. of machine-register-value-class to agree with
number-of-machine-registers.
Guillermo J. Rozas [Mon, 17 Feb 1992 22:36:58 +0000 (22:36 +0000)]
- Add another rule that exapands into PUSH.W &??
- Fix cons-pointer rule.
Guillermo J. Rozas [Mon, 17 Feb 1992 22:35:54 +0000 (22:35 +0000)]
- Change acos and asin rewrites to occur before cse.
- Add a byte-offset-address rule to make use of optimized lapgen rule.
Guillermo J. Rozas [Mon, 17 Feb 1992 22:35:20 +0000 (22:35 +0000)]
Export add-pre-cse-rewriting-rule! from (compiler rtl-optimizer rtl-rewriting)
because rulrew.scm needs it.
Guillermo J. Rozas [Mon, 17 Feb 1992 22:34:45 +0000 (22:34 +0000)]
Fix various incorrect lap instructions.
Guillermo J. Rozas [Mon, 17 Feb 1992 22:34:19 +0000 (22:34 +0000)]
Change object->machine-register! so that it can use a
previously-cached pc value even if it is going to clobber the register
that contains it.
Brian A. LaMacchia [Mon, 17 Feb 1992 22:10:28 +0000 (22:10 +0000)]
If you used mail-and-load-notify, on rmail-get-new-mail your entire
notify string got set to "". This has been fixed.
Chris Hanson [Mon, 17 Feb 1992 22:09:58 +0000 (22:09 +0000)]
Various window-manager events, such as focus selection and closing of
X windows, are passed back from KEYBOARD-READ as special events to be
executed by the caller. Previously, these were handled by the X
terminal abstraction. This allows the caller to recognize that the
user is doing something unusual, and to behave accordingly. For
example, incremental search treats such events exactly like other
complicated editor commands: the search is terminated before the
command is executed.
Chris Hanson [Mon, 17 Feb 1992 22:01:47 +0000 (22:01 +0000)]
Define new variable EDITOR-THREAD-ROOT-CONTINUATION, which is the
continuation for use when spawning threads in the editor. Also change
the environment and syntax-table that the initial *repl* uses to be
inherited from the REPL that Edwin is invoked from.
Guillermo J. Rozas [Mon, 17 Feb 1992 21:41:52 +0000 (21:41 +0000)]
Define add-pre-cse-rewriting-rule! so that machines/??/rulrew.scm can
use it.
Guillermo J. Rozas [Mon, 17 Feb 1992 21:20:57 +0000 (21:20 +0000)]
pattern-lookup was not taking care of repeated pattern variables
correctly. It was looking for the pattern in the list of values!
Patched for now to assume that sharing is rare, and thus extra
work is done then.
To do handle this Correctly, pattern-variables should be modified to
replace each occurrence of a pattern variable with a pattern-variable
+ position, where position is false if this is the first occurrence of
the pattern variable or the index for list-ref of the previous value
if not. This avoids the runtime memq, etc.
Guillermo J. Rozas [Mon, 17 Feb 1992 21:10:22 +0000 (21:10 +0000)]
Give preference to registers over other expressions, even if they have
the same cost. The RTL combiner and rewriting passes can always
make for cheaper expressions if necessary.
Guillermo J. Rozas [Mon, 17 Feb 1992 04:41:04 +0000 (04:41 +0000)]
Fix primitive invocation to use code:compiler-primitive-apply instead
of incorrectly using code:compiler-apply.
Guillermo J. Rozas [Sun, 16 Feb 1992 03:04:44 +0000 (03:04 +0000)]
Fix START_CLOSURE_RELOCATION.
Guillermo J. Rozas [Sun, 16 Feb 1992 02:47:12 +0000 (02:47 +0000)]
Revert register-copy-if-available, and use it correctly.
Guillermo J. Rozas [Sun, 16 Feb 1992 02:07:10 +0000 (02:07 +0000)]
Remove far calls and jumps. They are not necessary (at least under
Mach).
Guillermo J. Rozas [Sun, 16 Feb 1992 02:04:31 +0000 (02:04 +0000)]
SIB bytes were all flipped (little vs. big endian).
Guillermo J. Rozas [Sun, 16 Feb 1992 00:13:15 +0000 (00:13 +0000)]
Initial revision
Guillermo J. Rozas [Sun, 16 Feb 1992 00:12:38 +0000 (00:12 +0000)]
Swap order of code_segment and hook offset in the hook layout in
memory. I believe this corresponds to the actual format.
Guillermo J. Rozas [Sat, 15 Feb 1992 17:27:02 +0000 (17:27 +0000)]
Fix assembly problems.
Guillermo J. Rozas [Sat, 15 Feb 1992 16:21:03 +0000 (16:21 +0000)]
Fix paren problem.
Guillermo J. Rozas [Sat, 15 Feb 1992 16:16:57 +0000 (16:16 +0000)]
Add byte-unsigned-offset-reference.
Guillermo J. Rozas [Sat, 15 Feb 1992 16:13:00 +0000 (16:13 +0000)]
Teach the compiler how to use LEA to tag objects and do a three
operand ADD.
Guillermo J. Rozas [Sat, 15 Feb 1992 14:34:45 +0000 (14:34 +0000)]
Bad call to target-register-reference.
Guillermo J. Rozas [Sat, 15 Feb 1992 14:31:42 +0000 (14:31 +0000)]
Fix addressing mode bug.
Guillermo J. Rozas [Sat, 15 Feb 1992 14:17:23 +0000 (14:17 +0000)]
Jumps into compiled scheme code and out must use far jmp/call
instructions, because the code segment is not necessarily the same as
the data segment. We still assume that the stack segment and the data
segment are the same.
Guillermo J. Rozas [Sat, 15 Feb 1992 07:09:38 +0000 (07:09 +0000)]
Change invoke-interface and invoke-interface/call to use
MOVB instead of MOVW.
Arthur Gleckler [Fri, 14 Feb 1992 22:34:07 +0000 (22:34 +0000)]
Add mail and load average notification.
Arthur Gleckler [Fri, 14 Feb 1992 22:29:49 +0000 (22:29 +0000)]
Initial revision
Guillermo J. Rozas [Fri, 14 Feb 1992 22:28:11 +0000 (22:28 +0000)]
Add i386 (Mach) support.
Guillermo J. Rozas [Fri, 14 Feb 1992 22:17:07 +0000 (22:17 +0000)]
interrupt_dlink renamed to asm_interrupt_dlink.
Guillermo J. Rozas [Fri, 14 Feb 1992 21:12:00 +0000 (21:12 +0000)]
Remove GCC test. It seems not to work on BSD at all anyway.
Guillermo J. Rozas [Fri, 14 Feb 1992 21:08:48 +0000 (21:08 +0000)]
Add test for GCC and accomodate BSD's eval that only takes one arg.
Guillermo J. Rozas [Fri, 14 Feb 1992 20:11:07 +0000 (20:11 +0000)]
Write most entry points.
Guillermo J. Rozas [Fri, 14 Feb 1992 18:57:27 +0000 (18:57 +0000)]
Add a way to find out how to invoke a procedure from a table of
procedures.
Guillermo J. Rozas [Fri, 14 Feb 1992 17:03:33 +0000 (17:03 +0000)]
Add way to find out how external references are done.
Guillermo J. Rozas [Fri, 14 Feb 1992 03:45:31 +0000 (03:45 +0000)]
Initial revision
Guillermo J. Rozas [Fri, 14 Feb 1992 01:50:05 +0000 (01:50 +0000)]
Initial revision
Chris Hanson [Thu, 13 Feb 1992 23:35:07 +0000 (23:35 +0000)]
Fix typo in last change.
Chris Hanson [Thu, 13 Feb 1992 22:19:34 +0000 (22:19 +0000)]
Don't do random call to EDITOR-CHAR-READY?.
Chris Hanson [Thu, 13 Feb 1992 21:51:36 +0000 (21:51 +0000)]
Rename editor input procedures:
old name new name
------------------ -------------------
EDITOR-CHAR-READY? EDITOR-PEEK-NO-HANG
EDITOR-PEEK-CHAR EDITOR-PEEK
EDITOR-READ-CHAR EDITOR-READ
Chris Hanson [Thu, 13 Feb 1992 20:00:15 +0000 (20:00 +0000)]
Work around stupid bug in SF.
Guillermo J. Rozas [Thu, 13 Feb 1992 19:55:02 +0000 (19:55 +0000)]
More changes.
Guillermo J. Rozas [Thu, 13 Feb 1992 19:04:16 +0000 (19:04 +0000)]
More changes.
Chris Hanson [Thu, 13 Feb 1992 18:51:54 +0000 (18:51 +0000)]
Fix typo that caused "special form" to appear on console when the
debugger was run under Edwin.
Chris Hanson [Thu, 13 Feb 1992 18:26:43 +0000 (18:26 +0000)]
Fix DIRECTORY-PATHNAME-AS-FILE so it accepts "/" as a valid argument.
Chris Hanson [Thu, 13 Feb 1992 18:25:54 +0000 (18:25 +0000)]
Fix PATHNAME->BUFFER-NAME so it handles "/" reasonably.