summaryrefslogtreecommitdiffstats
path: root/target/microblaze/cpu.c
diff options
context:
space:
mode:
authorRichard Henderson2020-08-18 20:58:23 +0200
committerRichard Henderson2020-09-01 16:41:38 +0200
commit1074c0fb9153f631ce93f7e7d74b935fdcb0d82a (patch)
treee1ea24a332b03f32dcad83ae06aefafc57e2374a /target/microblaze/cpu.c
parenttarget/microblaze: Tidy mb_tcg_init (diff)
downloadqemu-1074c0fb9153f631ce93f7e7d74b935fdcb0d82a.tar.gz
qemu-1074c0fb9153f631ce93f7e7d74b935fdcb0d82a.tar.xz
qemu-1074c0fb9153f631ce93f7e7d74b935fdcb0d82a.zip
target/microblaze: Split out MSR[C] to its own variable
Having the MSR[C] bit separate will improve arithmetic that operates on the carry bit. Having mb_cpu_read_msr() populate MSR[CC] will prevent the carry copy not matching the carry bit. Tested-by: Edgar E. Iglesias <edgar.iglesias@xilinx.com> Reviewed-by: Edgar E. Iglesias <edgar.iglesias@xilinx.com> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Diffstat (limited to 'target/microblaze/cpu.c')
-rw-r--r--target/microblaze/cpu.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/target/microblaze/cpu.c b/target/microblaze/cpu.c
index 0eac068570..1eabf5cc3f 100644
--- a/target/microblaze/cpu.c
+++ b/target/microblaze/cpu.c
@@ -121,9 +121,9 @@ static void mb_cpu_reset(DeviceState *dev)
#if defined(CONFIG_USER_ONLY)
/* start in user mode with interrupts enabled. */
- env->msr = MSR_EE | MSR_IE | MSR_VM | MSR_UM;
+ mb_cpu_write_msr(env, MSR_EE | MSR_IE | MSR_VM | MSR_UM);
#else
- env->msr = 0;
+ mb_cpu_write_msr(env, 0);
mmu_init(&env->mmu);
env->mmu.c_mmu = 3;
env->mmu.c_mmu_tlb_access = 3;