+
+void
+handle_single_step_trap (os_context_t *context, int kind, int register_offset)
+{
+ fake_foreign_function_call(context);
+
+#ifndef LISP_FEATURE_WIN32
+ thread_sigmask(SIG_SETMASK, os_context_sigmask_addr(context), 0);
+#endif
+
+ funcall2(StaticSymbolFunction(HANDLE_SINGLE_STEP_TRAP),
+ make_fixnum(kind),
+ make_fixnum(register_offset));
+
+ undo_fake_foreign_function_call(context); /* blocks signals again */
+}