Update of /project/movitz/cvsroot/movitz/losp/muerte In directory clnet:/tmp/cvs-serv12581
Modified Files: integers.lisp Log Message: assembly instruction je should be keyword.
--- /project/movitz/cvsroot/movitz/losp/muerte/integers.lisp 2007/04/07 07:56:45 1.123 +++ /project/movitz/cvsroot/movitz/losp/muerte/integers.lisp 2008/02/04 10:08:18 1.124 @@ -9,7 +9,7 @@ ;;;; Created at: Wed Nov 8 18:44:57 2000 ;;;; Distribution: See the accompanying file COPYING. ;;;; -;;;; $Id: integers.lisp,v 1.123 2007/04/07 07:56:45 ffjeld Exp $ +;;;; $Id: integers.lisp,v 1.124 2008/02/04 10:08:18 ffjeld Exp $ ;;;; ;;;;------------------------------------------------------------------
@@ -1899,26 +1899,26 @@ (:shrl 5 :ecx) ; compute msb bigit index/fixnum in ecx (:addl 4 :ecx) (:cmpw :cx (:ebx (:offset movitz-bignum length))) - (je '(:sub-program (equal-size-maybe-return-same) - (:testl :edx :edx) ; Can only return same if (zerop position). - (:jnz 'adjust-size) - (:movl :eax :ecx) ; size/fixnum - (:shrl ,movitz:+movitz-fixnum-shift+ :ecx) - (:andl 31 :ecx) - (:jz 'yes-return-same) - (:std) ; <================ - ;; we know EDX=0, now generate mask in EDX - (:addl 1 :edx) - (:shll :cl :edx) - (:movzxw (:ebx (:offset movitz-bignum length)) - :ecx) - (:cmpl :edx (:ebx :ecx (:offset movitz-bignum bigit0 -4))) - (:movl 0 :edx) ; Safe value, and correct if we need to go to adjust-size. - (:cld) ; =================> - (:jnc 'adjust-size) ; nope, we have to generate a new bignum. - yes-return-same - (:movl :ebx :eax) ; yep, we can return same bignum. - (:jmp 'ldb-done))) + (:je '(:sub-program (equal-size-maybe-return-same) + (:testl :edx :edx) ; Can only return same if (zerop position). + (:jnz 'adjust-size) + (:movl :eax :ecx) ; size/fixnum + (:shrl ,movitz:+movitz-fixnum-shift+ :ecx) + (:andl 31 :ecx) + (:jz 'yes-return-same) + (:std) ; <================ + ;; we know EDX=0, now generate mask in EDX + (:addl 1 :edx) + (:shll :cl :edx) + (:movzxw (:ebx (:offset movitz-bignum length)) + :ecx) + (:cmpl :edx (:ebx :ecx (:offset movitz-bignum bigit0 -4))) + (:movl 0 :edx) ; Safe value, and correct if we need to go to adjust-size. + (:cld) ; =================> + (:jnc 'adjust-size) ; nope, we have to generate a new bignum. + yes-return-same + (:movl :ebx :eax) ; yep, we can return same bignum. + (:jmp 'ldb-done))) (:jnc 'size-ok) ;; We now know that (+ size position) is beyond the size of the bignum. ;; So, if (zerop position), we can return the bignum as our result.