x86: Add missing .note.GNU-stack to assembly source
authorH.J. Lu <hjl.tools@gmail.com>
Fri, 29 Apr 2022 17:26:24 +0000 (10:26 -0700)
committerH.J. Lu <hjl.tools@gmail.com>
Mon, 2 May 2022 18:38:23 +0000 (11:38 -0700)
Add .note.GNU-stack assembly source to avoid linker warning:

ld: warning: /tmp/ccPZSZ7Z.o: missing .note.GNU-stack section implies executable stack
ld: NOTE: This behaviour is deprecated and will be removed in a future version of the linker
FAIL: gcc.target/i386/iamcu/test_3_element_struct_and_unions.c compilation,  -O0

PR testsuite/105433
* gcc.target/i386/iamcu/asm-support.S: Add .note.GNU-stack.
* 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
gcc/testsuite/gcc.target/x86_64/abi/asm-support.S
gcc/testsuite/gcc.target/x86_64/abi/avx/asm-support.S
gcc/testsuite/gcc.target/x86_64/abi/avx512f/asm-support.S
gcc/testsuite/gcc.target/x86_64/abi/avx512fp16/asm-support.S
gcc/testsuite/gcc.target/x86_64/abi/avx512fp16/m256h/asm-support.S
gcc/testsuite/gcc.target/x86_64/abi/avx512fp16/m512h/asm-support.S
gcc/testsuite/gcc.target/x86_64/abi/ms-sysv/do-test.S

index b4a4a14..db08f52 100644 (file)
@@ -300,3 +300,4 @@ iamcu_noprintf:
        .align 4
 .LCiamcu_noprintf1:
        .long   1132527616
+       .section        .note.GNU-stack,"",@progbits
index 7a8ed03..2f8d3a0 100644 (file)
@@ -82,3 +82,4 @@ snapshot_ret:
        .comm   xmm_regs,256,32
        .comm   x87_regs,128,32
        .comm   volatile_var,8,8
+       .section        .note.GNU-stack,"",@progbits
index 73a5919..77b3480 100644 (file)
@@ -79,3 +79,4 @@ snapshot_ret:
        .comm   ymm_regs,512,32
        .comm   x87_regs,128,32
        .comm   volatile_var,8,8
+       .section        .note.GNU-stack,"",@progbits
index 0ef8287..2e3306c 100644 (file)
@@ -95,3 +95,4 @@ snapshot_ret:
        .comm   zmm_regs,2048,64
        .comm   x87_regs,128,32
        .comm   volatile_var,8,8
+       .section        .note.GNU-stack,"",@progbits
index 7849acd..0793acf 100644 (file)
@@ -79,3 +79,4 @@ snapshot_ret:
        .comm   xmm_regs,256,32
        .comm   x87_regs,128,32
        .comm   volatile_var,8,8
+       .section        .note.GNU-stack,"",@progbits
index 73a5919..77b3480 100644 (file)
@@ -79,3 +79,4 @@ snapshot_ret:
        .comm   ymm_regs,512,32
        .comm   x87_regs,128,32
        .comm   volatile_var,8,8
+       .section        .note.GNU-stack,"",@progbits
index 0ef8287..2e3306c 100644 (file)
@@ -95,3 +95,4 @@ snapshot_ret:
        .comm   zmm_regs,2048,64
        .comm   x87_regs,128,32
        .comm   volatile_var,8,8
+       .section        .note.GNU-stack,"",@progbits
index 7b891a1..f5dff4c 100644 (file)
@@ -30,6 +30,7 @@ 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
+       .section        .note.GNU-stack,"",@progbits
 #else
 # define FN_TYPE(fn)
 # define FN_SIZE(fn)