target/ppc: Fix width of some 32-bit SPRs
authorNicholas Piggin <npiggin@gmail.com>
Mon, 15 May 2023 09:26:47 +0000 (19:26 +1000)
committerDaniel Henrique Barboza <danielhb413@gmail.com>
Sat, 27 May 2023 11:25:19 +0000 (08:25 -0300)
commitfbda88f7abdeed3ceebdd18de6909a52df756c1c
tree1a2e29eb8df6468a97fbc67d03c19644e3033ef1
parent5260ecffd24e36c029849f379c8b9cc3d099c879
target/ppc: Fix width of some 32-bit SPRs

Some 32-bit SPRs are incorrectly implemented as 64-bits on 64-bit
targets.

This changes VRSAVE, DSISR, HDSISR, DAWRX0, PIDR, LPIDR, DEXCR,
HDEXCR, CTRL, TSCR, MMCRH, and PMC[1-6] from to be 32-bit registers.

This only goes by the 32/64 classification in the architecture, it
does not try to implement finer details of SPR implementation (e.g.,
not all bits implemented as simple read/write storage).

Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
Reviewed-by: Harsh Prateek Bora <harshpb@linux.ibm.com>
Message-Id: <20230515092655.171206-2-npiggin@gmail.com>
Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com>
target/ppc/cpu_init.c
target/ppc/helper_regs.c
target/ppc/misc_helper.c
target/ppc/power8-pmu.c
target/ppc/spr_common.h
target/ppc/translate.c