summaryrefslogtreecommitdiff
path: root/tools
diff options
context:
space:
mode:
authorRashmica Gupta <rashmica@linux.ibm.com>2022-06-17 07:39:35 +0300
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2022-08-17 16:15:58 +0300
commitb5de92e1bb7f303f9903d354659025e4d7e58ef8 (patch)
treee29213ba42392352c59301217bc6e7d76139ad35 /tools
parentf35c7f506fb96a23a1961c7314c5931ec8bc473e (diff)
downloadlinux-b5de92e1bb7f303f9903d354659025e4d7e58ef8.tar.xz
selftests/powerpc: Fix matrix multiply assist test
[ Upstream commit cd1e64935f79e31d666172c52c951ca97152b783 ] The ISA states: "when ACC[i] contains defined data, the contents of VSRs 4×i to 4×i+3 are undefined until either a VSX Move From ACC instruction is used to copy the contents of ACC[i] to VSRs 4×i to 4×i+3 or some other instruction directly writes to one of these VSRs." We aren't doing this. This test only works on Power10 because the hardware implementation happens to map ACC0 to VSRs 0-3, but will fail on any other implementation that doesn't do this. So add xxmfacc between writing to the accumulator and accessing the VSRs. Fixes: 3527e1ab9a79 ("selftests/powerpc: Add matrix multiply assist (MMA) test") Signed-off-by: Rashmica Gupta <rashmica@linux.ibm.com> Signed-off-by: Michael Ellerman <mpe@ellerman.id.au> Link: https://lore.kernel.org/r/20220617043935.428083-1-rashmica@linux.ibm.com Signed-off-by: Sasha Levin <sashal@kernel.org>
Diffstat (limited to 'tools')
-rw-r--r--tools/testing/selftests/powerpc/math/mma.S3
1 files changed, 3 insertions, 0 deletions
diff --git a/tools/testing/selftests/powerpc/math/mma.S b/tools/testing/selftests/powerpc/math/mma.S
index 8528c9849565..61cc88b1b26b 100644
--- a/tools/testing/selftests/powerpc/math/mma.S
+++ b/tools/testing/selftests/powerpc/math/mma.S
@@ -20,6 +20,9 @@ test_mma:
/* xvi16ger2s */
.long 0xec042958
+ /* Deprime the accumulator - xxmfacc 0 */
+ .long 0x7c000162
+
/* Store result in image passed in r5 */
stxvw4x 0,0,5
addi 5,5,16