Changeset 9462


Ignore:
Timestamp:
May 13, 2008, 2:10:44 AM (11 years ago)
Author:
rme
Message:

x862-get-bit: don't use with-add'l-imm-reg before using vinsn
mem-ref-bit-fixnum (which will mark/unmark a temp reg as unboxed
by itself.)

Location:
branches/ia32/compiler/X86
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • branches/ia32/compiler/X86/X8632/x8632-vinsns.lisp

    r9456 r9462  
    35563556                                        ((src :address)
    35573557                                         (offset :lisp))
    3558                                         ((temp :u32)))
     3558                                        ((temp :lisp)))
     3559  ;; (mark-as-imm temp)
     3560  (btrl (:$ub (:apply %hard-regspec-value temp))
     3561        (:@ (:%seg :rcontext) x8632::tcr.node-regs-mask))
    35593562  (movl (:%l offset) (:%l temp))
    35603563  (shrl (:$ub (+ 5 x8632::fixnumshift)) (:%l temp))
     
    35663569  (movl (:$l x8632::fixnumone) (:%l temp))
    35673570  (leal (:@ (- x8632::fixnumone) (:%l temp)) (:%l dest))
    3568   (cmovbl (:%l temp) (:%l dest)))
     3571  (cmovbl (:%l temp) (:%l dest))
     3572  ;; (mark-as-node temp)
     3573  (xorl (:%l temp) (:%l temp))
     3574  (btsl (:$ub (:apply %hard-regspec-value temp))
     3575        (:@ (:%seg :rcontext) x8632::tcr.node-regs-mask)))
    35693576
    35703577(define-x8632-subprim-call-vinsn (progvsave) .SPprogvsave)
  • branches/ia32/compiler/X86/x862.lisp

    r9457 r9462  
    79167916          (x862-two-targeted-reg-forms seg ptr src-reg offset ($ *x862-arg-z*))
    79177917          (if (node-reg-p vreg)
    7918             (with-additional-imm-reg (*x862-arg-z*)
    7919               (! mem-ref-bit-fixnum vreg src-reg ($ *x862-arg-z*)))
     7918            (! mem-ref-bit-fixnum vreg src-reg ($ *x862-arg-z*))
    79207919            (with-imm-target ()           ;OK if src-reg & dest overlap
    79217920                (dest :u8)
Note: See TracChangeset for help on using the changeset viewer.