From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 1944) id 88B8F385EC49; Wed, 14 Feb 2024 15:36:07 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 88B8F385EC49 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1707924967; bh=HrkL5a+GmXAAjHofvaaI6DTQp3x6httsd3bYa27GO88=; h=From:To:Subject:Date:From; b=xtKwXSKVGxCZ4DmekX/kI3IPA/2RbqEbNTcG7E8ZyWj6GqTRrN4kTvv4ou3REbDx5 kVYaZg6WtQHsO5Jr4/mWzprcK3NA1DU5lmkZGwXEG1+7SmtBN1er8d94BKIg4YS0bK GOxq+NRfmE7KEX/vWt3G8V+eCfLRi5AgXVqR+dZc= Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: Szabolcs Nagy To: gcc-cvs@gcc.gnu.org Subject: [gcc(refs/vendors/ARM/heads/gcs-13)] aarch64: libgcc: Cleanup ELF marking in asm X-Act-Checkin: gcc X-Git-Author: Szabolcs Nagy X-Git-Refname: refs/vendors/ARM/heads/gcs-13 X-Git-Oldrev: e72cc96a2efe69e91875b076ae174aac8289310c X-Git-Newrev: 971d98f89f55c2a49abb8701bf61c51e216f2b3d Message-Id: <20240214153607.88B8F385EC49@sourceware.org> Date: Wed, 14 Feb 2024 15:36:07 +0000 (GMT) List-Id: https://gcc.gnu.org/g:971d98f89f55c2a49abb8701bf61c51e216f2b3d commit 971d98f89f55c2a49abb8701bf61c51e216f2b3d Author: Szabolcs Nagy Date: Mon Jan 29 09:30:50 2024 +0000 aarch64: libgcc: Cleanup ELF marking in asm Use aarch64-asm.h in asm code consistently, this was started in commit c608ada288ced0268bbbbc1fd4136f56c34b24d4 Author: Zac Walker CommitDate: 2024-01-23 15:32:30 +0000 Ifdef `.hidden`, `.type`, and `.size` pseudo-ops for `aarch64-w64-mingw32` target But that commit failed to remove some existing markings from asm files, which means some objects got double marked with gnu property notes. libgcc/ChangeLog: * config/aarch64/crti.S: Remove stack marking. * config/aarch64/crtn.S: Remove stack marking, include aarch64-asm.h * config/aarch64/lse.S: Remove stack and GNU property markings. Diff: --- libgcc/config/aarch64/crti.S | 6 ------ libgcc/config/aarch64/crtn.S | 6 +----- libgcc/config/aarch64/lse.S | 40 ---------------------------------------- 3 files changed, 1 insertion(+), 51 deletions(-) diff --git a/libgcc/config/aarch64/crti.S b/libgcc/config/aarch64/crti.S index f7a9198cabb1..7780a3942f22 100644 --- a/libgcc/config/aarch64/crti.S +++ b/libgcc/config/aarch64/crti.S @@ -23,12 +23,6 @@ #include "aarch64-asm.h" -/* An executable stack is *not* required for these functions. */ -#if defined(__ELF__) && defined(__linux__) -.section .note.GNU-stack,"",%progbits -.previous -#endif - # This file creates a stack frame for the contents of the .fini and # .init sections. Users may put any desired instructions in those # sections. diff --git a/libgcc/config/aarch64/crtn.S b/libgcc/config/aarch64/crtn.S index c59182345207..b2f2894e0593 100644 --- a/libgcc/config/aarch64/crtn.S +++ b/libgcc/config/aarch64/crtn.S @@ -21,11 +21,7 @@ # see the files COPYING3 and COPYING.RUNTIME respectively. If not, see # . -/* An executable stack is *not* required for these functions. */ -#if defined(__ELF__) && defined(__linux__) -.section .note.GNU-stack,"",%progbits -.previous -#endif +#include "aarch64-asm.h" # This file just makes sure that the .fini and .init sections do in # fact return. Users may put any desired instructions in those sections. diff --git a/libgcc/config/aarch64/lse.S b/libgcc/config/aarch64/lse.S index 2114272d1059..d132373c92fb 100644 --- a/libgcc/config/aarch64/lse.S +++ b/libgcc/config/aarch64/lse.S @@ -312,43 +312,3 @@ STARTFN NAME(LDNM) ENDFN NAME(LDNM) #endif - -/* GNU_PROPERTY_AARCH64_* macros from elf.h for use in asm code. */ -#define FEATURE_1_AND 0xc0000000 -#define FEATURE_1_BTI 1 -#define FEATURE_1_PAC 2 - -/* Supported features based on the code generation options. */ -#if defined(__ARM_FEATURE_BTI_DEFAULT) -# define BTI_FLAG FEATURE_1_BTI -#else -# define BTI_FLAG 0 -#endif - -#if __ARM_FEATURE_PAC_DEFAULT & 3 -# define PAC_FLAG FEATURE_1_PAC -#else -# define PAC_FLAG 0 -#endif - -/* Add a NT_GNU_PROPERTY_TYPE_0 note. */ -#define GNU_PROPERTY(type, value) \ - .section .note.gnu.property, "a"; \ - .p2align 3; \ - .word 4; \ - .word 16; \ - .word 5; \ - .asciz "GNU"; \ - .word type; \ - .word 4; \ - .word value; \ - .word 0; - -#if defined(__linux__) || defined(__FreeBSD__) -.section .note.GNU-stack, "", %progbits - -/* Add GNU property note if built with branch protection. */ -# if (BTI_FLAG|PAC_FLAG) != 0 -GNU_PROPERTY (FEATURE_1_AND, BTI_FLAG|PAC_FLAG) -# endif -#endif