From 0a9a210c306eab2653067e78dc5063dd9a0bb980 Mon Sep 17 00:00:00 2001 From: gbeauche <> Date: Mon, 12 Dec 2005 21:44:50 +0000 Subject: [PATCH] Disable direct block chaining if DYNGEN_FAST_DISPATCH is not defined. Note this is a workaround prior to enabling it on mips and the future JIT. --- SheepShaver/src/kpx_cpu/src/cpu/ppc/ppc-translate.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/SheepShaver/src/kpx_cpu/src/cpu/ppc/ppc-translate.cpp b/SheepShaver/src/kpx_cpu/src/cpu/ppc/ppc-translate.cpp index fc45d713..1f397f15 100644 --- a/SheepShaver/src/kpx_cpu/src/cpu/ppc/ppc-translate.cpp +++ b/SheepShaver/src/kpx_cpu/src/cpu/ppc/ppc-translate.cpp @@ -51,8 +51,12 @@ static inline bool is_read_only_memory(uintptr addr) } // Returns TRUE if we can directly generate a jump to the target block +// XXX mixing front-end and back-end conditions is not a very good idea... static inline bool direct_chaining_possible(uint32 bpc, uint32 tpc) { +#ifndef DYNGEN_FAST_DISPATCH + return false; +#endif return ((bpc ^ tpc) >> 12) == 0 || is_read_only_memory(tpc); }