Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/sys/arch/mips/mips Don't .set mips3 if we are >= mips3 already



details:   https://anonhg.NetBSD.org/src/rev/264e0e92b3d3
branches:  trunk
changeset: 338693:264e0e92b3d3
user:      matt <matt%NetBSD.org@localhost>
date:      Thu Jun 04 05:58:17 2015 +0000

description:
Don't .set mips3 if we are >= mips3 already
Use dins if we have it rather than two shifts.

diffstat:

 sys/arch/mips/mips/locore_mips3.S |  8 +++++++-
 1 files changed, 7 insertions(+), 1 deletions(-)

diffs (32 lines):

diff -r 50f10bae1d6a -r 264e0e92b3d3 sys/arch/mips/mips/locore_mips3.S
--- a/sys/arch/mips/mips/locore_mips3.S Thu Jun 04 05:56:23 2015 +0000
+++ b/sys/arch/mips/mips/locore_mips3.S Thu Jun 04 05:58:17 2015 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: locore_mips3.S,v 1.104 2015/06/02 05:09:15 matt Exp $  */
+/*     $NetBSD: locore_mips3.S,v 1.105 2015/06/04 05:58:17 matt Exp $  */
 
 /*
  * Copyright (c) 1997 Jonathan Stone (hereinafter referred to as the author)
@@ -122,7 +122,9 @@
  *============================================================================
  */
        .set    noreorder
+#if __mips < 3
        .set    mips3
+#endif
 
 #ifdef _LP64
 #define        _MFC0   dmfc0
@@ -639,8 +641,12 @@
 LEAF(mips3_cp0_tlb_entry_hi_probe)
        dmfc0   t0, MIPS_COP_0_TLB_HI
        li      v0, -1          /* all 1s */
+#if defined(__mips_isa_rev) && __mips_isa_rev >= 2
+       dinsu   v0, zero, 62, 2
+#else
        dsll    v0, v0, 2       /* except the top 2 */
        dsrl    v0, v0, 2
+#endif
        dmtc0   v0, MIPS_COP_0_TLB_HI
        COP0_SYNC
        dmfc0   v0, MIPS_COP_0_TLB_HI



Home | Main Index | Thread Index | Old Index