On Mon, 18 Dec 2006 00:38:21 +0900 (JST), Atsushi Nemoto <anemo@xxxxxxxxxxxxx> wrote: > The commit a923660d786a53e78834b19062f7af2535f7f8ad accidently > prevents TX49 from using CDEX. Use build_dst_pref() only if prefetch > for store was really available. > > Signed-off-by: Atsushi Nemoto <anemo@xxxxxxxxxxxxx> > --- > diff --git a/arch/mips/mm/pg-r4k.c b/arch/mips/mm/pg-r4k.c > index d41fc58..dc795be 100644 > --- a/arch/mips/mm/pg-r4k.c > +++ b/arch/mips/mm/pg-r4k.c > @@ -243,11 +243,10 @@ static void __init __build_store_reg(int > > static inline void build_store_reg(int reg) > { > - if (cpu_has_prefetch) > - if (reg) > - build_dst_pref(pref_offset_copy); > - else > - build_dst_pref(pref_offset_clear); > + int pref_off = cpu_has_prefetch ? > + (reg ? pref_offset_copy : pref_offset_clear) : 0; > + if (pref_off) > + build_dst_pref(pref_off); > else if (cpu_has_cache_cdex_s) > build_cdex_s(); > else if (cpu_has_cache_cdex_p) BTW, why prefetch is preferred than cache_cdex? I feel cdex is better while it avoids unnecessary load... --- Atsushi Nemoto