summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJose Ricardo Ziviani <joserz@linux.vnet.ibm.com>2016-11-21 12:55:13 -0200
committerDavid Gibson <david@gibson.dropbear.id.au>2016-11-23 12:00:48 +1100
commita813fe73621e1221a094a6a744530da66817ddbc (patch)
tree6570258f0b2c0a5ef4812b0154be3dee3c36e7af
parent8a273cbe53221d28abfc98f33a0d057b26e53d6a (diff)
downloadqemu-a813fe73621e1221a094a6a744530da66817ddbc.tar.gz
target-ppc: fix index array of national digits
Fixes the big endian array access of national digits, from commits b815587 and e2106d7. Signed-off-by: Jose Ricardo Ziviani <joserz@linux.vnet.ibm.com> Reviewed-by: Thomas Huth <thuth@redhat.com> Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
-rw-r--r--target-ppc/int_helper.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/target-ppc/int_helper.c b/target-ppc/int_helper.c
index 9ac204a393..2d57c9a1c2 100644
--- a/target-ppc/int_helper.c
+++ b/target-ppc/int_helper.c
@@ -2572,7 +2572,7 @@ static int bcd_cmp_zero(ppc_avr_t *bcd)
static uint16_t get_national_digit(ppc_avr_t *reg, int n)
{
#if defined(HOST_WORDS_BIGENDIAN)
- return reg->u16[8 - n];
+ return reg->u16[7 - n];
#else
return reg->u16[n];
#endif
@@ -2581,7 +2581,7 @@ static uint16_t get_national_digit(ppc_avr_t *reg, int n)
static void set_national_digit(ppc_avr_t *reg, uint8_t val, int n)
{
#if defined(HOST_WORDS_BIGENDIAN)
- reg->u16[8 - n] = val;
+ reg->u16[7 - n] = val;
#else
reg->u16[n] = val;
#endif