Module Name:    src
Committed By:   matt
Date:           Mon Aug 19 00:36:29 UTC 2013

Modified Files:
        src/common/lib/libc/arch/arm/string: strcat_arm.S

Log Message:
Add .cfi ops if EABI.
Thumbify.


To generate a diff of this commit:
cvs rdiff -u -r1.2 -r1.3 src/common/lib/libc/arch/arm/string/strcat_arm.S

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/common/lib/libc/arch/arm/string/strcat_arm.S
diff -u src/common/lib/libc/arch/arm/string/strcat_arm.S:1.2 src/common/lib/libc/arch/arm/string/strcat_arm.S:1.3
--- src/common/lib/libc/arch/arm/string/strcat_arm.S:1.2	Tue Jan 15 04:48:14 2013
+++ src/common/lib/libc/arch/arm/string/strcat_arm.S	Mon Aug 19 00:36:29 2013
@@ -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)

Reply via email to