1.0.1.24: unwinding lisp stack frames when alien code is doing a
authorlisphacker <lisphacker>
Sat, 13 Jan 2007 21:05:33 +0000 (21:05 +0000)
committerlisphacker <lisphacker>
Sat, 13 Jan 2007 21:05:33 +0000 (21:05 +0000)
commit45b5a21316381ecab98a0e5a5296294e044170e8
treeebc3d93a65d13ffddf2104cf5f94d3fd6f251560
parent520a9274ee6db138ecb8e056f3c524afac1d0c88
1.0.1.24: unwinding lisp stack frames when alien code is doing a
          non-local exit.
  Revert src/assembly/x86/assem-rtns.lisp changes of version 1.0.0.19.
  Add Win32 SEH frame to catch-block and unwind-block object
    definitions.
  Changed VOPs in src/compiler/x86/nlx.lisp to set up SEH frames for
    unwind-protect and unwind targets.
  Added Win32-specific assembly-routines to handle unwinding and
    unwind-protect frames.
  Added an SEH frame to call_into_lisp.
  Added a wrapper around the runtime exception handler to provide a
    set of continuous stack frames over the system unwind logic (which
    doesn't maintain EBP properly, thus breaking backtraces).
  Added test cases for unwinding lisp stack frames from alien code.
NEWS
src/assembly/x86/assem-rtns.lisp
src/compiler/generic/objdef.lisp
src/compiler/x86/nlx.lisp
src/compiler/x86/vm.lisp
src/runtime/win32-os.c
src/runtime/win32-os.h
src/runtime/x86-assem.S
tests/win32-foreign-stack-unwind.impure.lisp [new file with mode: 0755]
tests/win32-stack-unwind.c [new file with mode: 0755]
version.lisp-expr