aarch64: libgcc: add GCS marking to asm
libgcc/ChangeLog: * config/aarch64/aarch64-asm.h (FEATURE_1_GCS): Define. (GCS_FLAG): Define if GCS is enabled. (GNU_PROPERTY): Add GCS_FLAG.
This commit is contained in:
parent
608da24401
commit
d8374290e5
1 changed files with 14 additions and 2 deletions
|
@ -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
|
||||
|
|
Loading…
Add table
Reference in a new issue