Add unwind information for r7 in arm syscalls.
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
diff --git a/libc/arch-arm/syscalls/swapon.S b/libc/arch-arm/syscalls/swapon.S
index 6ea93c3..df4c71e 100644
--- a/libc/arch-arm/syscalls/swapon.S
+++ b/libc/arch-arm/syscalls/swapon.S
@@ -4,9 +4,11 @@
ENTRY(swapon)
mov ip, r7
+ .cfi_register r7, ip
ldr r7, =__NR_swapon
swi #0
mov r7, ip
+ .cfi_restore r7
cmn r0, #(MAX_ERRNO + 1)
bxls lr
neg r0, r0