diff options
Diffstat (limited to 'libc/arch-x86/syscalls/__openat.S')
-rw-r--r-- | libc/arch-x86/syscalls/__openat.S | 16 |
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 |