Yury Khrustalev <yury.khrusta...@arm.com> writes:
> From: Szabolcs Nagy <szabolcs.n...@arm.com>
>
> libgcc/ChangeLog:
>
>       * config/aarch64/aarch64-asm.h (FEATURE_1_GCS): Define.
>       (GCS_FLAG): Define if GCS is enabled.
>       (GNU_PROPERTY): Add GCS_FLAG.

This might be a daft question, but don't we also want to use the
new build attributes, where supported?  Or is that handled separately?

Same question for the other libraries.

Thanks,
Richard

> ---
>  libgcc/config/aarch64/aarch64-asm.h | 16 ++++++++++++++--
>  1 file changed, 14 insertions(+), 2 deletions(-)
>
> diff --git a/libgcc/config/aarch64/aarch64-asm.h 
> b/libgcc/config/aarch64/aarch64-asm.h
> index d8ab91d52f1..f7bd225f7a4 100644
> --- a/libgcc/config/aarch64/aarch64-asm.h
> +++ b/libgcc/config/aarch64/aarch64-asm.h
> @@ -22,6 +22,9 @@
>     see the files COPYING3 and COPYING.RUNTIME respectively.  If not, see
>     <http://www.gnu.org/licenses/>.  */
>  
> +#ifndef AARCH64_ASM_H
> +#define AARCH64_ASM_H
> +
>  #include "auto-target.h"
>  
>  #define L(label) .L ## label
> @@ -38,6 +41,7 @@
>  #define FEATURE_1_AND 0xc0000000
>  #define FEATURE_1_BTI 1
>  #define FEATURE_1_PAC 2
> +#define FEATURE_1_GCS 4
>  
>  /* Supported features based on the code generation options.  */
>  #if defined(__ARM_FEATURE_BTI_DEFAULT)
> @@ -58,6 +62,12 @@
>  # define AUTIASP
>  #endif
>  
> +#if __ARM_FEATURE_GCS_DEFAULT
> +# define GCS_FLAG FEATURE_1_GCS
> +#else
> +# define GCS_FLAG 0
> +#endif
> +
>  #ifdef __ELF__
>  #define HIDDEN(name) .hidden name
>  #define SYMBOL_SIZE(name) .size name, .-name
> @@ -88,8 +98,8 @@
>  .previous
>  
>  /* Add GNU property note if built with branch protection.  */
> -# if (BTI_FLAG|PAC_FLAG) != 0
> -GNU_PROPERTY (FEATURE_1_AND, BTI_FLAG|PAC_FLAG)
> +# if (BTI_FLAG|PAC_FLAG|GCS_FLAG) != 0
> +GNU_PROPERTY (FEATURE_1_AND, BTI_FLAG|PAC_FLAG|GCS_FLAG)
>  # endif
>  #endif
>  
> @@ -106,3 +116,5 @@ GNU_PROPERTY (FEATURE_1_AND, BTI_FLAG|PAC_FLAG)
>  #define END(name) \
>    .cfi_endproc;              \
>    SYMBOL_SIZE(name)
> +
> +#endif

Reply via email to