aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthew Malcomson <matthew.malcomson@arm.com>2019-05-09 10:29:13 +0100
committerMatthew Malcomson <matthew.malcomson@arm.com>2019-05-09 10:29:13 +0100
commit5cd99750959f54fea9e7290ec850df6c96878b56 (patch)
tree0a9371a8551aed6136fb8969e4cca3de7daef2ca
parent7ce2460a77a8f66a145c11522f494f3262255390 (diff)
downloadfsf-binutils-gdb-5cd99750959f54fea9e7290ec850df6c96878b56.zip
fsf-binutils-gdb-5cd99750959f54fea9e7290ec850df6c96878b56.tar.gz
fsf-binutils-gdb-5cd99750959f54fea9e7290ec850df6c96878b56.tar.bz2
[binutils][aarch64] Allow movprfx for SVE2 instructions.
SVE2 introduces a number of new instructions that work with the movprfx instruction. This commit ensures that SVE2 instructions are accounted for. opcodes/ChangeLog: 2019-05-09 Matthew Malcomson <matthew.malcomson@arm.com> * aarch64-opc.c (verify_constraints): Check for movprfx for sve2 instructions.
-rw-r--r--opcodes/ChangeLog5
-rw-r--r--opcodes/aarch64-opc.c4
2 files changed, 8 insertions, 1 deletions
diff --git a/opcodes/ChangeLog b/opcodes/ChangeLog
index e1003f6..e09c02e 100644
--- a/opcodes/ChangeLog
+++ b/opcodes/ChangeLog
@@ -1,5 +1,10 @@
2019-05-09 Matthew Malcomson <matthew.malcomson@arm.com>
+ * aarch64-opc.c (verify_constraints): Check for movprfx for sve2
+ instructions.
+
+2019-05-09 Matthew Malcomson <matthew.malcomson@arm.com>
+
* aarch64-tbl.h
(aarch64_feature_sve2, aarch64_feature_sve2aes,
aarch64_feature_sve2sha3, aarch64_feature_sve2sm4,
diff --git a/opcodes/aarch64-opc.c b/opcodes/aarch64-opc.c
index 5be0d0f..a3f38a9 100644
--- a/opcodes/aarch64-opc.c
+++ b/opcodes/aarch64-opc.c
@@ -4867,7 +4867,9 @@ verify_constraints (const struct aarch64_inst *inst,
{
/* Check to see if the MOVPRFX SVE instruction is followed by an SVE
instruction for better error messages. */
- if (!opcode->avariant || !(*opcode->avariant & AARCH64_FEATURE_SVE))
+ if (!opcode->avariant
+ || !(*opcode->avariant &
+ (AARCH64_FEATURE_SVE | AARCH64_FEATURE_SVE2)))
{
mismatch_detail->kind = AARCH64_OPDE_SYNTAX_ERROR;
mismatch_detail->error = _("SVE instruction expected after "