[Openmcl-cvs-notifications] r11353 - /trunk/source/level-0/X86/X8632/x8632-pred.lisp
gb at clozure.com
gb at clozure.com
Tue Nov 11 12:55:54 EST 2008
Author: gb
Date: Tue Nov 11 12:55:53 2008
New Revision: 11353
Log:
In EQUAL: if we have two non-EQ lists, terminate if either is NIL.
[(EQUAL '(NIL . NIL) NIL) was erroneously returning T.]
Modified:
trunk/source/level-0/X86/X8632/x8632-pred.lisp
Modified: trunk/source/level-0/X86/X8632/x8632-pred.lisp
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- trunk/source/level-0/X86/X8632/x8632-pred.lisp (original)
+++ trunk/source/level-0/X86/X8632/x8632-pred.lisp Tue Nov 11 12:55:53 2008
@@ -131,6 +131,11 @@
(movl ($ (target-t-value)) (% arg_z))
(single-value-return)
@cons
+ ;; If either X or Y is NIL, lose.
+ (cmp-reg-to-nil x)
+ (je @lose)
+ (cmp-reg-to-nil y)
+ (je @lose)
;; Check to see if the CARs are EQ. If so, we can avoid saving
;; context, and can just tail call ourselves on the CDRs.
(%car x temp0)
More information about the Openmcl-cvs-notifications
mailing list