
Update of /project/movitz/cvsroot/movitz/losp/muerte In directory common-lisp.net:/tmp/cvs-serv11099 Modified Files: primitive-functions.lisp Log Message: Added "RET atomification". I.e. when an interrupt occurs just before a RET instruction, EIP is moved to a well-known code-vector that just does the same RET. The point is that otherwise it's impossible (or too difficult) to figure out which code-vector EIP references. Date: Sat Sep 25 17:51:22 2004 Author: ffjeld Index: movitz/losp/muerte/primitive-functions.lisp diff -u movitz/losp/muerte/primitive-functions.lisp:1.44 movitz/losp/muerte/primitive-functions.lisp:1.45 --- movitz/losp/muerte/primitive-functions.lisp:1.44 Wed Sep 22 16:48:27 2004 +++ movitz/losp/muerte/primitive-functions.lisp Sat Sep 25 17:51:22 2004 @@ -10,7 +10,7 @@ ;;;; Author: Frode Vatvedt Fjeld <frodef@acm.org> ;;;; Created at: Tue Oct 2 21:02:18 2001 ;;;; -;;;; $Id: primitive-functions.lisp,v 1.44 2004/09/22 14:48:27 ffjeld Exp $ +;;;; $Id: primitive-functions.lisp,v 1.45 2004/09/25 15:51:22 ffjeld Exp $ ;;;; ;;;;------------------------------------------------------------------ @@ -714,4 +714,7 @@ ;;;;;; - +(define-primitive-function ret-trampoline () + "This is the global RET trampoline, used to achieve stack discipline." + (with-inline-assembly (:returns :multiple-values) + (:ret)))