diff options
| author | Tianrui Zhao <zhaotianrui@loongson.cn> | 2024-01-05 15:57:59 +0800 |
|---|---|---|
| committer | Song Gao <gaosong@loongson.cn> | 2024-01-11 19:14:00 +0800 |
| commit | f8447436d3b583365113997f1dee35f92a21abbd (patch) | |
| tree | 3f909b8a6b56503a5aff15beec6295c2f5850938 /target/loongarch/internals.h | |
| parent | 627846569697d412a16be318091f1dc81e6954c0 (diff) | |
| download | focaccia-qemu-f8447436d3b583365113997f1dee35f92a21abbd.tar.gz focaccia-qemu-f8447436d3b583365113997f1dee35f92a21abbd.zip | |
target/loongarch: Implement kvm get/set registers
Implement kvm_arch_get/set_registers interfaces, many regs can be get/set in the function, such as core regs, csr regs, fpu regs, mp state, etc. Signed-off-by: Tianrui Zhao <zhaotianrui@loongson.cn> Signed-off-by: xianglai li <lixianglai@loongson.cn> Reviewed-by: Song Gao <gaosong@loongson.cn> Change-Id: Ia8fc48fe08b1768853f7729e77d37cdf270031e4 Message-Id: <20240105075804.1228596-5-zhaotianrui@loongson.cn> Signed-off-by: Song Gao <gaosong@loongson.cn>
Diffstat (limited to 'target/loongarch/internals.h')
| -rw-r--r-- | target/loongarch/internals.h | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/target/loongarch/internals.h b/target/loongarch/internals.h index c492863cc5..0beb034748 100644 --- a/target/loongarch/internals.h +++ b/target/loongarch/internals.h @@ -31,8 +31,10 @@ void G_NORETURN do_raise_exception(CPULoongArchState *env, const char *loongarch_exception_name(int32_t exception); +#ifdef CONFIG_TCG int ieee_ex_to_loongarch(int xcpt); void restore_fp_status(CPULoongArchState *env); +#endif #ifndef CONFIG_USER_ONLY extern const VMStateDescription vmstate_loongarch_cpu; @@ -44,12 +46,13 @@ uint64_t cpu_loongarch_get_constant_timer_counter(LoongArchCPU *cpu); uint64_t cpu_loongarch_get_constant_timer_ticks(LoongArchCPU *cpu); void cpu_loongarch_store_constant_timer_config(LoongArchCPU *cpu, uint64_t value); - +#ifdef CONFIG_TCG bool loongarch_cpu_tlb_fill(CPUState *cs, vaddr address, int size, MMUAccessType access_type, int mmu_idx, bool probe, uintptr_t retaddr); hwaddr loongarch_cpu_get_phys_page_debug(CPUState *cpu, vaddr addr); +#endif #endif /* !CONFIG_USER_ONLY */ uint64_t read_fcc(CPULoongArchState *env); |