x86: Add .note.GNU-stack section only for Linux

Message ID 20220509145150.726519-1-hjl.tools@gmail.com
State Committed
Commit 71eae0fd3dd7a5f30067ea26a06a8774355fd5cc
Headers
Series x86: Add .note.GNU-stack section only for Linux |

Commit Message

H.J. Lu May 9, 2022, 2:51 p.m. UTC
  Add .note.GNU-stack section only for Linux since it may not be supported
on non-Linux OSes.  __ELF__ isn't checked since these tests can only run
on Linux/x86 ELF systems.

	PR target/105472
	* gcc.target/i386/iamcu/asm-support.S: Add .note.GNU-stack section
	only for Linux.
	* gcc.target/x86_64/abi/asm-support.S: Likewise.
	* gcc.target/x86_64/abi/avx/asm-support.S: Likewise.
	* gcc.target/x86_64/abi/avx512f/asm-support.S: Likewise.
	* gcc.target/x86_64/abi/avx512fp16/asm-support.S: Likewise.
	* gcc.target/x86_64/abi/avx512fp16/m256h/asm-support.S: Likewise.
	* gcc.target/x86_64/abi/avx512fp16/m512h/asm-support.S: Likewise.
	* gcc.target/x86_64/abi/ms-sysv/do-test.S: Likewise.
---
 gcc/testsuite/gcc.target/i386/iamcu/asm-support.S               | 2 ++
 gcc/testsuite/gcc.target/x86_64/abi/asm-support.S               | 2 ++
 gcc/testsuite/gcc.target/x86_64/abi/avx/asm-support.S           | 2 ++
 gcc/testsuite/gcc.target/x86_64/abi/avx512f/asm-support.S       | 2 ++
 gcc/testsuite/gcc.target/x86_64/abi/avx512fp16/asm-support.S    | 2 ++
 .../gcc.target/x86_64/abi/avx512fp16/m256h/asm-support.S        | 2 ++
 .../gcc.target/x86_64/abi/avx512fp16/m512h/asm-support.S        | 2 ++
 gcc/testsuite/gcc.target/x86_64/abi/ms-sysv/do-test.S           | 2 ++
 8 files changed, 16 insertions(+)
  

Comments

