Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src/sys/arch/mips Abandon {mips1, mips3}_TBRPL()s which have litt...
details: https://anonhg.NetBSD.org/src/rev/1c08ddfaab79
branches: trunk
changeset: 493850:1c08ddfaab79
user: nisimura <nisimura%NetBSD.org@localhost>
date: Mon Jun 26 02:55:45 2000 +0000
description:
Abandon {mips1,mips3}_TBRPL()s which have little gain. They were
expected to be better than MachTLBUpdate(). After all, TLBUpdate()
is rather harmful and should be replaced with TBIS().
diffstat:
sys/arch/mips/include/locore.h | 8 +----
sys/arch/mips/mips/locore_mips1.S | 30 +-------------------
sys/arch/mips/mips/locore_mips3.S | 57 +--------------------------------------
sys/arch/mips/mips/mips_machdep.c | 6 +--
4 files changed, 5 insertions(+), 96 deletions(-)
diffs (206 lines):
diff -r d1067adcf63e -r 1c08ddfaab79 sys/arch/mips/include/locore.h
--- a/sys/arch/mips/include/locore.h Mon Jun 26 02:42:10 2000 +0000
+++ b/sys/arch/mips/include/locore.h Mon Jun 26 02:55:45 2000 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: locore.h,v 1.36 2000/06/20 05:54:03 soda Exp $ */
+/* $NetBSD: locore.h,v 1.37 2000/06/26 02:55:45 nisimura Exp $ */
/*
* Copyright 1996 The Board of Trustees of The Leland Stanford
@@ -55,7 +55,6 @@
void mips1_TBIA __P((int));
void mips1_TBIAP __P((int));
void mips1_TBIS __P((vaddr_t));
-void mips1_TBRPL __P((vaddr_t, vaddr_t, unsigned int));
int mips1_TLBUpdate __P((u_int, u_int));
void mips1_wbflush __P((void));
@@ -72,7 +71,6 @@
void mips3_TBIA __P((int));
void mips3_TBIAP __P((int));
void mips3_TBIS __P((vaddr_t));
-void mips3_TBRPL __P((vaddr_t, vaddr_t, unsigned int));
int mips3_TLBUpdate __P((u_int, u_int));
struct tlb;
void mips3_TLBRead __P((int, struct tlb *));
@@ -108,7 +106,6 @@
void (*setTLBpid) __P((int pid));
void (*TBIAP) __P((int));
void (*TBIS) __P((vaddr_t));
- void (*TBRPL) __P((vaddr_t, vaddr_t, unsigned int));
int (*tlbUpdate) __P((u_int highreg, u_int lowreg));
void (*wbflush) __P((void));
} mips_locore_jumpvec_t;
@@ -152,7 +149,6 @@
#define MachSetPID mips3_SetPID
#define MIPS_TBIAP() mips3_TBIAP(mips_num_tlb_entries)
#define MIPS_TBIS mips3_TBIS
-#define MIPS_TBRPL mips3_TBRPL
#define MachTLBUpdate mips3_TLBUpdate
#define wbflush() mips3_wbflush()
#define proc_trampoline mips3_proc_trampoline
@@ -165,7 +161,6 @@
#define MachSetPID mips1_SetPID
#define MIPS_TBIAP() mips1_TBIAP(mips_num_tlb_entries)
#define MIPS_TBIS mips1_TBIS
-#define MIPS_TBRPL mips1_TBRPL
#define MachTLBUpdate mips1_TLBUpdate
#define wbflush() mips1_wbflush()
#define proc_trampoline mips1_proc_trampoline
@@ -180,7 +175,6 @@
#define MachSetPID (*(mips_locore_jumpvec.setTLBpid))
#define MIPS_TBIAP() (*(mips_locore_jumpvec.TBIAP))(mips_num_tlb_entries)
#define MIPS_TBIS (*(mips_locore_jumpvec.TBIS))
-#define MIPS_TBRPL (*(mips_locore_jumpvec.TBRPL))
#define MachTLBUpdate (*(mips_locore_jumpvec.tlbUpdate))
#define MachHitFlushDCache mips3_HitFlushDCache
#define wbflush() (*(mips_locore_jumpvec.wbflush))()
diff -r d1067adcf63e -r 1c08ddfaab79 sys/arch/mips/mips/locore_mips1.S
--- a/sys/arch/mips/mips/locore_mips1.S Mon Jun 26 02:42:10 2000 +0000
+++ b/sys/arch/mips/mips/locore_mips1.S Mon Jun 26 02:55:45 2000 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: locore_mips1.S,v 1.34 2000/05/29 23:40:04 simonb Exp $ */
+/* $NetBSD: locore_mips1.S,v 1.35 2000/06/26 02:55:46 nisimura Exp $ */
/*
* Copyright (c) 1992, 1993
@@ -1660,34 +1660,6 @@
mtc0 v1, MIPS_COP_0_STATUS # restore status register
END(mips1_TBIA)
-/*
- * void mips1_TBRPL(vpn1, vpn2, pte)
- * probe TLB entry which has vpn1 address; if found, have it new
- * entryHi and entryLo pair of [vpn2, pte]
- */
-LEAF(mips1_TBRPL)
- mfc0 v1, MIPS_COP_0_STATUS
- mtc0 zero, MIPS_COP_0_STATUS
- mfc0 v0, MIPS_COP_0_TLB_HI
- nop
- mtc0 a0, MIPS_COP_0_TLB_HI
- nop
- tlbp
- mfc0 t0, MIPS_COP_0_TLB_INDEX
- nop
- bltz t0, 1f
- nop
- or a2, a2, MIPS1_PG_G
- mtc0 a1, MIPS_COP_0_TLB_HI
- mtc0 a2, MIPS_COP_0_TLB_LOW
- nop
- tlbwi
-1:
- mtc0 v0, MIPS_COP_0_TLB_HI
- j ra
- mtc0 v1, MIPS_COP_0_STATUS
- END(mips1_TBRPL)
-
.data
.globl _C_LABEL(mips1_locoresw)
diff -r d1067adcf63e -r 1c08ddfaab79 sys/arch/mips/mips/locore_mips3.S
--- a/sys/arch/mips/mips/locore_mips3.S Mon Jun 26 02:42:10 2000 +0000
+++ b/sys/arch/mips/mips/locore_mips3.S Mon Jun 26 02:55:45 2000 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: locore_mips3.S,v 1.37 2000/06/21 19:39:32 soren Exp $ */
+/* $NetBSD: locore_mips3.S,v 1.38 2000/06/26 02:55:47 nisimura Exp $ */
/*
* Copyright (c) 1997 Jonathan Stone (hereinafter referred to as the author)
@@ -2389,61 +2389,6 @@
mtc0 v1, MIPS_COP_0_STATUS # restore status register
END(mips3_TBIA)
-/*
- * void mips3_TBRPL(vpn1, vpn2, pte)
- * probe TLB entry which has vpn1 address; if found, have it new
- * entryHi and entryLo[01] pair as [vpn2, pte]
- */
-LEAF_NOPROFILE(mips3_TBRPL)
- mfc0 v1, MIPS_COP_0_STATUS
- mtc0 zero, MIPS_COP_0_STATUS
- dmfc0 v0, MIPS_COP_0_TLB_HI
- li t0, (MIPS3_PG_HVPN | MIPS3_PG_ASID)
- and a0, a0, t0
- dmtc0 a0, MIPS_COP_0_TLB_HI
- nop
- nop
- tlbp
- nop
- nop
- mfc0 t1, MIPS_COP_0_TLB_INDEX
- nop
- nop
- bltz t1, 9f
- nop
- tlbr
- #nop
- #nop
- and t1, a1, MIPS3_PG_ODDPG
- and a1, a1, t0
- dsll a2, a2, 34
- dsrl a2, a2, 34
- or a2, a2, MIPS3_PG_G
- li a0, MIPS3_PG_G
- bnez t1, 1f
- nop
-0: #EVEN
- dmtc0 a1, MIPS_COP_0_TLB_HI
- dmtc0 a2, MIPS_COP_0_TLB_LO0
- dmtc0 a0, MIPS_COP_0_TLB_LO1
- b 2f
- nop
-1: #ODD
- dmtc0 a1, MIPS_COP_0_TLB_HI
- dmtc0 a0, MIPS_COP_0_TLB_LO0
- dmtc0 a2, MIPS_COP_0_TLB_LO1
- nop
- nop
-2:
- tlbwi
- nop
- nop
-9:
- dmtc0 v0, MIPS_COP_0_TLB_HI
- j ra
- mtc0 v1, MIPS_COP_0_STATUS
- END(mips3_TBRPL)
-
LEAF(mips3_Set64bit)
mfc0 v0, MIPS_COP_0_STATUS
lui v1, (MIPS3_SR_XX >> 16)
diff -r d1067adcf63e -r 1c08ddfaab79 sys/arch/mips/mips/mips_machdep.c
--- a/sys/arch/mips/mips/mips_machdep.c Mon Jun 26 02:42:10 2000 +0000
+++ b/sys/arch/mips/mips/mips_machdep.c Mon Jun 26 02:55:45 2000 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: mips_machdep.c,v 1.90 2000/06/17 06:38:25 cgd Exp $ */
+/* $NetBSD: mips_machdep.c,v 1.91 2000/06/26 02:55:47 nisimura Exp $ */
/*-
* Copyright (c) 1998 The NetBSD Foundation, Inc.
@@ -52,7 +52,7 @@
#include <sys/cdefs.h> /* RCS ID & Copyright macro defns */
-__KERNEL_RCSID(0, "$NetBSD: mips_machdep.c,v 1.90 2000/06/17 06:38:25 cgd Exp $");
+__KERNEL_RCSID(0, "$NetBSD: mips_machdep.c,v 1.91 2000/06/26 02:55:47 nisimura Exp $");
#include "opt_compat_netbsd.h"
#include "opt_compat_ultrix.h"
@@ -139,7 +139,6 @@
mips1_SetPID,
mips1_TBIAP,
mips1_TBIS,
- mips1_TBRPL,
mips1_TLBUpdate,
mips1_wbflush,
};
@@ -187,7 +186,6 @@
mips3_SetPID,
mips3_TBIAP,
mips3_TBIS,
- mips3_TBRPL,
mips3_TLBUpdate,
mips3_wbflush,
};
Home |
Main Index |
Thread Index |
Old Index