From 0ead818d81c975275238878c81f300dd404e0722 Mon Sep 17 00:00:00 2001 From: David Carlier Date: Thu, 4 Mar 2021 22:12:58 +0000 Subject: [PATCH] Generating note.GNU-stack section for FreeBSD on x86. Not enabling for ELF in general as not all platform support it (e.g. NetBSD, implictly stack never executable). --- coroutine/amd64/Context.S | 2 +- coroutine/x86/Context.S | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/coroutine/amd64/Context.S b/coroutine/amd64/Context.S index 051db1c5e8..d50732adbc 100644 --- a/coroutine/amd64/Context.S +++ b/coroutine/amd64/Context.S @@ -41,6 +41,6 @@ PREFIXED_SYMBOL(SYMBOL_PREFIX,coroutine_transfer): # We pop the return address and jump to it ret -#if defined(__linux__) && defined(__ELF__) +#if (defined(__linux__) || defined(__FreeBSD__)) && defined(__ELF__) .section .note.GNU-stack,"",%progbits #endif diff --git a/coroutine/x86/Context.S b/coroutine/x86/Context.S index 6983f21c3b..f06a417084 100644 --- a/coroutine/x86/Context.S +++ b/coroutine/x86/Context.S @@ -37,6 +37,6 @@ PREFIXED_SYMBOL(SYMBOL_PREFIX,coroutine_transfer): # Jump to the address on the stack ret -#if defined(__linux__) && defined(__ELF__) +#if (defined(__linux__) || defined(__FreeBSD__)) && defined(__ELF__) .section .note.GNU-stack,"",%progbits #endif