H.J. Lu May 10, 2022, 4:04 p.m. UTC | #1
On Mon, May 9, 2022 at 7:51 AM H.J. Lu <hjl.tools@gmail.com> wrote:
>
> Add .note.GNU-stack section only for Linux since it may not be supported
> on non-Linux OSes.  __ELF__ isn't checked since these tests can only run
> on Linux/x86 ELF systems.
>
>         PR target/105472
>         * gcc.target/i386/iamcu/asm-support.S: Add .note.GNU-stack section
>         only for Linux.
>         * gcc.target/x86_64/abi/asm-support.S: Likewise.
>         * gcc.target/x86_64/abi/avx/asm-support.S: Likewise.
>         * gcc.target/x86_64/abi/avx512f/asm-support.S: Likewise.
>         * gcc.target/x86_64/abi/avx512fp16/asm-support.S: Likewise.
>         * gcc.target/x86_64/abi/avx512fp16/m256h/asm-support.S: Likewise.
>         * gcc.target/x86_64/abi/avx512fp16/m512h/asm-support.S: Likewise.
>         * gcc.target/x86_64/abi/ms-sysv/do-test.S: Likewise.
> ---
>  gcc/testsuite/gcc.target/i386/iamcu/asm-support.S               | 2 ++
>  gcc/testsuite/gcc.target/x86_64/abi/asm-support.S               | 2 ++
>  gcc/testsuite/gcc.target/x86_64/abi/avx/asm-support.S           | 2 ++
>  gcc/testsuite/gcc.target/x86_64/abi/avx512f/asm-support.S       | 2 ++
>  gcc/testsuite/gcc.target/x86_64/abi/avx512fp16/asm-support.S    | 2 ++
>  .../gcc.target/x86_64/abi/avx512fp16/m256h/asm-support.S        | 2 ++
>  .../gcc.target/x86_64/abi/avx512fp16/m512h/asm-support.S        | 2 ++
>  gcc/testsuite/gcc.target/x86_64/abi/ms-sysv/do-test.S           | 2 ++
>  8 files changed, 16 insertions(+)
>
> diff --git a/gcc/testsuite/gcc.target/i386/iamcu/asm-support.S b/gcc/testsuite/gcc.target/i386/iamcu/asm-support.S
> index db08f52a34f..9d6be88e7d5 100644
> --- a/gcc/testsuite/gcc.target/i386/iamcu/asm-support.S
> +++ b/gcc/testsuite/gcc.target/i386/iamcu/asm-support.S
> @@ -300,4 +300,6 @@ iamcu_noprintf:
>         .align 4
>  .LCiamcu_noprintf1:
>         .long   1132527616
> +#ifdef __linux__
>         .section        .note.GNU-stack,"",@progbits
> +#endif
> diff --git a/gcc/testsuite/gcc.target/x86_64/abi/asm-support.S b/gcc/testsuite/gcc.target/x86_64/abi/asm-support.S
> index 2f8d3a09c6b..b2ad67aef87 100644
> --- a/gcc/testsuite/gcc.target/x86_64/abi/asm-support.S
> +++ b/gcc/testsuite/gcc.target/x86_64/abi/asm-support.S
> @@ -82,4 +82,6 @@ snapshot_ret:
>         .comm   xmm_regs,256,32
>         .comm   x87_regs,128,32
>         .comm   volatile_var,8,8
> +#ifdef __linux__
>         .section        .note.GNU-stack,"",@progbits
> +#endif
> diff --git a/gcc/testsuite/gcc.target/x86_64/abi/avx/asm-support.S b/gcc/testsuite/gcc.target/x86_64/abi/avx/asm-support.S
> index 77b3480ac32..24c8b3c9023 100644
> --- a/gcc/testsuite/gcc.target/x86_64/abi/avx/asm-support.S
> +++ b/gcc/testsuite/gcc.target/x86_64/abi/avx/asm-support.S
> @@ -79,4 +79,6 @@ snapshot_ret:
>         .comm   ymm_regs,512,32
>         .comm   x87_regs,128,32
>         .comm   volatile_var,8,8
> +#ifdef __linux__
>         .section        .note.GNU-stack,"",@progbits
> +#endif
> diff --git a/gcc/testsuite/gcc.target/x86_64/abi/avx512f/asm-support.S b/gcc/testsuite/gcc.target/x86_64/abi/avx512f/asm-support.S
> index 2e3306c44cb..86d54d11c58 100644
> --- a/gcc/testsuite/gcc.target/x86_64/abi/avx512f/asm-support.S
> +++ b/gcc/testsuite/gcc.target/x86_64/abi/avx512f/asm-support.S
> @@ -95,4 +95,6 @@ snapshot_ret:
>         .comm   zmm_regs,2048,64
>         .comm   x87_regs,128,32
>         .comm   volatile_var,8,8
> +#ifdef __linux__
>         .section        .note.GNU-stack,"",@progbits
> +#endif
> diff --git a/gcc/testsuite/gcc.target/x86_64/abi/avx512fp16/asm-support.S b/gcc/testsuite/gcc.target/x86_64/abi/avx512fp16/asm-support.S
> index 0793acf048b..a8165d86317 100644
> --- a/gcc/testsuite/gcc.target/x86_64/abi/avx512fp16/asm-support.S
> +++ b/gcc/testsuite/gcc.target/x86_64/abi/avx512fp16/asm-support.S
> @@ -79,4 +79,6 @@ snapshot_ret:
>         .comm   xmm_regs,256,32
>         .comm   x87_regs,128,32
>         .comm   volatile_var,8,8
> +#ifdef __linux__
>         .section        .note.GNU-stack,"",@progbits
> +#endif
> diff --git a/gcc/testsuite/gcc.target/x86_64/abi/avx512fp16/m256h/asm-support.S b/gcc/testsuite/gcc.target/x86_64/abi/avx512fp16/m256h/asm-support.S
> index 77b3480ac32..24c8b3c9023 100644
> --- a/gcc/testsuite/gcc.target/x86_64/abi/avx512fp16/m256h/asm-support.S
> +++ b/gcc/testsuite/gcc.target/x86_64/abi/avx512fp16/m256h/asm-support.S
> @@ -79,4 +79,6 @@ snapshot_ret:
>         .comm   ymm_regs,512,32
>         .comm   x87_regs,128,32
>         .comm   volatile_var,8,8
> +#ifdef __linux__
>         .section        .note.GNU-stack,"",@progbits
> +#endif
> diff --git a/gcc/testsuite/gcc.target/x86_64/abi/avx512fp16/m512h/asm-support.S b/gcc/testsuite/gcc.target/x86_64/abi/avx512fp16/m512h/asm-support.S
> index 2e3306c44cb..86d54d11c58 100644
> --- a/gcc/testsuite/gcc.target/x86_64/abi/avx512fp16/m512h/asm-support.S
> +++ b/gcc/testsuite/gcc.target/x86_64/abi/avx512fp16/m512h/asm-support.S
> @@ -95,4 +95,6 @@ snapshot_ret:
>         .comm   zmm_regs,2048,64
>         .comm   x87_regs,128,32
>         .comm   volatile_var,8,8
> +#ifdef __linux__
>         .section        .note.GNU-stack,"",@progbits
> +#endif
> diff --git a/gcc/testsuite/gcc.target/x86_64/abi/ms-sysv/do-test.S b/gcc/testsuite/gcc.target/x86_64/abi/ms-sysv/do-test.S
> index f5dff4c10ab..37338b23fec 100644
> --- a/gcc/testsuite/gcc.target/x86_64/abi/ms-sysv/do-test.S
> +++ b/gcc/testsuite/gcc.target/x86_64/abi/ms-sysv/do-test.S
> @@ -30,7 +30,9 @@ see the files COPYING3 and COPYING.RUNTIME respectively.  If not, see
>  #ifdef __ELF__
>  # define FN_TYPE(fn) .type fn,@function
>  # define FN_SIZE(fn) .size fn,.-fn
> +# ifdef __linux__
>         .section        .note.GNU-stack,"",@progbits
> +# endif
>  #else
>  # define FN_TYPE(fn)
>  # define FN_SIZE(fn)
> --
> 2.35.1
>

