arch64: Add optional operand register pair support tests
authorVictor Do Nascimento <victor.donascimento@arm.com>
Wed, 13 Dec 2023 13:02:30 +0000 (13:02 +0000)
committerVictor Do Nascimento <victor.donascimento@arm.com>
Tue, 9 Jan 2024 10:16:41 +0000 (10:16 +0000)
commite3a478523eaa15a229c57ad36ba2bac27094ca5c
treec0dd1b81681b7af5f3907d554f15617ad6065b1c
parent9af8f6711831f2851bf88c46a1f0f2a43fb49be8
arch64: Add optional operand register pair support tests

Add tests to cover the full range of behaviors observed around
optional register operands for the `tlbip' and `sysp' instructions,
namely:

  * Not all `tlbip' operations take GPR operands.  When this is the
  case, we should check that neither optional operand was supplied.
  * When a `tlbip' operation is labeled with the `F_HASXT' flag, xzr
  is not a valid optional operand.  In such case, at least the fist
  optional register needs to be specified with a non-xzr value.
  * The first operand for both insns should be either xzr or an
  even-numbered register (n % 2 == 0).  In the former scenario, the
  second operand should default to xzr too, while in the latter, it
  should default to n + 1.
gas/testsuite/gas/aarch64/illegal-sysp-tlbip-optional.d [new file with mode: 0644]
gas/testsuite/gas/aarch64/illegal-sysp-tlbip-optional.l [new file with mode: 0644]
gas/testsuite/gas/aarch64/illegal-sysp-tlbip-optional.s [new file with mode: 0644]
gas/testsuite/gas/aarch64/sysp-tlbip-optional.d [new file with mode: 0644]
gas/testsuite/gas/aarch64/sysp-tlbip-optional.s [new file with mode: 0644]