Changeset 6322


Ignore:
Timestamp:
Apr 22, 2007, 10:38:50 AM (15 years ago)
Author:
gb
Message:

Prepend an rip-relative LEA that sets %fn; this will mean (with GC
support) that caller doesn't have to set %fn.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/x8664-call/ccl/compiler/X86/x86-lap.lisp

    r6313 r6322  
    13731373         (*x86-lap-lfun-bits* bits)
    13741374         (end-code-tag (gensym))
     1375         (entry-code-tag (gensym))
    13751376         (instruction (x86::make-x86-instruction))
    13761377         (frag-list (make-frag-list)))
    13771378    (make-x86-lap-label end-code-tag)
     1379    (make-x86-lap-label entry-code-tag)
    13781380    (x86-lap-directive frag-list :long `(ash (+ (- (:^ ,end-code-tag ) 8)
    13791381                                              *x86-lap-entry-offset*) -3))
     
    13811383    (x86-lap-directive frag-list :byte 0) ;regsave ea
    13821384    (x86-lap-directive frag-list :byte 0) ;regsave mask
     1385    (emit-x86-lap-label frag-list entry-code-tag)
     1386    (x86-lap-form `(lea (@ (:^ ,entry-code-tag) (% rip)) (% fn)) frag-list instruction)
    13831387    (dolist (f forms)
    13841388      (x86-lap-form f frag-list instruction))
Note: See TracChangeset for help on using the changeset viewer.