target/arm: Fix sve_zip_p vs odd vector lengths
commit8e7fefed1bdcc0f7e722ccf2a2fc2b4f79fe725e
authorRichard Henderson <richard.henderson@linaro.org>
Tue, 9 Mar 2021 15:52:59 +0000 (9 07:52 -0800)
committerPeter Maydell <peter.maydell@linaro.org>
Fri, 12 Mar 2021 12:40:10 +0000 (12 12:40 +0000)
tree7f2914eaa2ffc4604f0ddbf326e6246d7dd4e644
parent226e6c046c0fce8da32575aad020ca56a5a8064d
target/arm: Fix sve_zip_p vs odd vector lengths

Wrote too much with low-half zip (zip1) with vl % 512 != 0.

Adjust all of the x + (y << s) to x | (y << s) as a style fix.

We only ever have exact overlap between D, M, and N.  Therefore
we only need a single temporary, and we do not need to check for
partial overlap.

Reported-by: Laurent Desnogues <laurent.desnogues@gmail.com>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20210309155305.11301-3-richard.henderson@linaro.org
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
target/arm/sve_helper.c