- Apr 30, 2003
-
-
gerd authored
* src/code/format.lisp (min/max-format-arguments-count) (min/max-format-args, min/max-conditional-args): New functions. * src/compiler/srctran.lisp (check-format-args): New function. (format): New transformer for simple-string format control and (<= speed space), checking number of args. (format) <transforms>: Use min/max-format-arguments-count. * src/code/package.lisp (unintern): Add missing args to format. * src/compiler/disassem.lisp (maybe-note-associated-storage-ref): Remove extraneous format arg.
-
toy authored
sparc v9.
-
gerd authored
*timed-functions*.
-
gerd authored
-
gerd authored
an assertion.
-
gerd authored
(define-condition): Parse :documentation.
-
- Apr 29, 2003
-
-
emarsden authored
Make SIMPLE-PARSE-ERROR subclass PARSE-ERROR (fixes bug in PARSE-INTEGER reported to cmucl-help by Johannes Grødem).
-
emarsden authored
Add missing return type declaration for DEFKNOWN form for %SET-FILL-POINTER.
-
gerd authored
argument type checks are constant-folded away. * src/compiler/ir1opt.lisp (constant-fold-call): In safe code, don't constant-fold a call if one of its arguments requires a type check. * src/compiler/checkgen.lisp (probable-type-check-p): Return true for :error type-checks if safety = 3. Fix ENDP.* test failures when running tests compiled. From SBCL, basically. * src/compiler/ir1opt.lisp (ir1-optimize, ir1-optimize-if): Don't eliminate if-tests requiring type checks. * src/compiler/checkgen.lisp (continuation-check-types): Add parameter force-hairy. (generate-type-checks): Call continuation-check-types with force-hairy true for :error continuations in safe code.
-
gerd authored
Detected by Paul Dietz' tests. * src/pcl/std-class.lisp (make-defstruct-allocation-function): New function. (shared-initialize) <structure-class>: Use it.
-
gerd authored
AMOP compliant. From Kevin Rosenberg on cmucl-imp 2003-04-29. * src/pcl/std-class.lisp (direct-slot-definition-class): (effective-slot-definition-class): Change methods accordingly. (make-direct-slotd): Apply direct-slot-definition-class to initargs instead of funcalling it. (compute-effective-slot-definition): Likewise for effective-slot-definition-class. * src/pcl/generic-functions.lisp (direct-slot-definition-class) (effective-slot-definition-class): Make initargs a &rest arg.
-
- Apr 28, 2003
- Apr 27, 2003
-
-
toy authored
the non-ANSI feature of making -0 and +0 different in type-specifiers. Internal code still assumes this in various places, however. Since our type system is much smarter now than when this was written (and handles type unions and member types much better), perhaps we should clean this up?
-
toy authored
-
toy authored
-
gerd authored
source transforms so that they don't accept more than one index, for better error messages.
-
- Apr 26, 2003
-
-
gerd authored
from superclasses. * src/pcl/std-class.lisp (update-shared-slot-values): New function. (update-class): Call it. (shared-initialize): Slightly rewritten.
-
gerd authored
because the last arg may not be a list.
-
gerd authored
which don't signal an error in safe code because such calls are flushed when the called function is FLUSHABLE and the value of the call is not used. * src/compiler/ir1opt.lisp (flush-dead-code): Suppress flushing of flushable known functions if safety = 3.
-
gerd authored
constant-folding tests for generic-functionness. Fix intersection of function types and generic-function. * src/code/type.lisp (type-intersection2): Handle intersection of FUNCTION-TYPEs with non-FUNCTION-TYPEs, like generic-function. * src/compiler/typetran.lisp (ir1-transform-type-predicate) (typep): Handle generic-function type tests differently. * src/code/class.lisp (class) <:complex-subtypep-arg1>: New type method for function = (function * *).
-
gerd authored
* src/pcl/std-class.lisp (update-cpl): Force cache flushes if we won't reuse the wrapper because there are class slots.
-
gerd authored
instance. * src/pcl/slots.lisp (slot-makunbound-using-class) <std-class standard-object standard-effective-slot-definition>: Return the object as specified by AMOP.
-
toy authored
-
toy authored
current *target-backend*. (Because I can never remember how to print the inst space.)
-
toy authored
o Update print-fp-reg so that *print-case* will print the FP register in the right case o Add special printers for all of the FP -sti instructions that store the result into the specified FP register. This makes the syntax match the Intel syntax. o Correct the instruction printer for the FUCOMI instruction. (I think it works, but FUCOMI isn't used anywhere.)
-
- Apr 25, 2003
-
-
gerd authored
-
gerd authored
reported by Kevin Rosenberg <kevin@rosenberg.net> on cmucl-imp, Tue, 22 Apr 2003 13:28:23 -0600. There's a test case in the thread on cmucl-imp. * src/pcl/methods.lisp (update-slot-value-gf-info): Moved here from slots-boot.lisp. (get-accessor-method-function): Don't pass nil wrappers to get-secondary-dispatch-function. See comment there. (update-gf-dfun): Remove unused code. * src/pcl/slots-boot.lisp (get-accessor-from-svuc-method-function): Move to methods.lisp, where it's used. * src/pcl/std-class.lisp (compute-slot-accessor-info): Add comment. Code cleanup. * src/pcl/std-class.lisp (compute-default-initargs): Don't use a recursive local function for something that can be done with loop in 2 lines.
-
emarsden authored
- remove copyright notice from generated HTML - add Gerd Moellman and Eric Marsden to list of active contributors - attempt to clarify the public domain nature of CMU-derived code and documentation in CMUCL. Note that the Hierarchical Packages section is derived from Franz docs, used with permission.
-
toy authored
o Fix up the instruction printers for FRSTOR and FUCOM which used to conflict. o Clean up Lisp code a little.
-
gerd authored
-
- Apr 24, 2003
-
-
gerd authored
* src/compiler/ir1opt.lisp (recognize-known-call): Don't inline if *converting-for-interpreter*. This suppresses inlining when generating IR1 for interpretation because no type-checking IR1 is generated in this case, and the interpreter, internal-apply-loop for instance, doesn't do type checks is some other way either.
-
gerd authored
still valid..." message, which is unhelpful, and should have anyway not ever gone to standard output.
-
gerd authored
was supposed to do, and delete unused tests.
-
gerd authored
* src/pcl/ctor.lisp (invoke-method): Remove #+nil'd code. (slot-init-forms): Handle default initargs differently. (instance-init-forms, structure-init-forms): Add `var' case, treat like `param'. * src/pcl/rt/ctor.lisp (slot-init-forms.0, slot-init-forms.1) (slot-init-forms.2, slot-init-forms.2a, slot-init-forms.3) (slot-init-forms.4, slot-init-forms.5, slot-init-forms.6): Adapt to the new code generated by slot-init-form.
-
gerd authored
to compare bounds with = instead of eql. From Christophe Rhodes.
-
- Apr 23, 2003
-
-
toy authored
decode-double-float more accurately. (Do we need defoptimizers for these? Might be useful to get at least the exponent range accurately.)
-
gerd authored
return type instead of the invalid type (sequence).
-
gerd authored
-
gerd authored
Rhodes. * src/code/type.lisp (member-type): Add :constructor. (make-member-type): New function. (not) <type translator>: Treat member types specially.
-