target-ppc: fix rlwimi, rlwinm, rlwnm for Clang-9
commitc4f6a4a3dd5f2aa15329b8158de25f50b5ba3252
authorDaniele Buono <dbuono@linux.vnet.ibm.com>
Tue, 5 May 2020 18:38:17 +0000 (5 14:38 -0400)
committerDavid Gibson <david@gibson.dropbear.id.au>
Thu, 7 May 2020 01:10:50 +0000 (7 11:10 +1000)
tree404bbd60970918c004450c28f259c540178c9095
parent6c0f0cb319bd9f906d461a2e12a2b5d1eb588fa2
target-ppc: fix rlwimi, rlwinm, rlwnm for Clang-9

Starting with Clang v9, -Wtype-limits is implemented and triggers a
few "result of comparison is always true" errors when compiling PPC32
targets.

The comparisons seem to be necessary only on PPC64, since the
else branch in PPC32 only has a "g_assert_not_reached();" in all cases.

This patch restructures the code so that the actual if/else is done on a
local flag variable, that is set accordingly for PPC64, and always
true for PPC32.

Signed-off-by: Daniele Buono <dbuono@linux.vnet.ibm.com>
Message-Id: <20200505183818.32688-2-dbuono@linux.vnet.ibm.com>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
target/ppc/translate.c