diff options
author | j_mayer <j_mayer@c046a42c-6fe2-441c-8c8c-71466251a162> | 2007-10-03 01:05:39 +0000 |
---|---|---|
committer | j_mayer <j_mayer@c046a42c-6fe2-441c-8c8c-71466251a162> | 2007-10-03 01:05:39 +0000 |
commit | 00af685fc974e4941ef2d309a2e8818d311a370c (patch) | |
tree | 528461009628f0f774910291f53c33ecfe9963f5 /target-ppc/helper.c | |
parent | 217fae2d6be868d80c587639d82ed9b1028913bb (diff) |
We never have to export ppc_set_irq.
Protect PowerPC 64 only features with #ifdef (TARGET_PPC64)
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3316 c046a42c-6fe2-441c-8c8c-71466251a162
Diffstat (limited to 'target-ppc/helper.c')
-rw-r--r-- | target-ppc/helper.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/target-ppc/helper.c b/target-ppc/helper.c index 5fa5ee002a..438cad42a6 100644 --- a/target-ppc/helper.c +++ b/target-ppc/helper.c @@ -1612,10 +1612,16 @@ void ppc_tlb_invalidate_all (CPUPPCState *env) cpu_abort(env, "MMU model not implemented\n"); break; case POWERPC_MMU_32B: +#if defined(TARGET_PPC64) case POWERPC_MMU_64B: case POWERPC_MMU_64BRIDGE: +#endif /* defined(TARGET_PPC64) */ tlb_flush(env, 1); break; + default: + /* XXX: TODO */ + cpu_abort(env, "Unknown MMU model %d\n", env->mmu_model); + break; } } @@ -1672,14 +1678,21 @@ void ppc_tlb_invalidate_one (CPUPPCState *env, target_ulong addr) tlb_flush_page(env, addr | (0xE << 28)); tlb_flush_page(env, addr | (0xF << 28)); break; +#if defined(TARGET_PPC64) case POWERPC_MMU_64B: case POWERPC_MMU_64BRIDGE: /* tlbie invalidate TLBs for all segments */ /* XXX: given the fact that there are too many segments to invalidate, + * and we still don't have a tlb_flush_mask(env, n, mask) in Qemu, * we just invalidate all TLBs */ tlb_flush(env, 1); break; +#endif /* defined(TARGET_PPC64) */ + default: + /* XXX: TODO */ + cpu_abort(env, "Unknown MMU model 2\n"); + break; } #else ppc_tlb_invalidate_all(env); |