changeset 155:70a4cc6d69d2

2001-02-27 Chris Morrow <cmorrow@YottaYotta.com> * src/vectors.S (hal_zero_bss): Oops, allow for bss being multiple of block size. And add delay slot.
author jlarmour
date Tue, 27 Feb 2001 18:24:56 +0000
parents e2d866e32dac
children b939e9cada46
files packages/hal/mips/arch/current/ChangeLog packages/hal/mips/arch/current/src/vectors.S
diffstat 2 files changed, 12 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/packages/hal/mips/arch/current/ChangeLog
+++ b/packages/hal/mips/arch/current/ChangeLog
@@ -1,3 +1,8 @@
+2001-02-27  Chris Morrow  <cmorrow@YottaYotta.com>
+
+	* src/vectors.S (hal_zero_bss): Oops, allow for bss being multiple
+	of block size. And add delay slot.
+
 2001-02-26  Chris Morrow  <cmorrow@YottaYotta.com>
 
 	* src/vectors.S (hal_zero_bss): Implemented in assembler for speed.
--- a/packages/hal/mips/arch/current/src/vectors.S
+++ b/packages/hal/mips/arch/current/src/vectors.S
@@ -803,12 +803,18 @@ 2:      STORE_OP        zero,(mips_regsi
         bne             a3,a0,2b                # to next store
         nop
 
+        # If length is a multiple of block size then we
+        # are done and need to skip the byte loop
+        beq		a1,a0,3f
+        nop
+	
         # finish 1 byte at a time
 1:      sb      zero,0(a0)              # zero memory
         addiu   a0,a0,1                 # next addr
         bne     a0,a1,1b                # to next store
         nop
-        jr      ra
+3:      jr      ra
+        nop
 FUNC_END(hal_zero_bss)