target/arm: Correctly bound length in sve_zcr_get_valid_len
authorRichard Henderson <richard.henderson@linaro.org>
Fri, 23 Jul 2021 20:33:42 +0000 (10:33 -1000)
committerPeter Maydell <peter.maydell@linaro.org>
Tue, 27 Jul 2021 09:57:40 +0000 (10:57 +0100)
commitdc0bc8e7855643c4c2aaff74409bada9761b390e
tree884b48d21d3053b9584d4f45b86befcd70008808
parenta476b2167296c0f8bfd6a66d1eb54ca39ea0e6f2
target/arm: Correctly bound length in sve_zcr_get_valid_len

Currently, our only caller is sve_zcr_len_for_el, which has
already masked the length extracted from ZCR_ELx, so the
masking done here is a nop.  But we will shortly have uses
from other locations, where the length will be unmasked.

Saturate the length to ARM_MAX_VQ instead of truncating to
the low 4 bits.

Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Message-id: 20210723203344.968563-2-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
target/arm/helper.c