diff options
author | Szabolcs Nagy <szabolcs.nagy@arm.com> | 2016-11-11 10:20:30 +0000 |
---|---|---|
committer | Szabolcs Nagy <szabolcs.nagy@arm.com> | 2016-11-11 10:20:30 +0000 |
commit | 1924ff7567abf9e1341ae135fb5097bc5f7b76f4 (patch) | |
tree | 8ddc920b6b4e00ba102d39391fcdff30e6abef6a /include | |
parent | fa09f4ea584e1bc33036e9ef82142db92b31da7c (diff) | |
download | gdb-1924ff7567abf9e1341ae135fb5097bc5f7b76f4.zip gdb-1924ff7567abf9e1341ae135fb5097bc5f7b76f4.tar.gz gdb-1924ff7567abf9e1341ae135fb5097bc5f7b76f4.tar.bz2 |
[AArch64] Add ARMv8.3 command line option and feature flag
ARMv8.3 can be selected with -march=armv8.3-a command line option.
An overview of the ARMv8.3 architecture extension is at
https://community.arm.com/groups/processors/blog/2016/10/27/armv8-a-architecture-2016-additions
gas/
2016-11-11 Szabolcs Nagy <szabolcs.nagy@arm.com>
* config/tc-aarch64.c (aarch64_archs): Add "armv8.3-a".
* doc/c-aarch64.texi (-march): Likewise.
include/
2016-11-11 Szabolcs Nagy <szabolcs.nagy@arm.com>
* opcode/aarch64.h (AARCH64_FEATURE_V8_3): Define.
(AARCH64_ARCH_V8_3): Define.
(AARCH64_ARCH_V8_1, AARCH64_ARCH_V8_2): Simplify.
Diffstat (limited to 'include')
-rw-r--r-- | include/ChangeLog | 6 | ||||
-rw-r--r-- | include/opcode/aarch64.h | 21 |
2 files changed, 13 insertions, 14 deletions
diff --git a/include/ChangeLog b/include/ChangeLog index 0a3b51e..5aa28f2 100644 --- a/include/ChangeLog +++ b/include/ChangeLog @@ -1,3 +1,9 @@ +2016-11-11 Szabolcs Nagy <szabolcs.nagy@arm.com> + + * opcode/aarch64.h (AARCH64_FEATURE_V8_3): Define. + (AARCH64_ARCH_V8_3): Define. + (AARCH64_ARCH_V8_1, AARCH64_ARCH_V8_2): Simplify. + 2016-11-04 Thomas Preud'homme <thomas.preudhomme@arm.com> * opcode/arm.h (ARM_AEXT_V8M_MAIN_DSP): Define. diff --git a/include/opcode/aarch64.h b/include/opcode/aarch64.h index defda78..6cda660 100644 --- a/include/opcode/aarch64.h +++ b/include/opcode/aarch64.h @@ -39,6 +39,7 @@ typedef uint32_t aarch64_insn; /* The following bitmasks control CPU features. */ #define AARCH64_FEATURE_V8 0x00000001 /* All processors. */ #define AARCH64_FEATURE_V8_2 0x00000020 /* ARMv8.2 processors. */ +#define AARCH64_FEATURE_V8_3 0x00000040 /* ARMv8.3 processors. */ #define AARCH64_FEATURE_CRYPTO 0x00010000 /* Crypto instructions. */ #define AARCH64_FEATURE_FP 0x00020000 /* FP instructions. */ #define AARCH64_FEATURE_SIMD 0x00040000 /* SIMD instructions. */ @@ -57,27 +58,19 @@ typedef uint32_t aarch64_insn; #define AARCH64_ARCH_V8 AARCH64_FEATURE (AARCH64_FEATURE_V8, \ AARCH64_FEATURE_FP \ | AARCH64_FEATURE_SIMD) -#define AARCH64_ARCH_V8_1 AARCH64_FEATURE (AARCH64_FEATURE_V8, \ - AARCH64_FEATURE_FP \ - | AARCH64_FEATURE_SIMD \ - | AARCH64_FEATURE_CRC \ +#define AARCH64_ARCH_V8_1 AARCH64_FEATURE (AARCH64_ARCH_V8, \ + AARCH64_FEATURE_CRC \ | AARCH64_FEATURE_V8_1 \ | AARCH64_FEATURE_LSE \ | AARCH64_FEATURE_PAN \ | AARCH64_FEATURE_LOR \ | AARCH64_FEATURE_RDMA) -#define AARCH64_ARCH_V8_2 AARCH64_FEATURE (AARCH64_FEATURE_V8, \ +#define AARCH64_ARCH_V8_2 AARCH64_FEATURE (AARCH64_ARCH_V8_1, \ AARCH64_FEATURE_V8_2 \ | AARCH64_FEATURE_F16 \ - | AARCH64_FEATURE_RAS \ - | AARCH64_FEATURE_FP \ - | AARCH64_FEATURE_SIMD \ - | AARCH64_FEATURE_CRC \ - | AARCH64_FEATURE_V8_1 \ - | AARCH64_FEATURE_LSE \ - | AARCH64_FEATURE_PAN \ - | AARCH64_FEATURE_LOR \ - | AARCH64_FEATURE_RDMA) + | AARCH64_FEATURE_RAS) +#define AARCH64_ARCH_V8_3 AARCH64_FEATURE (AARCH64_ARCH_V8_2, \ + AARCH64_FEATURE_V8_3) #define AARCH64_ARCH_NONE AARCH64_FEATURE (0, 0) #define AARCH64_ANY AARCH64_FEATURE (-1, 0) /* Any basic core. */ |