From 0480884f1404295ba0d242791e036b05c4957bab Mon Sep 17 00:00:00 2001 From: David Gibson Date: Tue, 12 Mar 2013 00:31:09 +0000 Subject: target-ppc: Disentangle get_segment() The poorly named get_segment() function handles most of the address translation logic for hash-based MMUs. It has many ugly conditionals on whether the MMU is 32-bit or 64-bit. This patch splits the function into 32 and 64-bit versions, using the switch on mmu_type that's already in the caller (get_physical_address()) to select the right one. Most of the original function remains in mmu_helper.c to support the 6xx software loaded TLB implementations (cleaning those up is a project for another day). Signed-off-by: David Gibson Signed-off-by: Alexander Graf --- target-ppc/mmu-hash32.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'target-ppc/mmu-hash32.h') diff --git a/target-ppc/mmu-hash32.h b/target-ppc/mmu-hash32.h index 6bf8f92..6f9a0c2 100644 --- a/target-ppc/mmu-hash32.h +++ b/target-ppc/mmu-hash32.h @@ -4,8 +4,8 @@ #ifndef CONFIG_USER_ONLY int pte32_is_valid(target_ulong pte0); -int find_pte32(CPUPPCState *env, mmu_ctx_t *ctx, int h, - int rw, int type, int target_page_bits); +int get_segment32(CPUPPCState *env, mmu_ctx_t *ctx, + target_ulong eaddr, int rw, int type); #endif /* CONFIG_USER_ONLY */ -- cgit v1.1