[armedbear-cvs] r11509 - trunk/abcl/src/org/armedbear/lisp
Ville Voutilainen
vvoutilainen at common-lisp.net
Mon Dec 29 23:19:46 UTC 2008
Author: vvoutilainen
Date: Mon Dec 29 23:19:42 2008
New Revision: 11509
Log:
Remove Cons special case from car/cdr, it doesn't seem
to make a big difference.
Modified:
trunk/abcl/src/org/armedbear/lisp/compiler-pass2.lisp
Modified: trunk/abcl/src/org/armedbear/lisp/compiler-pass2.lisp
==============================================================================
--- trunk/abcl/src/org/armedbear/lisp/compiler-pass2.lisp (original)
+++ trunk/abcl/src/org/armedbear/lisp/compiler-pass2.lisp Mon Dec 29 23:19:42 2008
@@ -4578,15 +4578,8 @@
(emit-move-from-stack target))))
(defun emit-car/cdr (arg target representation field)
- (cond ((eq (derive-type arg) 'CONS)
- (compile-form arg 'stack nil)
- (emit 'checkcast +lisp-cons-class+)
- (emit 'getfield +lisp-cons-class+ field +lisp-object+)
- (fix-boxing representation nil)
- (emit-move-from-stack target representation))
- (t
- (compile-forms-and-maybe-emit-clear-values arg 'stack nil)
- (emit-invoke-method field target representation))))
+ (compile-forms-and-maybe-emit-clear-values arg 'stack nil)
+ (emit-invoke-method field target representation))
(defun p2-car (form target representation)
(unless (check-arg-count form 1)
More information about the armedbear-cvs
mailing list