target-ppc: Fix rlwimi, rlwinm, rlwnm again
commit820724d170dd97bd216810c6965ee1ebd0ba01e8
authorRichard Henderson <rth@twiddle.net>
Mon, 20 Jun 2016 01:03:37 +0000 (20 11:03 +1000)
committerDavid Gibson <david@gibson.dropbear.id.au>
Wed, 22 Jun 2016 01:12:17 +0000 (22 11:12 +1000)
tree2ecdbd9fa21570b5a23415462df71a02b53fadf4
parent7f2b1744b3ea0f9860ece4bd9493d88286601408
target-ppc: Fix rlwimi, rlwinm, rlwnm again

In 63ae0915f8ec, I arranged to use a 32-bit rotate, without
considering the effect of a mask value that wraps around to
the high bits of the word.

[dwg: In 2e11b15 this was partially fixed, but an edge case was still
incorrect, which this fixes]

Signed-off-by: Richard Henderson <rth@twiddle.net>
[dwg: Folded with a revert of 2e11b15, an earlier buggy version of
 this patch which already went upstream]
Tested-by: Anton Blanchard <anton@samba.org>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
target-ppc/translate.c