[armedbear-cvs] r12889 - branches/generic-class-file/abcl/src/org/armedbear/lisp
Erik Huelsmann
ehuelsmann at common-lisp.net
Thu Aug 12 20:08:52 UTC 2010
Author: ehuelsmann
Date: Thu Aug 12 16:08:50 2010
New Revision: 12889
Log:
Simplify ANALYZE-ARGS.
Modified:
branches/generic-class-file/abcl/src/org/armedbear/lisp/compiler-pass2.lisp
Modified: branches/generic-class-file/abcl/src/org/armedbear/lisp/compiler-pass2.lisp
==============================================================================
--- branches/generic-class-file/abcl/src/org/armedbear/lisp/compiler-pass2.lisp (original)
+++ branches/generic-class-file/abcl/src/org/armedbear/lisp/compiler-pass2.lisp Thu Aug 12 16:08:50 2010
@@ -6869,34 +6869,20 @@
(dformat t "analyze-args args = ~S~%" args)
(aver (not (memq '&AUX args)))
- (when *child-p*
- (when (or (memq '&KEY args)
- (memq '&OPTIONAL args)
- (memq '&REST args))
- (setf *using-arg-array* t)
- (setf *hairy-arglist-p* t)
- (return-from analyze-args
- (descriptor +lisp-object+ +lisp-object-array+)))
- (return-from analyze-args
- (cond ((<= arg-count call-registers-limit)
- (apply #'descriptor +lisp-object+
- (lisp-object-arg-types arg-count)))
- (t (setf *using-arg-array* t)
- (setf (compiland-arity compiland) arg-count)
- (descriptor +lisp-object+ +lisp-object-array+)))))
(when (or (memq '&KEY args)
(memq '&OPTIONAL args)
(memq '&REST args))
- (setf *using-arg-array* t)
- (setf *hairy-arglist-p* t)
- (return-from analyze-args (descriptor +lisp-object+ +lisp-object-array+)))
+ (setf *using-arg-array* t
+ *hairy-arglist-p* t)
+ (return-from analyze-args
+ (descriptor +lisp-object+ +lisp-object-array+)))
+
(cond ((<= arg-count call-registers-limit)
(apply #'descriptor +lisp-object+
- (lisp-object-arg-types (length args))))
- (t
- (setf *using-arg-array* t)
- (setf (compiland-arity compiland) arg-count)
- (descriptor +lisp-object+ +lisp-object-array+)))))
+ (lisp-object-arg-types arg-count)))
+ (t (setf *using-arg-array* t)
+ (setf (compiland-arity compiland) arg-count)
+ (descriptor +lisp-object+ +lisp-object-array+)))))
(defmacro with-open-class-file ((var class-file) &body body)
`(with-open-file (,var (abcl-class-file-pathname ,class-file)
More information about the armedbear-cvs
mailing list