Mon Jan 10 16:43:30 2011 UTC ()
Add hazard nops required by MIPS1 in noreorder case.
(Umm, is it easier to remove noreorder and all BDslot insns?)
(tsutsui)
diff -r1.6 -r1.7 src/sys/arch/pmax/stand/common/bootinit.S
diff -r1.6 -r1.7 src/sys/arch/pmax/stand/common/bootread.S
diff -r1.7 -r1.8 src/sys/arch/pmax/stand/common/clear_cache.S
diff -r1.7 -r1.8 src/sys/arch/pmax/stand/common/printf.S
diff -r1.3 -r1.4 src/sys/arch/pmax/stand/common/getchar.S
--- src/sys/arch/pmax/stand/common/bootinit.S 2011/01/10 15:25:15 1.6
+++ src/sys/arch/pmax/stand/common/bootinit.S 2011/01/10 16:43:29 1.7
@@ -1,4 +1,4 @@
-/* $NetBSD: bootinit.S,v 1.6 2011/01/10 15:25:15 tsutsui Exp $ */
+/* $NetBSD: bootinit.S,v 1.7 2011/01/10 16:43:29 tsutsui Exp $ */
/*-
* Copyright (c) 1999 The NetBSD Foundation, Inc.
@@ -36,6 +36,7 @@
.set noreorder
LEAF(bootinit)
lw v0, _C_LABEL(callv) # get pointer to call back vectors
+ nop
lw v0, 0x54(v0) # offset for callv->_bootinit
nop
j v0 # call PROM bootinit
--- src/sys/arch/pmax/stand/common/bootread.S 2011/01/10 15:25:15 1.6
+++ src/sys/arch/pmax/stand/common/bootread.S 2011/01/10 16:43:29 1.7
@@ -1,4 +1,4 @@
-/* $NetBSD: bootread.S,v 1.6 2011/01/10 15:25:15 tsutsui Exp $ */
+/* $NetBSD: bootread.S,v 1.7 2011/01/10 16:43:29 tsutsui Exp $ */
/*-
* Copyright (c) 1999 The NetBSD Foundation, Inc.
@@ -36,6 +36,7 @@
.set noreorder
LEAF(bootread)
lw v0, _C_LABEL(callv) # get pointer to call back vectors
+ nop
lw v0, 0x58(v0) # offset for callv->_bootread
nop
j v0 # call PROM bootread
--- src/sys/arch/pmax/stand/common/clear_cache.S 2011/01/10 15:25:15 1.7
+++ src/sys/arch/pmax/stand/common/clear_cache.S 2011/01/10 16:43:29 1.8
@@ -1,4 +1,4 @@
-/* $NetBSD: clear_cache.S,v 1.7 2011/01/10 15:25:15 tsutsui Exp $ */
+/* $NetBSD: clear_cache.S,v 1.8 2011/01/10 16:43:29 tsutsui Exp $ */
/*-
* Copyright (c) 1999 The NetBSD Foundation, Inc.
@@ -36,6 +36,7 @@
.set noreorder
LEAF(clear_cache)
lw v0, _C_LABEL(callv) # get pointer to call back vectors
+ nop
lw v0, 0x7c(v0) # offset for callv->_clear_cache
nop
j v0 # call PROM clear_cache
--- src/sys/arch/pmax/stand/common/printf.S 2011/01/10 15:25:15 1.7
+++ src/sys/arch/pmax/stand/common/printf.S 2011/01/10 16:43:29 1.8
@@ -1,4 +1,4 @@
-/* $NetBSD: printf.S,v 1.7 2011/01/10 15:25:15 tsutsui Exp $ */
+/* $NetBSD: printf.S,v 1.8 2011/01/10 16:43:29 tsutsui Exp $ */
/*-
* Copyright (c) 1999 The NetBSD Foundation, Inc.
@@ -36,6 +36,7 @@
.set noreorder
LEAF(printf)
lw v0, _C_LABEL(callv) # get pointer to call back vectors
+ nop
lw t9, 0x30(v0) # offset for callv->_printf
nop
#ifdef __mips_n32
--- src/sys/arch/pmax/stand/common/getchar.S 2011/01/10 15:25:15 1.3
+++ src/sys/arch/pmax/stand/common/getchar.S 2011/01/10 16:43:29 1.4
@@ -1,4 +1,4 @@
-/* $NetBSD: getchar.S,v 1.3 2011/01/10 15:25:15 tsutsui Exp $ */
+/* $NetBSD: getchar.S,v 1.4 2011/01/10 16:43:29 tsutsui Exp $ */
/*-
* Copyright (c) 1999 The NetBSD Foundation, Inc.
@@ -36,6 +36,7 @@
.set noreorder
LEAF(getchar)
lw v0, _C_LABEL(callv) # get pointer to call back vectors
+ nop
lw v0, 0x24(v0) # offset for callv->_getchar
nop
j v0 # call PROM getchar