This fixes a very old bug in the ARM architecture HAL.

Index: ChangeLog
===================================================================
RCS file: /cvs/ecos/ecos/packages/hal/arm/arch/current/ChangeLog,v
retrieving revision 1.114
diff -u -5 -r1.114 ChangeLog
--- ChangeLog   2 Feb 2009 19:02:40 -0000       1.114
+++ ChangeLog   9 Feb 2009 15:31:31 -0000
@@ -1,5 +1,15 @@
+2009-02-09  Nick Garnett  <[email protected]>
+
+       * src/vectors.S (start): The loop to initialize BSS was using a
+       BLS to terminate. This caused an extra zero to be stored beyond
+       the end of __bss_end. Usually this is benign, but when __bss_end
+       is at the very top of RAM, and the hardware generates an exception
+       for illegal accesses, this can crash the program before it even
+       starts. The fix is to use a BLT instructions which will terminate
+       the loop 1 word earlier.
+
 2009-02-02  Bart Veer  <[email protected]>
 
        * cdl/hal_arm.cdl: add new architectural CFLAGS and LDFLAGS
        options.
 
Index: src/vectors.S
===================================================================
RCS file: /cvs/ecos/ecos/packages/hal/arm/arch/current/src/vectors.S,v
retrieving revision 1.59
diff -u -5 -r1.59 vectors.S
--- src/vectors.S       29 Jan 2009 17:48:55 -0000      1.59
+++ src/vectors.S       9 Feb 2009 15:31:31 -0000
@@ -448,11 +448,11 @@
         mov     r0,#0
         cmp     r1,r2
         beq     2f
 1:      str     r0,[r1],#4
         cmp     r1,r2
-        bls     1b
+        blt     1b
 2:
 
         // Run kernel + application in THUMB mode
         THUMB_MODE(r1,10)
 



-- 
Nick Garnett                                        eCos Kernel Architect
eCosCentric Limited    http://www.eCosCentric.com        The eCos experts
Barnwell House, Barnwell Drive, Cambridge, UK.       Tel: +44 1223 245571
Registered in England and Wales:                          Reg No: 4422071
Besuchen Sie uns vom 3.-5.03.09 auf der Embedded World 2009, Stand 11-300
Visit us at Embedded World 2009, Nürnberg, Germany, 3-5 Mar, Stand 11-300

Reply via email to