summaryrefslogtreecommitdiff
path: root/sysdeps/mach/i386/syscall.S
diff options
context:
space:
mode:
Diffstat (limited to 'sysdeps/mach/i386/syscall.S')
-rw-r--r--sysdeps/mach/i386/syscall.S5
1 files changed, 4 insertions, 1 deletions
diff --git a/sysdeps/mach/i386/syscall.S b/sysdeps/mach/i386/syscall.S
index adb7716948..531d4e9693 100644
--- a/sysdeps/mach/i386/syscall.S
+++ b/sysdeps/mach/i386/syscall.S
@@ -1,4 +1,4 @@
-/* Copyright (C) 1993-2016 Free Software Foundation, Inc.
+/* Copyright (C) 1993-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -22,5 +22,8 @@ ENTRY (syscall)
popl %eax /* Pop syscall number into %eax. */
pushl %ecx /* Push back return address. */
.byte 0x9a, 0, 0, 0, 0, 7, 0 /* lcall $7, $0 -- gas bug */
+ popl %ecx /* Pop return address into %ecx. */
+ pushl $0 /* Push back dumb syscall number. */
+ pushl %ecx /* Push back return address. */
ret
END (syscall)