[Openmcl-cvs-notifications] r10595 - /trunk/source/lisp-kernel/x86-exceptions.c

gb at clozure.com gb at clozure.com
Sun Aug 31 04:49:13 EDT 2008


Author: gb
Date: Sun Aug 31 04:49:13 2008
New Revision: 10595

Log:
Reference 'restore_windows_context*', not win64-specific.
Stub out some things for win32, conditionalize existing code for win64.

Modified:
    trunk/source/lisp-kernel/x86-exceptions.c

Modified: trunk/source/lisp-kernel/x86-exceptions.c
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- trunk/source/lisp-kernel/x86-exceptions.c (original)
+++ trunk/source/lisp-kernel/x86-exceptions.c Sun Aug 31 04:49:13 2008
@@ -39,8 +39,10 @@
 #endif
 #ifdef WINDOWS
 #include <windows.h>
+#ifdef WIN64
 #include <winternl.h>
 #include <ntstatus.h>
+#endif
 #endif
 =

 int
@@ -1465,9 +1467,9 @@
           ((BytePtr)stack_pointer > a->low));
 }
 =

-#ifdef WINDOWS
-extern LONG restore_win64_context(ExceptionInformation *, TCR *, int;);
-#endif
+
+extern DWORD restore_windows_context(ExceptionInformation *, TCR *, int);
+
 =

 void
 interrupt_handler (int signum, siginfo_t *info, ExceptionInformation *cont=
ext)
@@ -1545,7 +1547,7 @@
   }
 #endif
 #ifdef WINDOWS
-  restore_win64_context(context,tcr,old_valence);
+  restore_windows_context(context,tcr,old_valence);
 #else
   SIGRETURN(context);
 #endif
@@ -1636,7 +1638,7 @@
 =

 #ifdef WINDOWS
 BOOL =

-ControlEventHandler(DWORD event)
+CALLBACK ControlEventHandler(DWORD event)
 {
   switch(event) {
   case CTRL_C_EVENT:
@@ -1669,8 +1671,6 @@
     return SIGILL;
   case EXCEPTION_IN_PAGE_ERROR:
     return SIGBUS;
-  case DBG_PRINTEXCEPTION_C:
-    return DBG_PRINTEXCEPTION_C;
   default:
     return -1;
   }
@@ -1703,7 +1703,7 @@
     }
   }
   unlock_exception_lock_in_handler(tcr);
-  return restore_win64_context(context, tcr, old_valence);
+  return restore_windows_context(context, tcr, old_valence);
 }
 =

 LONG windows_switch_to_foreign_stack(LispObj, void*, void*);



More information about the Openmcl-cvs-notifications mailing list