[cmucl-commit] CMUCL commit: src/lisp (x86-lispregs.h)

Raymond Toy rtoy at common-lisp.net
Fri Dec 24 07:01:34 CET 2010


    Date: Friday, December 24, 2010 @ 01:01:34
  Author: rtoy
    Path: /project/cmucl/cvsroot/src/lisp

Modified: x86-lispregs.h

Document why SC_EFLAGS doesn't seem to work on Solaris/x86.


----------------+
 x86-lispregs.h |   11 +++++++----
 1 file changed, 7 insertions(+), 4 deletions(-)


Index: src/lisp/x86-lispregs.h
diff -u src/lisp/x86-lispregs.h:1.15 src/lisp/x86-lispregs.h:1.16
--- src/lisp/x86-lispregs.h:1.15	Thu Dec 23 17:56:26 2010
+++ src/lisp/x86-lispregs.h	Fri Dec 24 01:01:34 2010
@@ -1,5 +1,5 @@
 /* x86-lispregs.h -*- Mode: C; -*-
- * $Header: /project/cmucl/cvsroot/src/lisp/x86-lispregs.h,v 1.15 2010-12-23 22:56:26 rtoy Exp $
+ * $Header: /project/cmucl/cvsroot/src/lisp/x86-lispregs.h,v 1.16 2010-12-24 06:01:34 rtoy Exp $
  */
 
 #ifndef _X86_LISPREGS_H_
@@ -63,9 +63,12 @@
 #elif defined(SOLARIS)
 /*
  * Solaris/x86 has access the the eflags value, but this doesn't
- * currently work.  Some more work needs to be done in x86-arch.c to
- * make this work.  But the default code there works fine on
- * Solaris/x86.
+ * currently work.  It seems that when we set the EFLAG to enable
+ * single-stepping, we never actually step the new instruction but we
+ * stop at exactly the same place.  This is not how it works on other
+ * OSes where we do step an instruction.  I (rtoy) do not know why.
+ * Some more work needs to be done in x86-arch.c to make this work.
+ * But the default code there works fine on Solaris/x86.
  */
 /* #define SC_EFLAGS(sc) ((sc)->uc_mcontext.gregs[EFL])*/
 #endif


More information about the cmucl-commit mailing list