Add support to AArch64 disassembler for verifying instructions. Add verifier for LDPSW.

PR target/19722
opcodes	* aarch64-dis.c (aarch64_opcode_decode): Run verifier if present.
	* aarch64-opc.c (verify_ldpsw): New function.
	* aarch64-opc.h (verify_ldpsw): New prototype.
	* aarch64-tbl.h: Add initialiser for verifier field.
	(LDPSW): Set verifier to verify_ldpsw.

binutils* testsuite/binutils-all/aarch64/illegal.s: New test.
	* testsuite/binutils-all/aarch64/illegal.d: New test driver.

include	* opcode/aarch64.h (struct aarch64_opcode): Add verifier field.
This commit is contained in:
Nick Clifton 2016-04-28 09:11:03 +01:00
parent a3a65e6e1d
commit 4bd13cde17
10 changed files with 1271 additions and 1331 deletions

View file

@ -535,6 +535,9 @@ struct aarch64_opcode
/* Flags providing information about this instruction */
uint32_t flags;
/* If non-NULL, a function to verify that a given instruction is valid. */
bfd_boolean (* verifier) (const struct aarch64_opcode *, const aarch64_insn);
};
typedef struct aarch64_opcode aarch64_opcode;