]> git.proxmox.com Git - mirror_qemu.git/commit
target/arm: Complete TBI clearing for user-only for SVE
authorRichard Henderson <richard.henderson@linaro.org>
Fri, 26 Jun 2020 03:31:36 +0000 (20:31 -0700)
committerPeter Maydell <peter.maydell@linaro.org>
Fri, 26 Jun 2020 13:31:12 +0000 (14:31 +0100)
commitc4af8ba19b9d22aac79cab679a20b159af9d6809
treedc2e0d9d4724f2409a56a543f17f3a9072092d65
parentd28d12f008ee44dc2cc2ee5d8f673be9febc951e
target/arm: Complete TBI clearing for user-only for SVE

There are a number of paths by which the TBI is still intact
for user-only in the SVE helpers.

Because we currently always set TBI for user-only, we do not
need to pass down the actual TBI setting from above, and we
can remove the top byte in the inner-most primitives, so that
none are forgotten.  Moreover, this keeps the "dirty" pointer
around at the higher levels, where we need it for any MTE checking.

Since the normal case, especially for user-only, goes through
RAM, this clearing merely adds two insns per page lookup, which
will be completely in the noise.

Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20200626033144.790098-39-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
target/arm/cpu.c
target/arm/sve_helper.c
target/arm/translate-a64.c