target/ppc: Fix xs{max, min}[cj]dp to use VSX registers
commit201fc774e0e1cc76ec23b595968004a7b14fb6e8
authorVictor Colombo <victor.colombo@eldorado.org.br>
Fri, 17 Dec 2021 16:57:18 +0000 (17 17:57 +0100)
committerCédric Le Goater <clg@kaod.org>
Fri, 17 Dec 2021 16:57:18 +0000 (17 17:57 +0100)
tree927a36f7626defacce4de191c40e27bdf1ded89e
parent6518c0ede9f8b12c7eb4ab5e843bcacb7198652f
target/ppc: Fix xs{max, min}[cj]dp to use VSX registers

PPC instruction xsmaxcdp, xsmincdp, xsmaxjdp, and xsminjdp are using
vector registers when they should be using VSX ones. This happens
because the instructions are using GEN_VSX_HELPER_R3, which adds 32
to the register numbers, effectively making them vector registers.

This patch fixes it by changing these instructions to use
GEN_VSX_HELPER_X3.

Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: Victor Colombo <victor.colombo@eldorado.org.br>
Message-Id: <20211213120958.24443-2-victor.colombo@eldorado.org.br>
Signed-off-by: Cédric Le Goater <clg@kaod.org>
target/ppc/fpu_helper.c
target/ppc/helper.h
target/ppc/translate/vsx-impl.c.inc