mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-02 07:13:54 -06:00
target/arm: Implement MVE VNEG
Implement the MVE VNEG insn (both integer and floating point forms). Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Message-id: 20210617121628.20116-9-peter.maydell@linaro.org
This commit is contained in:
parent
59c9177338
commit
399a8c766c
4 changed files with 35 additions and 0 deletions
|
@ -294,3 +294,15 @@ DO_1OP(vabsw, 4, int32_t, DO_ABS)
|
|||
/* We can do these 64 bits at a time */
|
||||
DO_1OP(vfabsh, 8, uint64_t, DO_FABSH)
|
||||
DO_1OP(vfabss, 8, uint64_t, DO_FABSS)
|
||||
|
||||
#define DO_NEG(N) (-(N))
|
||||
#define DO_FNEGH(N) ((N) ^ dup_const(MO_16, 0x8000))
|
||||
#define DO_FNEGS(N) ((N) ^ dup_const(MO_32, 0x80000000))
|
||||
|
||||
DO_1OP(vnegb, 1, int8_t, DO_NEG)
|
||||
DO_1OP(vnegh, 2, int16_t, DO_NEG)
|
||||
DO_1OP(vnegw, 4, int32_t, DO_NEG)
|
||||
|
||||
/* We can do these 64 bits at a time */
|
||||
DO_1OP(vfnegh, 8, uint64_t, DO_FNEGH)
|
||||
DO_1OP(vfnegs, 8, uint64_t, DO_FNEGS)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue