From 5cd99750959f54fea9e7290ec850df6c96878b56 Mon Sep 17 00:00:00 2001 From: Matthew Malcomson Date: Thu, 9 May 2019 10:29:13 +0100 Subject: [PATCH] [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 * aarch64-opc.c (verify_constraints): Check for movprfx for sve2 instructions. --- opcodes/ChangeLog | 5 +++++ opcodes/aarch64-opc.c | 4 +++- 2 files changed, 8 insertions(+), 1 deletion(-) 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 + * aarch64-opc.c (verify_constraints): Check for movprfx for sve2 + instructions. + +2019-05-09 Matthew Malcomson + * 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 " -- 2.7.4