Changeset 9146


Ignore:
Timestamp:
Apr 13, 2008, 4:27:40 AM (12 years ago)
Author:
rme
Message:

%apply-lexpr-with-method-context, %apply-with-method-context: don't forget
to discard frame that the caller pushed.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/ia32/level-0/X86/X8632/x8632-def.lisp

    r9136 r9146  
    314314                                                       (function arg_y)
    315315                                                       (args arg_z))
    316   (int ($ 3))
    317316  ;; Somebody's called (or tail-called) us.
    318317  ;; * Put magic arg in %rcontext:tcr.next-method-context
     
    322321  (popl (@ (% :rcontext) x8632::tcr.save0))     ;return address
    323322  (popl (@ (% :rcontext) x8632::tcr.next-method-context)) ;magic arg
     323  (discard-reserved-frame)
    324324  (movl (% function) (@ (% :rcontext) x8632::tcr.save1))
    325325  (set-nargs 0)
     
    357357                                                 (function arg_y)
    358358                                                 (args arg_z))
    359   (int ($ 3))
    360359  ;; Similar to above.
    361360  (popl (@ (% :rcontext) x8632::tcr.save0))     ;save return address
    362361  (popl (@ (% :rcontext) x8632::tcr.save1))     ; and magic arg in the spill area
     362  (discard-reserved-frame)
    363363  (movl (% args) (@ (% :rcontext) x8632::tcr.save2))    ;in case of error
    364364  (xorl (% imm0) (% imm0))
Note: See TracChangeset for help on using the changeset viewer.