Refs #262. Added executable stack markings.
authorZhang Xianyi <traits.zhang@gmail.com>
Sat, 27 Jul 2013 16:09:40 +0000 (00:09 +0800)
committerZhang Xianyi <traits.zhang@gmail.com>
Sat, 27 Jul 2013 16:09:40 +0000 (00:09 +0800)
CONTRIBUTORS.md
common_alpha.h
common_ia64.h
common_mips64.h
common_sparc.h
common_x86.h
common_x86_64.h

index 4a13bcc..59df776 100644 (file)
@@ -79,5 +79,9 @@ In chronological order:
   * [2013-07-11] create openblas_get_parallel to retrieve information which parallelization 
     model is used by OpenBLAS.
 
+* Sébastien Fabbro <bicatali@gentoo.org>
+  * [2013-07-24] Modify makefile to respect user's LDFLAGS
+  * [2013-07-24] Add stack markings for GNU as arch-independent for assembler files
+
 * [Your name or handle] <[email or website]>
   * [Date] [Brief summary of your changes]
index cf79473..3b46c74 100644 (file)
@@ -150,9 +150,17 @@ REALNAME:
 #define PROFCODE .prologue 0
 #endif
 
+#if defined(__linux__) && defined(__ELF__)
+#define GNUSTACK .section .note.GNU-stack,"",%progbits
+#else
+#define GNUSTACK
+#endif
+
 #define EPILOGUE \
        .end REALNAME; \
-       .ident VERSION
+       .ident VERSION; \
+       GNUSTACK
+
 #endif
 
 #ifdef DOUBLE
index 81939cc..3530e0b 100644 (file)
@@ -379,8 +379,15 @@ REALNAME:
 #define PROFCODE
 #endif
 
+#if defined(__linux__) && defined(__ELF__)
+#define GNUSTACK .section .note.GNU-stack,"",%progbits
+#else
+#define GNUSTACK
+#endif
+
 #define EPILOGUE \
-       .endp REALNAME
+        .endp REALNAME ; \
+        GNUSTACK
 
 #define START_ADDRESS 0x20000fc800000000UL
 
index 1bee694..c08fb2c 100644 (file)
@@ -235,10 +235,17 @@ REALNAME: ;\
        .set    noreorder ;\
        .set    nomacro
 
+#if defined(__linux__) && defined(__ELF__)
+#define GNUSTACK .section .note.GNU-stack,"",%progbits
+#else
+#define GNUSTACK
+#endif
+
 #define EPILOGUE \
        .set    macro ;\
        .set    reorder ;\
-       .end    REALNAME
+       .end    REALNAME ;\
+       GNUSTACK
 
 #define PROFCODE
 #endif
index 35d8bdb..cfd27f7 100644 (file)
@@ -199,8 +199,17 @@ static __inline int blas_quickdivide(blasint x, blasint y){
        .type   REALNAME, #function; \
        .proc   07; \
 REALNAME:;
+
+#if defined(__linux__) && defined(__ELF__)
+#define GNUSTACK .section .note.GNU-stack,"",%progbits
+#else
+#define GNUSTACK
+#endif
+
 #define EPILOGUE \
-       .size    REALNAME, .-REALNAME
+        .size   REALNAME, .-REALNAME; \
+        GNUSTACK
+
 #endif
 
 #endif
index 5f56839..48517d9 100644 (file)
@@ -301,7 +301,9 @@ REALNAME:
 #define PROFCODE
 #endif
 
-#define EPILOGUE .size  REALNAME, .-REALNAME
+#define EPILOGUE \
+        .size   REALNAME, .-REALNAME; \
+        .section .note.GNU-stack,"",%progbits
 
 #endif
 
index 8f9f736..1889038 100644 (file)
@@ -372,7 +372,10 @@ REALNAME:
 #define PROFCODE
 #endif
 
-#define EPILOGUE .size  REALNAME, .-REALNAME
+#define EPILOGUE \
+        .size   REALNAME, .-REALNAME; \
+        .section .note.GNU-stack,"",%progbits
+
 
 #endif