Changeset 4958


Ignore:
Timestamp:
Aug 18, 2006, 8:43:44 AM (18 years ago)
Author:
Gary Byers
Message:

Recognize :rcontext as a reference to the backend's LISP-CONTEXT-REGISTER slot.

Location:
trunk/ccl/compiler/X86
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/ccl/compiler/X86/x86-backend.lisp

    r4378 r4958  
    197197                         (if (typep op 'fixnum)
    198198                           op
    199                            (if (constantp op)
    200                              (progn
    201                                (if (keywordp op)
    202                                  (pushnew op referenced-labels))
    203                                (eval op))
    204                              (find-name op)))
     199                           (if (eq op :rcontext)
     200                             (backend-lisp-context-register *target-backend*)
     201                             (if (constantp op)
     202                               (progn
     203                                 (if (keywordp op)
     204                                   (pushnew op referenced-labels))
     205                                 (eval op))
     206                               (find-name op))))
    205207                         (if (eq (car op) :^)
    206208                           (list :^ (simplify-simple-operand (cadr op)))
  • trunk/ccl/compiler/X86/x86-lap.lisp

    r4310 r4958  
    350350  (let* ((r (typecase regname
    351351              (symbol (or (gethash (string regname) x86::*x86-registers*)
     352                          (if (eq regname :rcontext)
     353                            (svref x86::*x8664-register-entries*
     354                                   (ccl::backend-lisp-context-register *target-backend*)))
    352355                          (and (boundp regname)
    353356                               (let* ((val (symbol-value regname)))
Note: See TracChangeset for help on using the changeset viewer.