diff --git a/lisp/x86-lispregs.h b/lisp/x86-lispregs.h
index d3ec2bd537a7243c6c490275e6a2ce8e563fe909..fb5aa63a4a4e34866c341350b850c9db3b6c448c 100644
--- a/lisp/x86-lispregs.h
+++ b/lisp/x86-lispregs.h
@@ -1,5 +1,5 @@
 /* x86-lispregs.h -*- Mode: C; -*-
- * $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/lisp/x86-lispregs.h,v 1.7 2007/07/15 09:24:57 cshapiro Exp $
+ * $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/lisp/x86-lispregs.h,v 1.8 2007/07/18 09:45:03 cshapiro Exp $
  */
 
 #ifndef _X86_LISPREGS_H_
@@ -52,9 +52,12 @@
 #elif defined(DARWIN)
 #define SC_PC(sc) ((sc)->uc_mcontext->ss.eip)
 #define SC_SP(sc) SC_REG(sc, reg_ESP)
-#else
+#elif defined(__FreeBSD__)
 #define SC_PC(sc) ((sc)->uc_mcontext.mc_eip)
 #define SC_SP(sc) SC_REG(sc, reg_ESP)
+#elif defined(__linux__)
+#define SC_PC(sc) ((sc)->eip)
+#define SC_SP(sc) SC_REG(sc, reg_ESP)
 #endif
 
 #endif /* _X86_LISPREGS_H_ */