summaryrefslogtreecommitdiff
path: root/sysdeps/mach/i386
diff options
context:
space:
mode:
Diffstat (limited to 'sysdeps/mach/i386')
-rw-r--r--sysdeps/mach/i386/sysdep.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/sysdeps/mach/i386/sysdep.h b/sysdeps/mach/i386/sysdep.h
index 692310b320..5b4246e016 100644
--- a/sysdeps/mach/i386/sysdep.h
+++ b/sysdeps/mach/i386/sysdep.h
@@ -44,6 +44,11 @@ Cambridge, MA 02139, USA. */
"g" (ptr), "m" (*(long int *) (fn)) : "%esp"); \
} while (0)
+#define RETURN_TO(sp, pc, retval) \
+ asm volatile ("movl %0, %%esp; jmp %*%1 # %2" \
+ : : "g" (sp), "r" (pc), "a" (retval))
+
+
#define STACK_GROWTH_DOWN
#include_next <sysdep.h>