f5a9123d9f
It turns out that clang can emit code where the sp is saved in the r7
register on arm. Unfortunately, a lot of our syscalls overwrite that
value while the syscall is executing, so unwinding through that syscall
fails.
Update the syscall generation code to add unwinding information for
these uses.
Bug: 28411713
(cherry picked from commit 6e45d37dec
)
Change-Id: Ib775effc44c4113735fe9032b0602b9d63e3e390
16 lines
357 B
ArmAsm
16 lines
357 B
ArmAsm
/* Generated by gensyscalls.py. Do not edit. */
|
|
|
|
#include <private/bionic_asm.h>
|
|
|
|
ENTRY(__timer_create)
|
|
mov ip, r7
|
|
.cfi_register r7, ip
|
|
ldr r7, =__NR_timer_create
|
|
swi #0
|
|
mov r7, ip
|
|
.cfi_restore r7
|
|
cmn r0, #(MAX_ERRNO + 1)
|
|
bxls lr
|
|
neg r0, r0
|
|
b __set_errno_internal
|
|
END(__timer_create)
|