summaryrefslogtreecommitdiffstats
path: root/libc/arch-x86/syscalls/llistxattr.S
diff options
context:
space:
mode:
authorChristopher Ferris <cferris@google.com>2014-05-29 18:17:09 -0700
committerChristopher Ferris <cferris@google.com>2014-05-29 19:04:36 -0700
commit15b91e92a0bb4a15b4f2258bea332f4a67fa94d7 (patch)
treeb83242c20fc59e1d5bc3420e9f8cbf2b5b6a1aae /libc/arch-x86/syscalls/llistxattr.S
parent264d1b832510b746c1d45b5efaa33c164d6f8b2b (diff)
downloadbionic-15b91e92a0bb4a15b4f2258bea332f4a67fa94d7.zip
bionic-15b91e92a0bb4a15b4f2258bea332f4a67fa94d7.tar.gz
bionic-15b91e92a0bb4a15b4f2258bea332f4a67fa94d7.tar.bz2
Fix x86 cfi directives for syscalls.
The syscall generation always used 4 bytes for each push cfi directive. However, the first push should always use an offset of 8 bytes, each subsequent push after that is only 4 bytes though. Change-Id: Ibaabd107f399ef67010b9a08213783957c2f74a9
Diffstat (limited to 'libc/arch-x86/syscalls/llistxattr.S')
-rw-r--r--libc/arch-x86/syscalls/llistxattr.S10
1 files changed, 6 insertions, 4 deletions
diff --git a/libc/arch-x86/syscalls/llistxattr.S b/libc/arch-x86/syscalls/llistxattr.S
index 1c64591..8d13da8 100644
--- a/libc/arch-x86/syscalls/llistxattr.S
+++ b/libc/arch-x86/syscalls/llistxattr.S
@@ -4,12 +4,14 @@
ENTRY(llistxattr)
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_def_cfa_offset 12
- .cfi_rel_offset ebx, 0
- .cfi_rel_offset ecx, 4
- .cfi_rel_offset edx, 8
+ .cfi_adjust_cfa_offset 4
+ .cfi_rel_offset edx, 0
mov 16(%esp), %ebx
mov 20(%esp), %ecx
mov 24(%esp), %edx