This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[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 */


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]