summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/hppa/getcontext.S4
-rw-r--r--src/hppa/setcontext.S4
-rw-r--r--src/hppa/siglongjmp.S4
-rw-r--r--src/ia64/Ginstall_cursor.S4
-rw-r--r--src/ia64/Linstall_cursor.S4
-rw-r--r--src/ia64/dyn_info_list.S4
-rw-r--r--src/ia64/getcontext.S4
-rw-r--r--src/ia64/longjmp.S4
-rw-r--r--src/ia64/setjmp.S4
-rw-r--r--src/ia64/siglongjmp.S4
-rw-r--r--src/ia64/sigsetjmp.S4
-rw-r--r--src/ppc/longjmp.S5
-rw-r--r--src/ppc/siglongjmp.S5
-rw-r--r--src/ppc32/setcontext.S5
-rw-r--r--src/ppc64/setcontext.S5
-rw-r--r--src/x86/longjmp.S4
-rw-r--r--src/x86/siglongjmp.S4
-rw-r--r--src/x86_64/longjmp.S4
-rw-r--r--src/x86_64/setcontext.S4
-rw-r--r--src/x86_64/siglongjmp.S4
-rw-r--r--tests/flush-cache.S5
-rw-r--r--tests/ia64-dyn-asm.S5
-rw-r--r--tests/ia64-test-nat-asm.S5
-rw-r--r--tests/ia64-test-rbs-asm.S5
-rw-r--r--tests/ia64-test-readonly-asm.S5
-rw-r--r--tests/ia64-test-stack-asm.S5
26 files changed, 114 insertions, 0 deletions
diff --git a/src/hppa/getcontext.S b/src/hppa/getcontext.S
index ae485373..ec7554a0 100644
--- a/src/hppa/getcontext.S
+++ b/src/hppa/getcontext.S
@@ -68,3 +68,7 @@ _Uhppa_getcontext:
bv,n %r0(%rp)
.procend
+#ifdef __linux__
+ /* We do not need executable stack. */
+ .section .note.GNU-stack,"",@progbits
+#endif
diff --git a/src/hppa/setcontext.S b/src/hppa/setcontext.S
index 4eba4cd8..a36ea35c 100644
--- a/src/hppa/setcontext.S
+++ b/src/hppa/setcontext.S
@@ -71,3 +71,7 @@ _Uhppa_setcontext:
bv,n %r0(%rp)
.procend
+#ifdef __linux__
+ /* We do not need executable stack. */
+ .section .note.GNU-stack,"",@progbits
+#endif
diff --git a/src/hppa/siglongjmp.S b/src/hppa/siglongjmp.S
index 16cfcc68..34878dbe 100644
--- a/src/hppa/siglongjmp.S
+++ b/src/hppa/siglongjmp.S
@@ -10,3 +10,7 @@ _UI_longjmp_cont:
#warning fix me
bv %r0(%rp)
.procend
+#ifdef __linux__
+ /* We do not need executable stack. */
+ .section .note.GNU-stack,"",@progbits
+#endif
diff --git a/src/ia64/Ginstall_cursor.S b/src/ia64/Ginstall_cursor.S
index 5e5862f9..6fb4401f 100644
--- a/src/ia64/Ginstall_cursor.S
+++ b/src/ia64/Ginstall_cursor.S
@@ -342,3 +342,7 @@ ia64_install_cursor:
.endp ia64_install_cursor
#endif /* !UNW_REMOTE_ONLY */
+#ifdef __linux__
+ /* We do not need executable stack. */
+ .section .note.GNU-stack,"",@progbits
+#endif
diff --git a/src/ia64/Linstall_cursor.S b/src/ia64/Linstall_cursor.S
index 44a7f5a1..8c723397 100644
--- a/src/ia64/Linstall_cursor.S
+++ b/src/ia64/Linstall_cursor.S
@@ -1,2 +1,6 @@
#define UNW_LOCAL_ONLY
#include "Ginstall_cursor.S"
+#ifdef __linux__
+ /* We do not need executable stack. */
+ .section .note.GNU-stack,"",@progbits
+#endif
diff --git a/src/ia64/dyn_info_list.S b/src/ia64/dyn_info_list.S
index 962b2347..31265f66 100644
--- a/src/ia64/dyn_info_list.S
+++ b/src/ia64/dyn_info_list.S
@@ -20,3 +20,7 @@
data8 0, 0, @segrel(.info)
#endif
+#ifdef __linux__
+ /* We do not need executable stack. */
+ .section .note.GNU-stack,"",@progbits
+#endif
diff --git a/src/ia64/getcontext.S b/src/ia64/getcontext.S
index a4f13ab3..d8da732a 100644
--- a/src/ia64/getcontext.S
+++ b/src/ia64/getcontext.S
@@ -171,3 +171,7 @@ _Uia64_getcontext:
mov r8 = 0
br.ret.sptk.many rp
.endp _Uia64_getcontext
+#ifdef __linux__
+ /* We do not need executable stack. */
+ .section .note.GNU-stack,"",@progbits
+#endif
diff --git a/src/ia64/longjmp.S b/src/ia64/longjmp.S
index 7590522f..2a2f2865 100644
--- a/src/ia64/longjmp.S
+++ b/src/ia64/longjmp.S
@@ -36,3 +36,7 @@ _UI_longjmp_cont: // non-function label for {sig,}longjmp.c
mov r8 = r16
br.sptk.many rp
.endp longjmp_continuation
+#ifdef __linux__
+ /* We do not need executable stack. */
+ .section .note.GNU-stack,"",@progbits
+#endif
diff --git a/src/ia64/setjmp.S b/src/ia64/setjmp.S
index d7a7a2bc..384615b8 100644
--- a/src/ia64/setjmp.S
+++ b/src/ia64/setjmp.S
@@ -45,3 +45,7 @@ _setjmp:
br.ret.sptk.many rp
.endp _setjmp
+#ifdef __linux__
+ /* We do not need executable stack. */
+ .section .note.GNU-stack,"",@progbits
+#endif
diff --git a/src/ia64/siglongjmp.S b/src/ia64/siglongjmp.S
index 3c583558..d77b4375 100644
--- a/src/ia64/siglongjmp.S
+++ b/src/ia64/siglongjmp.S
@@ -63,3 +63,7 @@ _UI_siglongjmp_cont: // non-function label for siglongjmp.c
mov r8 = loc2
br.ret.sptk.many rp
.endp siglongjmp_continuation
+#ifdef __linux__
+ /* We do not need executable stack. */
+ .section .note.GNU-stack,"",@progbits
+#endif
diff --git a/src/ia64/sigsetjmp.S b/src/ia64/sigsetjmp.S
index 13b2bde6..02f7af4b 100644
--- a/src/ia64/sigsetjmp.S
+++ b/src/ia64/sigsetjmp.S
@@ -63,3 +63,7 @@ __sigsetjmp:
br.ret.sptk.many rp
.endp __sigsetjmp
+#ifdef __linux__
+ /* We do not need executable stack. */
+ .section .note.GNU-stack,"",@progbits
+#endif
diff --git a/src/ppc/longjmp.S b/src/ppc/longjmp.S
index 36bc1af0..d363aef2 100644
--- a/src/ppc/longjmp.S
+++ b/src/ppc/longjmp.S
@@ -29,3 +29,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
.type _UI_longjmp_cont, @function
_UI_longjmp_cont:
.size _UI_longjmp_cont, .-_UI_longjmp_cont
+
+#ifdef __linux__
+ /* We do not need executable stack. */
+ .section .note.GNU-stack,"",@progbits
+#endif
diff --git a/src/ppc/siglongjmp.S b/src/ppc/siglongjmp.S
index 86726968..64be36ce 100644
--- a/src/ppc/siglongjmp.S
+++ b/src/ppc/siglongjmp.S
@@ -24,3 +24,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
.globl _UI_siglongjmp_cont
_UI_siglongjmp_cont:
+
+#ifdef __linux__
+ /* We do not need executable stack. */
+ .section .note.GNU-stack,"",@progbits
+#endif
diff --git a/src/ppc32/setcontext.S b/src/ppc32/setcontext.S
index d164d8db..b54378a9 100644
--- a/src/ppc32/setcontext.S
+++ b/src/ppc32/setcontext.S
@@ -2,3 +2,8 @@
_UI_setcontext:
retq
+
+#ifdef __linux__
+ /* We do not need executable stack. */
+ .section .note.GNU-stack,"",@progbits
+#endif
diff --git a/src/ppc64/setcontext.S b/src/ppc64/setcontext.S
index d164d8db..b54378a9 100644
--- a/src/ppc64/setcontext.S
+++ b/src/ppc64/setcontext.S
@@ -2,3 +2,8 @@
_UI_setcontext:
retq
+
+#ifdef __linux__
+ /* We do not need executable stack. */
+ .section .note.GNU-stack,"",@progbits
+#endif
diff --git a/src/x86/longjmp.S b/src/x86/longjmp.S
index ce8d4b2c..a89139de 100644
--- a/src/x86/longjmp.S
+++ b/src/x86/longjmp.S
@@ -35,3 +35,7 @@ _UI_longjmp_cont:
ret
.cfi_endproc
.size _UI_siglongjmp_cont, .-_UI_longjmp_cont
+#ifdef __linux__
+ /* We do not need executable stack. */
+ .section .note.GNU-stack,"",@progbits
+#endif
diff --git a/src/x86/siglongjmp.S b/src/x86/siglongjmp.S
index 51bbb505..5aa1784e 100644
--- a/src/x86/siglongjmp.S
+++ b/src/x86/siglongjmp.S
@@ -66,3 +66,7 @@ _UI_siglongjmp_cont:
jmp *%edx
.cfi_endproc
.size _UI_siglongjmp_cont, .-_UI_siglongjmp_cont
+#ifdef __linux__
+ /* We do not need executable stack. */
+ .section .note.GNU-stack,"",@progbits
+#endif
diff --git a/src/x86_64/longjmp.S b/src/x86_64/longjmp.S
index 192b8bc3..bda9d066 100644
--- a/src/x86_64/longjmp.S
+++ b/src/x86_64/longjmp.S
@@ -31,3 +31,7 @@ _UI_longjmp_cont:
mov %rdx, %rax /* set up return-value */
retq
.size _UI_longjmp_cont, .-_UI_longjmp_cont
+#ifdef __linux__
+ /* We do not need executable stack. */
+ .section .note.GNU-stack,"",@progbits
+#endif
diff --git a/src/x86_64/setcontext.S b/src/x86_64/setcontext.S
index 894b967b..9eeb1b84 100644
--- a/src/x86_64/setcontext.S
+++ b/src/x86_64/setcontext.S
@@ -57,3 +57,7 @@ _x86_64_setcontext:
mov REG_OFFSET_RDI(%rdi),%rdi
retq
+#ifdef __linux__
+ /* We do not need executable stack. */
+ .section .note.GNU-stack,"",@progbits
+#endif
diff --git a/src/x86_64/siglongjmp.S b/src/x86_64/siglongjmp.S
index 98469328..8ca7968d 100644
--- a/src/x86_64/siglongjmp.S
+++ b/src/x86_64/siglongjmp.S
@@ -27,3 +27,7 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
_UI_siglongjmp_cont:
retq
+#ifdef __linux__
+ /* We do not need executable stack. */
+ .section .note.GNU-stack,"",@progbits
+#endif
diff --git a/tests/flush-cache.S b/tests/flush-cache.S
index 8243f82d..d996492f 100644
--- a/tests/flush-cache.S
+++ b/tests/flush-cache.S
@@ -69,3 +69,8 @@ flush_cache:
#else
# error Need flush_cache code for this architecture.
#endif
+
+#ifdef __linux__
+ /* We do not need executable stack. */
+ .section .note.GNU-stack,"",@progbits
+#endif
diff --git a/tests/ia64-dyn-asm.S b/tests/ia64-dyn-asm.S
index bc69852e..79582e9e 100644
--- a/tests/ia64-dyn-asm.S
+++ b/tests/ia64-dyn-asm.S
@@ -95,3 +95,8 @@ func_vframe:
}
func_vframe_end:
.endp func_vframe
+
+#ifdef __linux__
+ /* We do not need executable stack. */
+ .section .note.GNU-stack,"",@progbits
+#endif
diff --git a/tests/ia64-test-nat-asm.S b/tests/ia64-test-nat-asm.S
index 8482c35a..eea5ac27 100644
--- a/tests/ia64-test-nat-asm.S
+++ b/tests/ia64-test-nat-asm.S
@@ -501,3 +501,8 @@ save_pr:
br.ret.sptk.many rp
.endp save_pr
+
+#ifdef __linux__
+ /* We do not need executable stack. */
+ .section .note.GNU-stack,"",@progbits
+#endif
diff --git a/tests/ia64-test-rbs-asm.S b/tests/ia64-test-rbs-asm.S
index dc532d90..9a6d33fb 100644
--- a/tests/ia64-test-rbs-asm.S
+++ b/tests/ia64-test-rbs-asm.S
@@ -268,3 +268,8 @@ resumption_point_label:
;;
br.cond.sptk.many b6
.endp resumption_point
+
+#ifdef __linux__
+ /* We do not need executable stack. */
+ .section .note.GNU-stack,"",@progbits
+#endif
diff --git a/tests/ia64-test-readonly-asm.S b/tests/ia64-test-readonly-asm.S
index 94a4dd74..acd3ada2 100644
--- a/tests/ia64-test-readonly-asm.S
+++ b/tests/ia64-test-readonly-asm.S
@@ -48,3 +48,8 @@ test_func:
br.ret.sptk.many rp
.endp test_func
+
+#ifdef __linux__
+ /* We do not need executable stack. */
+ .section .note.GNU-stack,"",@progbits
+#endif
diff --git a/tests/ia64-test-stack-asm.S b/tests/ia64-test-stack-asm.S
index 0194774c..0aea33a4 100644
--- a/tests/ia64-test-stack-asm.S
+++ b/tests/ia64-test-stack-asm.S
@@ -176,3 +176,8 @@ touch_all:
mov ar.pfs = loc1
br.ret.sptk.many rp
.endp touch_all
+
+#ifdef __linux__
+ /* We do not need executable stack. */
+ .section .note.GNU-stack,"",@progbits
+#endif