summaryrefslogtreecommitdiffstats
path: root/libc/arch-x86/syscalls/__openat.S
diff options
context:
space:
mode:
Diffstat (limited to 'libc/arch-x86/syscalls/__openat.S')
-rw-r--r--libc/arch-x86/syscalls/__openat.S16
1 files changed, 9 insertions, 7 deletions
diff --git a/libc/arch-x86/syscalls/__openat.S b/libc/arch-x86/syscalls/__openat.S
index 6b05bec..4c11709 100644
--- a/libc/arch-x86/syscalls/__openat.S
+++ b/libc/arch-x86/syscalls/__openat.S
@@ -4,14 +4,17 @@
ENTRY(__openat)
pushl %ebx
+ .cfi_def_cfa_offset 8
+ .cfi_rel_offset ebx, 0
pushl %ecx
+ .cfi_adjust_cfa_offset 4
+ .cfi_rel_offset ecx, 0
pushl %edx
+ .cfi_adjust_cfa_offset 4
+ .cfi_rel_offset edx, 0
pushl %esi
- .cfi_def_cfa_offset 16
- .cfi_rel_offset ebx, 0
- .cfi_rel_offset ecx, 4
- .cfi_rel_offset edx, 8
- .cfi_rel_offset esi, 12
+ .cfi_adjust_cfa_offset 4
+ .cfi_rel_offset esi, 0
mov 20(%esp), %ebx
mov 24(%esp), %ecx
mov 28(%esp), %edx
@@ -22,9 +25,8 @@ ENTRY(__openat)
jb 1f
negl %eax
pushl %eax
- call __set_errno
+ call __set_errno_internal
addl $4, %esp
- orl $-1, %eax
1:
popl %esi
popl %edx