Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src/common/lib/libc/arch/arm/string Add .cfi ops if EABI.
details: https://anonhg.NetBSD.org/src/rev/121a4a78e49a
branches: trunk
changeset: 789424:121a4a78e49a
user: matt <matt%NetBSD.org@localhost>
date: Mon Aug 19 00:36:29 2013 +0000
description:
Add .cfi ops if EABI.
Thumbify.
diffstat:
common/lib/libc/arch/arm/string/strcat_arm.S | 25 +++++++++++++++++++------
1 files changed, 19 insertions(+), 6 deletions(-)
diffs (43 lines):
diff -r 1d5e39b8cf2d -r 121a4a78e49a common/lib/libc/arch/arm/string/strcat_arm.S
--- a/common/lib/libc/arch/arm/string/strcat_arm.S Mon Aug 19 00:35:06 2013 +0000
+++ b/common/lib/libc/arch/arm/string/strcat_arm.S Mon Aug 19 00:36:29 2013 +0000
@@ -33,20 +33,33 @@
* Implementation of strcat using strlen/strcpy.
*/
ENTRY(strcat)
- str lr, [sp, #-8]! /* save return address */
- push {r4, r5} /* save registers */
+#ifdef __ARM_EABI__
+ .fnstart
+ .cfi_startproc
+#endif
+ push {r3-r5, lr} /* save registers */
+#ifdef __ARM_EABI__
+ .save {r3-r5, lr}
+ .cfi_def_cfa_offset 16
+ .cfi_offset 14, -4
+ .cfi_offset 5, -8
+ .cfi_offset 4, -12
+ .cfi_offset 3, -16
+#endif
mov r4, r0 /* save dst */
mov r5, r1 /* save append */
bl PLT_SYM(strlen) /* find length of dst */
- add r0, r0, r4 /* add to dst pointer */
+ adds r0, r0, r4 /* add to dst pointer */
mov r1, r5 /* fetch append */
bl PLT_SYM(strcpy) /* append string */
mov r0, r4 /* restore dst as return value */
- pop {r4, r5} /* restore registers */
- ldr lr, [sp], #8 /* restore return address */
- RET
+ pop {r3-r5, pc} /* restore registers */
+#ifdef __ARM_EABI__
+ .cfi_endproc
+ .fnend
+#endif
END(strcat)
Home |
Main Index |
Thread Index |
Old Index