Micro-optimization of BOUNDP for x86 and x86-64 (#-sb-thread only).
(:args (object :scs (descriptor-reg)))
(:conditional)
(:info target not-p)
- (:temporary (:sc descriptor-reg :from (:argument 0)) value)
(:generator 9
- (loadw value object symbol-value-slot other-pointer-lowtag)
- (inst cmp value unbound-marker-widetag)
+ (inst cmp (make-ea-for-object-slot object symbol-value-slot
+ other-pointer-lowtag)
+ unbound-marker-widetag)
(inst jmp (if not-p :e :ne) target)))
(:args (object :scs (descriptor-reg)))
(:conditional)
(:info target not-p)
- (:temporary (:sc descriptor-reg :from (:argument 0)) value)
(:generator 9
- (loadw value object symbol-value-slot other-pointer-lowtag)
- (inst cmp value unbound-marker-widetag)
+ (inst cmp (make-ea-for-object-slot object symbol-value-slot
+ other-pointer-lowtag)
+ unbound-marker-widetag)
(inst jmp (if not-p :e :ne) target)))
;;; checkins which aren't released. (And occasionally for internal
;;; versions, especially for internal versions off the main CVS
;;; branch, it gets hairier, e.g. "0.pre7.14.flaky4.13".)
-"0.9.12.24"
+"0.9.12.25"