- Aug 24, 1990
- Aug 23, 1990
-
-
wlott authored
or move it from a register depending on where it is.
-
wlott authored
places where this value was needed to use this function instead of calculating it independently each time. Changed the local-call vops to do necessary loading explicity so that the compiler won't try to use all the registers for arguments and not leave any available for operand loading.
-
ram authored
"does not return" notes.
-
ram authored
than the (possibly interpreter) frame.
-
ram authored
SC. Fixed SAVE-IF-NECESSARY to change :SPECIFIED-SAVE TNs to :SAVE.
-
ram authored
-
ram authored
-
- Aug 22, 1990
-
-
ram authored
on the stack. We must use the debug-info to find them if the frame is escaped. For the current function (in TOP-FRAME), we use the new %CALLER-FRAME-AND-PC primitive.
-
- Aug 21, 1990
- Aug 17, 1990
-
-
wlott authored
-
- Aug 16, 1990
-
-
ram authored
-
ram authored
-
ram authored
-
ram authored
-
ram authored
New local call argument passing convention. New TN slots: COST and ENVIRONMENT.
-
ram authored
-
ram authored
-
ram authored
-
ram authored
like any other global TN. Changed register saving to save the registers before the ALLOCATE-FRAME VOP so that the new local call arg passing works. Added local save optimization: only save a value once in a block, and don't restore if the value isn't used before the next save. Also, added some cost determination stuff that tries to tell when it is more trouble than it is worth to allocate a value in a register due to saving costs. Added support for pre-packed save TNs (:SPECIFIED-SAVE). Changed the packing order: now instead of more-or-less random, we pack in the order of the TN's first mention in the emit order.
-
ram authored
of *DEFAULT-COOKIE* in the *LEXICAL-ENVIRONMENT* so that the global value takes effect within that form even if it is different than the one in effect at the start of the compilation. In PROCESS-FORM, fixed the processing of package-frobbing forms to stop out-of-order execution problems.
-
ram authored
referenced.
-
ram authored
representation of conflicts for :ENVIRONMENT TNs. Debug environment TNs are used to hold things that don't absoultely have to be there all the time, and that we would like to be able to target to/from. These TNs are considered to be live in all blocks in the environment that they aren't referenced in, and normal otherwise (more or less.) Alias TNs are used to allow local call to directly assign the callee variables in self-recursive calls without confusing environment analysis.
-
ram authored
Now the caller directly assigns the actual callee variables, rather than using passing locations. If necessary, temps are introduced in the caller to preserve parallel assignment. Full call stuff changed somewhat, since we still have wired passing locations there. Also, the %CALLER-FRAME-AND-PC funny function was added for debugger support.
-
ram authored
that were never referenced. Proclaimed the "GENERIC LIST" functions inline so that they result in reasonable code.
-
ram authored
the new DEBUG-ENVIRONMENT TNs.
-
ram authored
-
ram authored
for :ENVIRONMENT TN conflicts. When checking for supriously live TNs at environment start, allow the args themselves to be live, since we no longer have passing locations. Merged some XP hackery from William.
-
ram authored
when they are never set.
-
ram authored
of save TNs, since it is too much bother to figure out how to get it right with pre-packed save TNs.
-
- Aug 15, 1990
-
-
wlott authored
Added %set-raw-bits to the lisp->c imports.
-
wlott authored
-
wlott authored
translating a setf-function of setf macro.
-
wlott authored
apposed to a setf-macro (i.e. new-value first not last).
-
wlott authored
-
wlott authored
header types (in case we want to use them without having to recompile everything again).
-
- Aug 14, 1990