Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/sys/arch/i386/i386 make it at least compile/link - copy chan...



details:   https://anonhg.NetBSD.org/src/rev/4681f0485279
branches:  trunk
changeset: 533205:4681f0485279
user:      itojun <itojun%NetBSD.org@localhost>
date:      Mon Jun 24 10:05:54 2002 +0000

description:
make it at least compile/link - copy change to i386/locore.s (1.255 -> 1.256)
not sure if it is correct

diffstat:

 sys/arch/i386/i386/ibcs2_sigcode.s |  14 ++++++++------
 1 files changed, 8 insertions(+), 6 deletions(-)

diffs (28 lines):

diff -r f5ea9f2fec20 -r 4681f0485279 sys/arch/i386/i386/ibcs2_sigcode.s
--- a/sys/arch/i386/i386/ibcs2_sigcode.s        Mon Jun 24 09:26:47 2002 +0000
+++ b/sys/arch/i386/i386/ibcs2_sigcode.s        Mon Jun 24 10:05:54 2002 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: ibcs2_sigcode.s,v 1.5 2002/03/20 20:06:51 ross Exp $   */
+/*     $NetBSD: ibcs2_sigcode.s,v 1.6 2002/06/24 10:05:54 itojun Exp $ */
 
 /*-
  * Copyright (c) 1998 The NetBSD Foundation, Inc.
@@ -85,11 +85,13 @@
 
 /* LINTSTUB: Var: char ibcs2_sigcode[1], ibcs2_esigcode[1]; */
 NENTRY(ibcs2_sigcode)
-       call    *SIGF_HANDLER(%esp)
-       leal    SIGF_SC(%esp),%eax      # scp (the call may have clobbered the
-                                       # copy at SIGF_SCP(%esp))
-       pushl   %eax
-       pushl   %eax                    # junk to fake return address
+       /*
+        * Handler has returned here as if we called it.  The sigcontext
+        * is on the stack after the 3 args "we" pushed.
+        */
+       leal    12(%esp),%eax           # get pointer to sigcontext
+       movl    %eax,4(%esp)            # put it in the argument slot
+                                       # fake return address already there
        movl    $IBCS2_SYS_sigreturn,%eax
        int     $0x80                   # enter kernel with args on stack
        movl    $IBCS2_SYS_exit,%eax



Home | Main Index | Thread Index | Old Index