I am checking it in and backporting it to release branches.
  

Patch

diff --git a/gcc/testsuite/gcc.target/i386/iamcu/asm-support.S b/gcc/testsuite/gcc.target/i386/iamcu/asm-support.S
index db08f52a34f..9d6be88e7d5 100644
--- a/gcc/testsuite/gcc.target/i386/iamcu/asm-support.S
+++ b/gcc/testsuite/gcc.target/i386/iamcu/asm-support.S
@@ -300,4 +300,6 @@  iamcu_noprintf:
 	.align 4
 .LCiamcu_noprintf1:
 	.long	1132527616
+#ifdef __linux__
 	.section	.note.GNU-stack,"",@progbits
+#endif
diff --git a/gcc/testsuite/gcc.target/x86_64/abi/asm-support.S b/gcc/testsuite/gcc.target/x86_64/abi/asm-support.S
index 2f8d3a09c6b..b2ad67aef87 100644
--- a/gcc/testsuite/gcc.target/x86_64/abi/asm-support.S
+++ b/gcc/testsuite/gcc.target/x86_64/abi/asm-support.S
@@ -82,4 +82,6 @@  snapshot_ret:
 	.comm	xmm_regs,256,32
 	.comm	x87_regs,128,32
 	.comm   volatile_var,8,8
+#ifdef __linux__
 	.section	.note.GNU-stack,"",@progbits
+#endif
diff --git a/gcc/testsuite/gcc.target/x86_64/abi/avx/asm-support.S b/gcc/testsuite/gcc.target/x86_64/abi/avx/asm-support.S
index 77b3480ac32..24c8b3c9023 100644
--- a/gcc/testsuite/gcc.target/x86_64/abi/avx/asm-support.S
+++ b/gcc/testsuite/gcc.target/x86_64/abi/avx/asm-support.S
@@ -79,4 +79,6 @@  snapshot_ret:
 	.comm	ymm_regs,512,32
 	.comm	x87_regs,128,32
 	.comm   volatile_var,8,8
