6e45d37dec
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 Change-Id: Id51a5d43c058631bb50834527f93fa299bbcf759
16 lines
344 B
ArmAsm
16 lines
344 B
ArmAsm
/* Generated by gensyscalls.py. Do not edit. */
|
|
|
|
#include <private/bionic_asm.h>
|
|
|
|
ENTRY(getrusage)
|
|
mov ip, r7
|
|
.cfi_register r7, ip
|
|
ldr r7, =__NR_getrusage
|
|
swi #0
|
|
mov r7, ip
|
|
.cfi_restore r7
|
|
cmn r0, #(MAX_ERRNO + 1)
|
|
bxls lr
|
|
neg r0, r0
|
|
b __set_errno_internal
|
|
END(getrusage)
|