1.0.39.4: fix build on non-darwin and ppc/darwin platforms
[sbcl.git] / src / runtime / x86-assem.S
index 37fcafa..5a89a4a 100644 (file)
@@ -79,7 +79,7 @@
  * for this instruction in the SIGILL handler and if we see it, we
  * advance the EIP by two bytes to skip over ud2 instruction and
  * call sigtrap_handler. */
-#if defined(LISP_FEATURE_DARWIN)
+#if defined(LISP_FEATURE_UD2_BREAKPOINTS)
 #define END()
 #define TRAP ud2
 #else
@@ -338,6 +338,7 @@ GNAME(fpu_restore):
        TYPE(GNAME(undefined_tramp))
         .byte   0, 0, 0, SIMPLE_FUN_HEADER_WIDETAG
 GNAME(undefined_tramp):
+       pop     4(%ebp)         # Save return PC for backtrace.
        TRAP
        .byte   trap_Error
         .byte   2