summaryrefslogtreecommitdiffstats
path: root/target/microblaze/cpu.h
diff options
context:
space:
mode:
authorRichard Henderson2020-08-20 06:33:32 +0200
committerRichard Henderson2020-09-01 16:41:38 +0200
commit76e8187d0078e6b926a9a648fb755df4dd266e05 (patch)
treed4fdbdd7956725275013822ca22cfbb6bd834fe8 /target/microblaze/cpu.h
parenttarget/microblaze: Tidy gdbstub (diff)
downloadqemu-76e8187d0078e6b926a9a648fb755df4dd266e05.tar.gz
qemu-76e8187d0078e6b926a9a648fb755df4dd266e05.tar.xz
qemu-76e8187d0078e6b926a9a648fb755df4dd266e05.zip
target/microblaze: Split out PC from env->sregs
Begin eliminating the sregs array in favor of individual members. Does not correct the width of pc, yet. 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.h')
-rw-r--r--target/microblaze/cpu.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/target/microblaze/cpu.h b/target/microblaze/cpu.h
index a31134b65c..d1f91bb318 100644
--- a/target/microblaze/cpu.h
+++ b/target/microblaze/cpu.h
@@ -236,6 +236,7 @@ struct CPUMBState {
uint32_t imm;
uint32_t regs[32];
+ uint64_t pc;
uint64_t sregs[14];
float_status fp_status;
/* Stack protectors. Yes, it's a hw feature. */
@@ -351,7 +352,7 @@ typedef MicroBlazeCPU ArchCPU;
static inline void cpu_get_tb_cpu_state(CPUMBState *env, target_ulong *pc,
target_ulong *cs_base, uint32_t *flags)
{
- *pc = env->sregs[SR_PC];
+ *pc = env->pc;
*cs_base = 0;
*flags = (env->iflags & IFLAGS_TB_MASK) |
(env->sregs[SR_MSR] & (MSR_UM | MSR_VM | MSR_EE));