Update all debug directives.
The libcorkscrew stack unwinder does not understand cfi directives,
so add .save directives so that it can function properly.
Also add the directives in to strcmp.S and fix a missing set of
directives in cortex-a9/memcpy_base.S.
Bug: 10345269
Merge from internal master.
(cherry-picked from 5f7ccea3ffab05aeceecb85c821003cf580630d3)
Change-Id: If48a216203216a643807f5d61906015984987189
diff --git a/libc/arch-arm/krait/bionic/__strcat_chk.S b/libc/arch-arm/krait/bionic/__strcat_chk.S
index 4516d30..4b125c8 100644
--- a/libc/arch-arm/krait/bionic/__strcat_chk.S
+++ b/libc/arch-arm/krait/bionic/__strcat_chk.S
@@ -40,10 +40,12 @@
ENTRY(__strcat_chk)
.cfi_startproc
pld [r0, #0]
+ .save {r0, lr}
push {r0, lr}
.cfi_def_cfa_offset 8
.cfi_rel_offset r0, 0
.cfi_rel_offset lr, 4
+ .save {r4, r5}
push {r4, r5}
.cfi_adjust_cfa_offset 8
.cfi_rel_offset r4, 0
@@ -185,6 +187,7 @@
pld [r1, #64]
mov r2, r4
add r0, r0, r3
+ .pad #-8
pop {r4, r5}
.cfi_adjust_cfa_offset -8
.cfi_restore r4