[Openmcl-cvs-notifications] r11363 - /trunk/source/level-0/X86/X8632/x8632-utils.lisp
gb at clozure.com
gb at clozure.com
Sat Nov 15 07:44:23 EST 2008
Author: gb
Date: Sat Nov 15 07:44:23 2008
New Revision: 11363
Log:
In WALK-STATIC-AREA and %WALK-DYNAMIC-AREA: be careful to treat
uvector subtags as unsigned (e.g., jbe, not jle after comparison
of byte to sign-extended constant.) Seems to close ticket:379.
Modified:
trunk/source/level-0/X86/X8632/x8632-utils.lisp
Modified: trunk/source/level-0/X86/X8632/x8632-utils.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-utils.lisp (original)
+++ trunk/source/level-0/X86/X8632/x8632-utils.lisp Sat Nov 15 07:44:23 2008
@@ -114,11 +114,11 @@
(mov (@ (% obj)) (% imm0))
(je @32)
(cmpb ($ x8632::max-32-bit-ivector-subtag) (% imm0.b))
- (jle @32)
+ (jbe @32)
(cmpb ($ x8632::max-8-bit-ivector-subtag) (% imm0.b))
- (jle @8)
+ (jbe @8)
(cmpb ($ x8632::max-16-bit-ivector-subtag) (% imm0.b))
- (jle @16)
+ (jbe @16)
(cmpb ($ x8632::subtag-double-float-vector) (% imm0.b))
(je @double-float)
;; if we get here, it's a bit vector
@@ -218,11 +218,11 @@
(mov (@ (% obj)) (% imm0))
(je @32)
(cmpb ($ x8632::max-32-bit-ivector-subtag) (% imm0.b))
- (jle @32)
+ (jbe @32)
(cmpb ($ x8632::max-8-bit-ivector-subtag) (% imm0.b))
- (jle @8)
+ (jbe @8)
(cmpb ($ x8632::max-16-bit-ivector-subtag) (% imm0.b))
- (jle @16)
+ (jbe @16)
(cmpb ($ x8632::subtag-double-float-vector) (% imm0.b))
(je @double-float)
;; if we get here, it's a bit vector
More information about the Openmcl-cvs-notifications
mailing list