Changeset 16432


Ignore:
Timestamp:
Jun 23, 2015, 5:08:26 PM (4 years ago)
Author:
gb
Message:

ttributes in keyword package.
COPY-GPR simpler.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/lscan/source/compiler/X86/X8664/x8664-vinsns.lisp

    r16428 r16432  
    515515 
    516516
    517 (define-x8664-vinsn (save-lisp-context-no-stack-args uses-frame-pointer) (()
     517(define-x8664-vinsn (save-lisp-context-no-stack-args ) (()
    518518                                                     ())
    519519  (pushq (:%q x8664::rbp))
     
    11241124  )
    11251125
    1126 (define-x8664-vinsn incoming-register-arg (((dest :lisp))
    1127                                            ((i :u32const)
    1128                                             (b :u32const)))
     1126(define-x8664-vinsn incoming-register-arg  (((dest :lisp))
     1127                                                           ((i :u32const)
     1128                                                            (b :u32const)))
    11291129  ((:pred spilled-lreg-p dest)
    11301130    (movq (:%q (:apply x8664-incoming-register-arg-number i b)) (:@ (:apply x8664-target-spill-offset dest)  (:%q x8664::rbp))))
     
    16171617(define-x8664-vinsn (copy-gpr :trivial-copy) (((dest t))
    16181618                                              ((src t)))
    1619   ((:pred spilled-lreg-p src)
    1620    ((:pred spilled-lreg-p dest)
    1621            ;; Horrible but hopefully rare
    1622            (pushq (:@ (:apply x8664-target-spill-offset src)  (:%q x8664::rbp)))
    1623            (popq (:@ (:apply x8664-target-spill-offset dest)  (:%q x8664::rbp))))
    1624    ((:not (:pred spilled-lreg-p dest))
    1625     (movq (:@ (:apply x8664-target-spill-offset src)  (:%q x8664::rbp))  (:%q dest))))
    1626   ((:not (:pred spilled-lreg-p src))
    1627    ((:pred spilled-lreg-p dest)
    1628     (movq (:%q src) (:@ (:apply x8664-target-spill-offset dest)  (:%q x8664::rbp))))
    1629    ((:not (:pred spilled-lreg-p dest))
    1630     ((:not (:pred =
    1631                   (:apply %hard-regspec-value dest)
    1632                   (:apply %hard-regspec-value src)))
    1633      (movq (:%q src) (:%q dest))))))
     1619  ((:not (:pred =
     1620                (:apply %hard-regspec-value dest)
     1621                (:apply %hard-regspec-value src)))
     1622   (movq (:%q src) (:%q dest))))
    16341623
    16351624(define-x8664-vinsn copy-gpr! (((dest t))
    16361625                               ((src t)))
    1637   (movq (:%q src) (:%q dest)))
    1638 
    1639 (define-x8664-vinsn (copy-incoming-register-arg :trivial-copy) (((dest t))
    1640                                                                 ((src t)))
    1641   (movq (:%q src) (:%q dest)))
     1626  ((:not (:pred =
     1627                (:apply %hard-regspec-value dest)
     1628                (:apply %hard-regspec-value src)))
     1629   (movq (:%q src) (:%q dest))))
     1630
     1631(define-x8664-vinsn copy-incoming-register-arg  (((dest t))
     1632                                                 ((src t)))
     1633  ((:not (:pred eq src dest))
     1634   (movq (:%q src) (:%q dest))))
    16421635
    16431636(define-x8664-vinsn (vpop-register :pop :node :vsp)
Note: See TracChangeset for help on using the changeset viewer.