- Oct 24, 1990
-
-
ram authored
efficency notes.
-
ram authored
an expensive coercion (like number consing.)
-
ram authored
Fixed some comments that I neglected to update with the last round of changes. Changed FIND-OPTIONAL-DISPATCH-TYPES to only union in NULL for hairy default keywords, since this is the initial value type passed in for these keywords when they are unsupplied. This allows some of the type checking to be pushed into the XEP or local caller for these args. Also, fixed handling of &rest args not to give spurious warnings about definitions that have both &rest and &key. And fixed FIND-LAMBDA-TYPES to do type intersections only when there is no syntax lossage, rather than only doing it when there is a change in the number of args.
-
ram authored
so many trivial efficency notes by default.
-
wlott authored
-
- Oct 23, 1990
-
-
wlott authored
of assembly routines.
-
wlott authored
of a single number. Changed dump-fixups to dump normal/maybe-cold load magic around dumping the symbol for assembly routine fixups and changed the kind to a symbol (with similar normal/maybe-cold-load magic).
-
wlott authored
-
wlott authored
routines. Also several minor tweaks here and there to fill delay slots better.
-
wlott authored
assembly-routine calls.
-
- Oct 22, 1990
- Oct 20, 1990
- Oct 19, 1990
-
-
wlott authored
-
- Oct 18, 1990
-
-
ram authored
and directly call the C interface stub (which can be inline expanded.) Also, generalized the rational-constant/float compare to work for any constant that has a precise single-float representation, not just for 0.
-
- Oct 17, 1990
-
-
ram authored
since we count on these being a local call (we never make an XEP.)
-
ram authored
have a NLX into them top-level.
-
ram authored
with top-level lambdas that aren't in :TOP-LEVEL components.
-
ram authored
reference if the function doesn't yet have any LEAF-INFO.
-
ram authored
components.
-
ram authored
a forward reference. Also, in REPLACE-TOP-LEVEL-XEPS, don't gag on top-level lambdas that aren't in top-level components.
-
ram authored
both normal XEPs and top-level lambdas. In addition to being included in the normal components list, these components are also returned as a list in the third value.
-
ram authored
creation when there is a forward reference across components. Also, changed many defaults to (REQUIRED-ARGUMENT), which should gag some type warnings
-
ram authored
to be less obscure. Made it clear the SPECIFIER-TYPE cache so that subsequent references will be noticed as unknown. In DEFINE-DEFSTRUCT-NAME, quietly blow away any existing ACCESSOR-FOR. This is necessary now that we don't always undefine a structure before redefining it, but it may also help with some of the spurious undefining that was happening. Broke off redefinition hackery into CHECK-FOR-STRUCTURE-REDEFINITION. This function checks for incompatible redefinition, and only undefines the structure if the redefinition is incompatible.
-
ram authored
is empty as long as one of the types was NIL. Also, frobbed DEFUN handling, mainly in the use of ASSERT-DEFINITION-TYPE. We use the new arguments to implement redefinition notes. Also, we inhibit doing actual type assertion for all known functions to avoid defeating explicit argument type checking. Someday we might want to make this inhibition conditional on an IR1 attribute.
-
ram authored
declared types with definitions. Also, fixed some of the logical functions to say their arguments were integers, not T.
-
ram authored
of type NIL, and downgraded the message from lossage to slime. Spiffed up ASSERT-DEFINITION-TYPE in various ways. It now takes various arguments which provide additional control. In particular, the REALLY-ASSERT argument allows this function to be used to give function redefinition notes without applying bogus type assertions. Also, fixed optional and keyword handling to take into account the possibility that the default might legally not be of the type in the function type. If the default is constant, we union its type in, otherwise we write off type assertion for that argument. Fixed the result type intersection stuff not to gag on NIL assertions. Also, tweaked the formatting a bit to reduce wrapped lines, etc.
-
ram authored
tweaked output format a bit.
-
- Oct 15, 1990
-
-
wlott authored
the definition and not in the type. (This case only happens if there is an &key in the type, since otherwise we punt before them.)
-
ram authored
maintaining separate compiler structure info. When we change the included-by info, we copy the DD and included-by list so that the definition in the compiler lisp is not affected. At load or eval time, %DEFSTRUCT is now responsible for updating the included-by list for the defined-structure-info.
-
- Oct 14, 1990
- Oct 13, 1990