public inbox for java-patches@gcc.gnu.org
 help / color / mirror / Atom feed
* Fix unwinder directives for ARM EABI libffi
@ 2007-08-22  9:26 Andrew Haley
  0 siblings, 0 replies; only message in thread
From: Andrew Haley @ 2007-08-22  9:26 UTC (permalink / raw)
  To: gcc-patches, java-patches

The previous patch with the unwinder directives wasn't quite right.

Andrew.


2007-08-14  Andrew Haley  <aph@redhat.com>

        * src/arm/sysv.S: Add unwinder directives.

Index: src/arm/sysv.S
===================================================================
--- src/arm/sysv.S	(revision 126985)
+++ src/arm/sysv.S	(working copy)
@@ -92,6 +92,7 @@
 	bx	pc
 	nop
 	.arm
+	.fnstart
 /* A hook to tell gdb that we've switched to ARM mode.  Also used to call
    directly from other local arm routines.  */
 _L__\name:		
@@ -102,6 +103,7 @@
 	.align 0
 	.arm
 	ENTRY(\name)
+	.fnstart
 .endm
 #endif
 
@@ -134,8 +136,11 @@
 ARM_FUNC_START ffi_call_SYSV
 	@ Save registers
         stmfd	sp!, {r0-r3, fp, lr}
+	.save	{r0-r3, fp, lr}
 	mov	fp, sp
 
+	.setfp	fp, sp
+
 	@ Make room for all of the new args.
 	sub	sp, fp, r2
 
@@ -205,6 +210,7 @@
 	RETLDM	"r0-r3,fp"
 
 .ffi_call_SYSV_end:
+	.fnend
         .size    CNAME(ffi_call_SYSV),.ffi_call_SYSV_end-CNAME(ffi_call_SYSV)
 
 /*
@@ -216,9 +222,12 @@
 */
 
 ARM_FUNC_START ffi_closure_SYSV
+	.pad #16
 	add	ip, sp, #16
 	stmfd	sp!, {ip, lr}
+	.save	{r0, lr}
 	add	r2, sp, #8
+	.pad #16
 	sub	sp, sp, #16
 	str	sp, [sp, #8]
 	add	r1, sp, #8
@@ -273,5 +282,6 @@
 #endif
 
 .ffi_closure_SYSV_end:
+	.fnend
         .size    CNAME(ffi_closure_SYSV),.ffi_closure_SYSV_end-CNAME(ffi_closure_SYSV)
 

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2007-08-22  9:26 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2007-08-22  9:26 Fix unwinder directives for ARM EABI libffi Andrew Haley

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).