This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
[patch committed] SH: Tweak libffi sysv.S
- From: Kaz Kojima <kkojima at rr dot iij4u dot or dot jp>
- To: gcc-patches at gcc dot gnu dot org, java-patches at gcc dot gnu dot org
- Date: Thu, 27 Mar 2008 09:08:27 +0900 (JST)
- Subject: [patch committed] SH: Tweak libffi sysv.S
Hi,
I've committed the attached SH specific libffi patch on trunk
as an obvious follow-up for
libffi files executable stack (missing .note.GNU-stack on .o files)
http://gcc.gnu.org/ml/gcc-patches/2008-03/msg01501.html
Tested on sh{4,64}-unknown-linux-gnu with no new failures.
Regards,
kaz
--
2008-03-26 Kaz Kojima <kkojima@gcc.gnu.org>
* src/sh/sysv.S: Add .note.GNU-stack on Linux.
* src/sh64/sysv.S: Likewise.
diff -uprN ORIG/trunk/libffi/src/sh/sysv.S LOCAL/trunk/libffi/src/sh/sysv.S
--- ORIG/trunk/libffi/src/sh/sysv.S 2006-02-22 21:23:57.000000000 +0900
+++ LOCAL/trunk/libffi/src/sh/sysv.S 2008-03-26 16:27:58.000000000 +0900
@@ -1,5 +1,5 @@
/* -----------------------------------------------------------------------
- sysv.S - Copyright (c) 2002, 2003, 2004, 2006 Kaz Kojima
+ sysv.S - Copyright (c) 2002, 2003, 2004, 2006, 2008 Kaz Kojima
SuperH Foreign Function Interface
@@ -701,6 +701,10 @@ L_case_v:
.ffi_closure_SYSV_end:
.size CNAME(ffi_closure_SYSV),.ffi_closure_SYSV_end-CNAME(ffi_closure_SYSV)
+#if defined __ELF__ && defined __linux__
+ .section .note.GNU-stack,"",@progbits
+#endif
+
.section ".eh_frame","aw",@progbits
__FRAME_BEGIN__:
.4byte .LECIE1-.LSCIE1 /* Length of Common Information Entry */
diff -uprN ORIG/trunk/libffi/src/sh64/sysv.S LOCAL/trunk/libffi/src/sh64/sysv.S
--- ORIG/trunk/libffi/src/sh64/sysv.S 2006-03-15 21:20:42.000000000 +0900
+++ LOCAL/trunk/libffi/src/sh64/sysv.S 2008-03-26 16:28:32.000000000 +0900
@@ -1,5 +1,5 @@
/* -----------------------------------------------------------------------
- sysv.S - Copyright (c) 2003, 2004, 2006 Kaz Kojima
+ sysv.S - Copyright (c) 2003, 2004, 2006, 2008 Kaz Kojima
SuperH SHmedia Foreign Function Interface
@@ -437,6 +437,10 @@ ENTRY(ffi_closure_SYSV)
.ffi_closure_SYSV_end:
.size CNAME(ffi_closure_SYSV),.ffi_closure_SYSV_end-CNAME(ffi_closure_SYSV)
+#if defined __ELF__ && defined __linux__
+ .section .note.GNU-stack,"",@progbits
+#endif
+
.section ".eh_frame","aw",@progbits
__FRAME_BEGIN__:
.4byte .LECIE1-.LSCIE1 /* Length of Common Information Entry */