diff options
author | Szabolcs Nagy <szabolcs.nagy@arm.com> | 2017-01-04 12:27:10 +0000 |
---|---|---|
committer | Szabolcs Nagy <szabolcs.nagy@arm.com> | 2017-01-04 12:31:08 +0000 |
commit | d74d4880e23263bac3690bcb641af56bd13036e6 (patch) | |
tree | 728a2c19b7ef9f5fc7eda05e30f7a77acd1dd309 /gas | |
parent | 10ab38d930db6159b93082dfe5e41761bdc0d70b (diff) | |
download | gdb-d74d4880e23263bac3690bcb641af56bd13036e6.zip gdb-d74d4880e23263bac3690bcb641af56bd13036e6.tar.gz gdb-d74d4880e23263bac3690bcb641af56bd13036e6.tar.bz2 |
[AArch64] Add separate feature flag for weaker release consistent load insns
The weaker release consistency support of ARMv8.3-A is allowed as an optional
extension for ARMv8.2-A, so separate command line option and feature flag is
added: -march=armv8.2-a+rcpc turns LDAPR, LDAPRB, LDAPRH instructions on.
opcodes/
* aarch64-tbl.h (RCPC, RCPC_INSN): Define.
(aarch64_opcode_table): Use RCPC_INSN.
include/
* opcode/aarch64.h (AARCH64_FEATURE_RCPC): Define.
(AARCH64_ARCH_V8_3): Update.
gas/
* config/tc-aarch64.c (aarch64_features): Add rcpc.
* doc/c-aarch64.texi (AArch64 Extensions): Document rcpc.
* testsuite/gas/aarch64/ldst-exclusive-armv8_3.d: Rename to ...
* testsuite/gas/aarch64/ldst-rcpc.d: This.
* testsuite/gas/aarch64/ldst-exclusive-armv8_3.s: Rename to ...
* testsuite/gas/aarch64/ldst-rcpc.s: This.
* testsuite/gas/aarch64/ldst-rcpc-armv8_2.d: New test.
Diffstat (limited to 'gas')
-rw-r--r-- | gas/ChangeLog | 10 | ||||
-rw-r--r-- | gas/config/tc-aarch64.c | 2 | ||||
-rw-r--r-- | gas/testsuite/gas/aarch64/ldst-rcpc-armv8_2.d | 21 | ||||
-rw-r--r-- | gas/testsuite/gas/aarch64/ldst-rcpc.d (renamed from gas/testsuite/gas/aarch64/ldst-exclusive-armv8_3.d) | 0 | ||||
-rw-r--r-- | gas/testsuite/gas/aarch64/ldst-rcpc.s (renamed from gas/testsuite/gas/aarch64/ldst-exclusive-armv8_3.s) | 0 |
5 files changed, 33 insertions, 0 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog index 1e4eb92..c93a61b 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,13 @@ +2017-01-04 Szabolcs Nagy <szabolcs.nagy@arm.com> + + * config/tc-aarch64.c (aarch64_features): Add rcpc. + * doc/c-aarch64.texi (AArch64 Extensions): Document rcpc. + * testsuite/gas/aarch64/ldst-exclusive-armv8_3.d: Rename to ... + * testsuite/gas/aarch64/ldst-rcpc.d: This. + * testsuite/gas/aarch64/ldst-exclusive-armv8_3.s: Rename to ... + * testsuite/gas/aarch64/ldst-rcpc.s: This. + * testsuite/gas/aarch64/ldst-rcpc-armv8_2.d: New test. + 2017-01-04 Norm Jacobs <norm.jacobs@oracle.com> PR gas/20992 diff --git a/gas/config/tc-aarch64.c b/gas/config/tc-aarch64.c index e75bebe..c236df1 100644 --- a/gas/config/tc-aarch64.c +++ b/gas/config/tc-aarch64.c @@ -8438,6 +8438,8 @@ static const struct aarch64_option_cpu_value_table aarch64_features[] = { {"sve", AARCH64_FEATURE (AARCH64_FEATURE_SVE, 0), AARCH64_FEATURE (AARCH64_FEATURE_FP | AARCH64_FEATURE_SIMD, 0)}, + {"rcpc", AARCH64_FEATURE (AARCH64_FEATURE_RCPC, 0), + AARCH64_ARCH_NONE}, {NULL, AARCH64_ARCH_NONE, AARCH64_ARCH_NONE}, }; diff --git a/gas/testsuite/gas/aarch64/ldst-rcpc-armv8_2.d b/gas/testsuite/gas/aarch64/ldst-rcpc-armv8_2.d new file mode 100644 index 0000000..ac8938f --- /dev/null +++ b/gas/testsuite/gas/aarch64/ldst-rcpc-armv8_2.d @@ -0,0 +1,21 @@ +#objdump: -dr +#as: -march=armv8.2-a+rcpc +#source: ldst-rcpc.s + +.*: file format .* + +Disassembly of section \.text: + +0+ <.*>: + 0: 38bfc0e1 ldaprb w1, \[x7\] + 4: 38bfc0e1 ldaprb w1, \[x7\] + 8: 38bfc0e1 ldaprb w1, \[x7\] + c: 78bfc0e1 ldaprh w1, \[x7\] + 10: 78bfc0e1 ldaprh w1, \[x7\] + 14: 78bfc0e1 ldaprh w1, \[x7\] + 18: b8bfc0e1 ldapr w1, \[x7\] + 1c: b8bfc0e1 ldapr w1, \[x7\] + 20: b8bfc0e1 ldapr w1, \[x7\] + 24: f8bfc0e1 ldapr x1, \[x7\] + 28: f8bfc0e1 ldapr x1, \[x7\] + 2c: f8bfc0e1 ldapr x1, \[x7\] diff --git a/gas/testsuite/gas/aarch64/ldst-exclusive-armv8_3.d b/gas/testsuite/gas/aarch64/ldst-rcpc.d index 73a0c9f..73a0c9f 100644 --- a/gas/testsuite/gas/aarch64/ldst-exclusive-armv8_3.d +++ b/gas/testsuite/gas/aarch64/ldst-rcpc.d diff --git a/gas/testsuite/gas/aarch64/ldst-exclusive-armv8_3.s b/gas/testsuite/gas/aarch64/ldst-rcpc.s index bfa41e0..bfa41e0 100644 --- a/gas/testsuite/gas/aarch64/ldst-exclusive-armv8_3.s +++ b/gas/testsuite/gas/aarch64/ldst-rcpc.s |