[PATCH 4/8][Binutils][AArch64] Refactor verifiers to make more general.

Tamar Christina tamar.christina@arm.com
Mon Sep 24 17:21:00 GMT 2018


Hi All,

The current verifiers only take an instruction description and encoded value as
arguments.  This was enough when the verifiers only needed to do simple checking
but it's insufficient for the purposes of validating instruction sequences.

This patch adds the required arguments and also a flag to allow a verifier to
distinguish between whether it's being run during encoding or decoding.  It also
allows for errors and warnings to be returned by a verifier instead of a simple
pass/fail.

build on native hardware and regtested on
  aarch64-none-elf, aarch64-none-elf (32 bit host),
  aarch64-none-linux-gnu

Cross-compiled and regtested on
  aarch64-none-linux-gnu, aarch64_be-none-linux-gnu

and no issues.

Ok for master?

Thanks,
Tamar

include/
2018-09-24  Tamar Christina  <tamar.christina@arm.com>

	* opcode/aarch64.h (struct aarch64_opcode): Expand verifiers to take
	more arguments.

opcodes/
2018-09-24  Tamar Christina  <tamar.christina@arm.com>

	* aarch64-dis.c (aarch64_opcode_decode): Update verifier call.
	* aarch64-opc.c (verify_ldpsw): Update arguments.

-- 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: rb9980.patch
Type: text/x-diff
Size: 2697 bytes
Desc: not available
URL: <https://sourceware.org/pipermail/binutils/attachments/20180924/073174ba/attachment.bin>


More information about the Binutils mailing list