+#ifdef __linux__
 	.section	.note.GNU-stack,"",@progbits
+#endif
diff --git a/gcc/testsuite/gcc.target/x86_64/abi/avx512f/asm-support.S b/gcc/testsuite/gcc.target/x86_64/abi/avx512f/asm-support.S
index 2e3306c44cb..86d54d11c58 100644
--- a/gcc/testsuite/gcc.target/x86_64/abi/avx512f/asm-support.S
+++ b/gcc/testsuite/gcc.target/x86_64/abi/avx512f/asm-support.S
@@ -95,4 +95,6 @@  snapshot_ret:
 	.comm	zmm_regs,2048,64
 	.comm	x87_regs,128,32
 	.comm   volatile_var,8,8
+#ifdef __linux__
 	.section	.note.GNU-stack,"",@progbits
+#endif
diff --git a/gcc/testsuite/gcc.target/x86_64/abi/avx512fp16/asm-support.S b/gcc/testsuite/gcc.target/x86_64/abi/avx512fp16/asm-support.S
index 0793acf048b..a8165d86317 100644
--- a/gcc/testsuite/gcc.target/x86_64/abi/avx512fp16/asm-support.S
+++ b/gcc/testsuite/gcc.target/x86_64/abi/avx512fp16/asm-support.S
@@ -79,4 +79,6 @@  snapshot_ret:
 	.comm	xmm_regs,256,32
 	.comm	x87_regs,128,32
 	.comm   volatile_var,8,8
+#ifdef __linux__
 	.section	.note.GNU-stack,"",@progbits
+#endif
diff --git a/gcc/testsuite/gcc.target/x86_64/abi/avx512fp16/m256h/asm-support.S b/gcc/testsuite/gcc.target/x86_64/abi/avx512fp16/m256h/asm-support.S
index 77b3480ac32..24c8b3c9023 100644
--- a/gcc/testsuite/gcc.target/x86_64/abi/avx512fp16/m256h/asm-support.S
+++ b/gcc/testsuite/gcc.target/x86_64/abi/avx512fp16/m256h/asm-support.S
@@ -79,4 +79,6 @@  snapshot_ret:
 	.comm	ymm_regs,512,32
 	.comm	x87_regs,128,32
 	.comm   volatile_var,8,8
+#ifdef __linux__
 	.section	.note.GNU-stack,"",@progbits
+#endif
diff --git a/gcc/testsuite/gcc.target/x86_64/abi/avx512fp16/m512h/asm-support.S b/gcc/testsuite/gcc.target/x86_64/abi/avx512fp16/m512h/asm-support.S
index 2e3306c44cb..86d54d11c58 100644
--- a/gcc/testsuite/gcc.target/x86_64/abi/avx512fp16/m512h/asm-support.S
+++ b/gcc/testsuite/gcc.target/x86_64/abi/avx512fp16/m512h/asm-support.S
@@ -95,4 +95,6 @@  snapshot_ret:
 	.comm	zmm_regs,2048,64
 	.comm	x87_regs,128,32
 	.comm   volatile_var,8,8
+#ifdef __linux__
 	.section	.note.GNU-stack,"",@progbits
+#endif
diff --git a/gcc/testsuite/gcc.target/x86_64/abi/ms-sysv/do-test.S b/gcc/testsuite/gcc.target/x86_64/abi/ms-sysv/do-test.S
index f5dff4c10ab..37338b23fec 100644
--- a/gcc/testsuite/gcc.target/x86_64/abi/ms-sysv/do-test.S
+++ b/gcc/testsuite/gcc.target/x86_64/abi/ms-sysv/do-test.S
@@ -30,7 +30,9 @@  see the files COPYING3 and COPYING.RUNTIME respectively.  If not, see
 #ifdef __ELF__
 # define FN_TYPE(fn) .type fn,@function
 # define FN_SIZE(fn) .size fn,.-fn
+# ifdef __linux__
 	.section	.note.GNU-stack,"",@progbits
+# endif
 #else
 # define FN_TYPE(fn)
 # define FN_SIZE(fn)