OSDN Git Service

Add cfi directives to all arm assembly.
authorChristopher Ferris <cferris@google.com>
Tue, 3 Dec 2013 01:44:53 +0000 (17:44 -0800)
committerChristopher Ferris <cferris@google.com>
Tue, 3 Dec 2013 03:13:12 +0000 (19:13 -0800)
commited45970ac5a182e512669cfa5c15b9f4fa783ad7
treec8038ea495e3822f652d45eb06efe739b246268b
parentab0b0cdf1b07eb25ad89e0de08d4b3fd453602fe
Add cfi directives to all arm assembly.

Since the ENTRY/END macros now have .cfi_startproc/.cfi_endproc, most of the
custom arm assembly has no unwind information. Adding the proper cfi directives
for these and removing the arm directives.

Update the gensyscalls.py script to add these cfi directives for the generated
assembly. Also fix the references to non-uapi headers to the proper uapi
header.

In addition, remove the kill.S, tkill.S, tgkill.S for arm since they are not
needed at all. The unwinder (libunwind) is able to properly unwind using the
normal abort.

After this change, I can unwind through the system calls again.

Bug: 11559337
Bug: 11825869
Bug: 11321283

Change-Id: I18b48089ef2d000a67913ce6febc6544bbe934a3
39 files changed:
libc/SYSCALLS.TXT
libc/arch-arm/arm.mk
libc/arch-arm/bionic/__bionic_clone.S
libc/arch-arm/bionic/abort_arm.S
libc/arch-arm/bionic/kill.S [deleted file]
libc/arch-arm/bionic/memcmp.S
libc/arch-arm/bionic/memcmp16.S
libc/arch-arm/bionic/setjmp.S
libc/arch-arm/bionic/syscall.S
libc/arch-arm/bionic/tgkill.S [deleted file]
libc/arch-arm/bionic/tkill.S [deleted file]
libc/arch-arm/syscalls.mk
libc/arch-arm/syscalls/__epoll_pwait.S
libc/arch-arm/syscalls/__llseek.S
libc/arch-arm/syscalls/__mmap2.S
libc/arch-arm/syscalls/__ppoll.S
libc/arch-arm/syscalls/__pselect6.S
libc/arch-arm/syscalls/__waitid.S
libc/arch-arm/syscalls/fchownat.S
libc/arch-arm/syscalls/fsetxattr.S
libc/arch-arm/syscalls/futex.S
libc/arch-arm/syscalls/getsockopt.S
libc/arch-arm/syscalls/kill.S [new file with mode: 0644]
libc/arch-arm/syscalls/linkat.S
libc/arch-arm/syscalls/lsetxattr.S
libc/arch-arm/syscalls/mount.S
libc/arch-arm/syscalls/perf_event_open.S
libc/arch-arm/syscalls/prctl.S
libc/arch-arm/syscalls/pread64.S
libc/arch-arm/syscalls/pwrite64.S
libc/arch-arm/syscalls/readahead.S
libc/arch-arm/syscalls/recvfrom.S
libc/arch-arm/syscalls/sendto.S
libc/arch-arm/syscalls/setsockopt.S
libc/arch-arm/syscalls/setxattr.S
libc/arch-arm/syscalls/tgkill.S [new file with mode: 0644]
libc/arch-arm/syscalls/tkill.S [new file with mode: 0644]
libc/include/sys/glibc-syscalls.h
libc/tools/gensyscalls.py