target/arm: Implement MVE VMLADAV and VMLSLDAV
authorPeter Maydell <peter.maydell@linaro.org>
Fri, 13 Aug 2021 16:11:54 +0000 (17:11 +0100)
committerPeter Maydell <peter.maydell@linaro.org>
Wed, 25 Aug 2021 09:48:49 +0000 (10:48 +0100)
commitf0ffff5163cb503de236fc766121601592f08744
tree80b59e16a5e42dd873029fd82853ed1b5469f50b
parent640cdf20a25d0021f4e93b6207b648a973df320b
target/arm: Implement MVE VMLADAV and VMLSLDAV

Implement the MVE VMLADAV and VMLSLDAV insns.  Like the VMLALDAV and
VMLSLDAV insns already implemented, these accumulate multiplied
vector elements; but they accumulate a 32-bit result rather than a
64-bit one.

Note that these encodings overlap with what would be RdaHi=0b111 for
VMLALDAV, VMLSLDAV, VRMLALDAVH and VRMLSLDAVH.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
target/arm/helper-mve.h
target/arm/mve.decode
target/arm/mve_helper.c
target/arm/translate-mve.c