target/arm: Fix AddPAC error indication
authorRichard Henderson <richard.henderson@linaro.org>
Mon, 3 Aug 2020 16:55:03 +0000 (17:55 +0100)
committerPeter Maydell <peter.maydell@linaro.org>
Mon, 3 Aug 2020 16:55:03 +0000 (17:55 +0100)
commit8796fe40dd30cd9ffd3c958906471715c923b341
treeb46f26f03cfe41809b07f5675f592bc44a9fb682
parentfc6bb6e67e2f2b81de765a1c1ad5956de625ab19
target/arm: Fix AddPAC error indication

The definition of top_bit used in this function is one higher
than that used in the Arm ARM psuedo-code, which put the error
indication at top_bit - 1 at the wrong place, which meant that
it wasn't visible to Auth.

Fixing the definition of top_bit requires more changes, because
its most common use is for the count of bits in top_bit:bot_bit,
which would then need to be computed as top_bit - bot_bit + 1.

For now, prefer the minimal fix to the error indication alone.

Fixes: 63ff0ca94cb
Reported-by: Derrick McKee <derrick.mckee@gmail.com>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20200728195706.11087-1-richard.henderson@linaro.org
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
[PMM: added comment about the divergence from the pseudocode]
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
target/arm/pauth_helper.c
tests/tcg/aarch64/Makefile.target
tests/tcg/aarch64/pauth-5.c [new file with mode: 0644]