]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commit
aarch64: rcpc3: Create implicit load/store size calc function
authorVictor Do Nascimento <victor.donascimento@arm.com>
Tue, 9 Jan 2024 16:22:07 +0000 (16:22 +0000)
committerVictor Do Nascimento <victor.donascimento@arm.com>
Mon, 15 Jan 2024 13:11:48 +0000 (13:11 +0000)
commit2f8890efc521d0477728ade637cb1d03a4aa799d
treed32fb9540a2464e35e903be9b90393db34b2db26
parent9e263f69a77565aab4475bf6b984f09f2b0c6755
aarch64: rcpc3: Create implicit load/store size calc function

The allowed immediate offsets in integer rcpc3 load store instructions
are not encoded explicitly in the instruction itself, being rather
implicitly equivalent to the amount of data loaded/stored by the
instruction.

This leads to the requirement that this quantity be calculated based on
the number of registers involved in the transfer, either as data
source or destination registers and their respective qualifiers.

This is done via `calc_ldst_datasize (const aarch64_opnd_info *opnds)'
implemented here, using a cumulative sum of qualifier sizes preceding
the address operand in the OPNDS operand list argument.
include/opcode/aarch64.h
opcodes/aarch64-opc.c