diff options
Diffstat (limited to 'sysdeps/mach/i386')
-rw-r--r-- | sysdeps/mach/i386/sysdep.h | 5 |
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> |