[Openmcl-cvs-notifications] r13230 - /trunk/source/lisp-kernel/x86-spentry32.s

gb at clozure.com gb at clozure.com
Tue Nov 24 14:53:04 UTC 2009


Author: gb
Date: Tue Nov 24 14:53:03 2009
New Revision: 13230

Log:
Copy the # of optional args to the low byte of imm0 before processing
&optionals in .SPdestbind.  (Fixes ticket:630).

Modified:
    trunk/source/lisp-kernel/x86-spentry32.s

Modified: trunk/source/lisp-kernel/x86-spentry32.s
=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/lisp-kernel/x86-spentry32.s (original)
+++ trunk/source/lisp-kernel/x86-spentry32.s Tue Nov 24 14:53:03 2009
@@ -2933,7 +2933,8 @@
 	__(jne local_label(req_loop))
 	__(movd %mm1,%imm0)
 local_label(opt):
-	__(testb %imm0_bh,%imm0_bh)
+        __(movb %imm0_bh,%imm0_b)
+	__(testb %imm0_b,%imm0_b)
 	__(je local_label(rest_keys))
 	__(btl $initopt_bit,%imm0)
 	__(jc local_label(opt_supp))
@@ -2958,7 +2959,7 @@
 local_label(opt_supp):
 	__(movb $fulltagmask,%imm0_bh)
 	__(andb %arg_reg_b,%imm0_bh)
-	__(compare_reg_to_nil(%arg_z))
+	__(compare_reg_to_nil(%arg_reg))
 	__(je local_label(default_hard_opt))
 	__(cmpb $fulltag_cons,%imm0_bh)
 	__(jne local_label(badlist))



More information about the Openmcl-cvs-notifications mailing list