Changeset 6483


Ignore:
Timestamp:
May 9, 2007, 7:44:26 AM (14 years ago)
Author:
gb
Message:

New calling sequence.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/ccl/level-0/X86/x86-utils.lisp

    r4955 r6483  
    120120    (movq (% obj) (% prev))
    121121    (movq (% obj) (% arg_z))
    122     (lea (@ (:^ @back-from-misc) (% fn)) (% ra0))
    123122    (set-nargs 1)
    124     (movq (% fun) (% fn))
    125     (jmp (% fn))
    126     (:tra @back-from-misc)
    127     (recover-fn-from-ra0 @back-from-misc)
     123    (:talign 4)
     124    (call (% fun))
     125    (recover-fn-from-rip)
    128126    (getvheader obj imm1)
    129127    (movb (% imm1.b) (% imm0.b))
     
    166164    (movq (% obj) (% arg_z))
    167165    (set-nargs 1)
    168     (lea (@ (:^ @back-from-cons) (% fn)) (% ra0))
    169     (movq (% fun) (% fn))
    170     (jmp (% fn))
    171     (:tra @back-from-cons)
    172     (recover-fn-from-ra0 @back-from-cons)
     166    (:talign 4)
     167    (call (% fun))
     168    (recover-fn-from-rip)
    173169    (addq ($ (- x8664::cons.size x8664::fulltag-cons)) (% obj))
    174170    (jmp @test)
     
    246242    (movq (% obj) (% arg_z))
    247243    (movq (% obj) (% prev))
    248     (lea (@ (:^ @back-from-misc) (% fn)) (% ra0))
    249244    (set-nargs 1)
    250     (movq (% fun) (% fn))
    251     (jmp (% fn))
    252     (:tra @back-from-misc)
    253     (recover-fn-from-ra0 @back-from-misc)
     245    (:talign 4)
     246    (call (% fun))
     247    (recover-fn-from-rip)
    254248    (getvheader obj imm1)
    255249    (movb (% imm1.b) (% imm0.b))
     
    294288    (movq (% obj) (% prev))
    295289    (set-nargs 1)
    296     (lea (@ (:^ @back-from-cons) (% fn)) (% ra0))
    297     (movq (% fun) (% fn))
    298     (jmp (% fn))
    299     (:tra @back-from-cons)
    300     (recover-fn-from-ra0 @back-from-cons)
     290    (:talign 4)
     291    (call (% fun))
     292    (recover-fn-from-rip)
    301293    (addq ($ (- x8664::cons.size x8664::fulltag-cons)) (% obj))
    302294    (jmp @test)
     
    351343  (cmpb ($ x8664::fulltag-function) (%b imm0))
    352344  (jne @ret)
    353   (xchgq (% temp0)(% fn))
    354345  (set-nargs 1)
    355   (jmp (% fn))
     346  (jmp (% temp0))
    356347  @bad
    357   (movq (@ 'no-class-error (% fn)) (% fname))
     348  (load-constant no-class-error fname)
    358349  (set-nargs 1)
    359   (movq (% fn) (% xfn))
    360   (movq (@ x8664::symbol.fcell (% fname)) (% fn))
    361   (jmp (% fn))
     350  (jmp  (@ x8664::symbol.fcell (% fname)))
    362351  @ret
    363352  (movq (% temp0) (% arg_z))  ; return frob from table
Note: See TracChangeset for help on using the changeset viewer.