diff --git a/libcpu/arm/arm926/start_gcc.S b/libcpu/arm/arm926/start_gcc.S index aeeb37616b434439c837e96588c21c866ed2378b..4924583cb88535d7f7a09a6fc031c1e17a0c94f1 100644 --- a/libcpu/arm/arm926/start_gcc.S +++ b/libcpu/arm/arm926/start_gcc.S @@ -22,6 +22,7 @@ * 2011-01-13 weety first version * 2015-04-15 ArdaFu Split from AT91SAM9260 BSP * 2015-04-21 ArdaFu Remove remap code. Using mmu to map vector table + * 2015-06-04 aozima Align stack address to 8 byte. */ #define S_FRAME_SIZE (18*4) //72 @@ -61,31 +62,32 @@ .section .nobss, "w" .space UND_STK_SIZE + .align 3 .global UND_STACK_START UND_STACK_START: .space ABT_STK_SIZE - .align 2 + .align 3 .global ABT_STACK_START ABT_STACK_START: .space FIQ_STK_SIZE - .align 2 + .align 3 .global FIQ_STACK_START FIQ_STACK_START: .space IRQ_STK_SIZE - .align 2 + .align 3 .global IRQ_STACK_START IRQ_STACK_START: .skip SYS_STK_SIZE - .align 2 + .align 3 .global SYS_STACK_START SYS_STACK_START: .space SVC_STK_SIZE - .align 2 + .align 3 .global SVC_STACK_START SVC_STACK_START: diff --git a/libcpu/arm/arm926/start_iar.S b/libcpu/arm/arm926/start_iar.S index 4e689236a5b43b0c3a26c0594be323d0add11acf..3494b108d7b98654600ab88032b129778e356057 100644 --- a/libcpu/arm/arm926/start_iar.S +++ b/libcpu/arm/arm926/start_iar.S @@ -22,6 +22,7 @@ ; * 2011-01-13 weety first version ; * 2015-04-15 ArdaFu Split from AT91SAM9260 BSP ; * 2015-04-21 ArdaFu Remove remap code. Using mmu to map vector table +; * 2015-06-04 aozima Align stack address to 8 byte. ; */ #define S_FRAME_SIZE (18*4) ;72 @@ -62,31 +63,32 @@ SECTION .noinit:DATA:NOROOT(3) DATA + ALIGNRAM 3 DS8 UND_STK_SIZE PUBLIC UND_STACK_START UND_STACK_START: - ALIGNRAM 2 + ALIGNRAM 3 DS8 ABT_STK_SIZE PUBLIC ABT_STACK_START ABT_STACK_START: - ALIGNRAM 2 + ALIGNRAM 3 DS8 FIQ_STK_SIZE PUBLIC FIQ_STACK_START FIQ_STACK_START: - ALIGNRAM 2 + ALIGNRAM 3 DS8 IRQ_STK_SIZE PUBLIC IRQ_STACK_START IRQ_STACK_START: - ALIGNRAM 2 + ALIGNRAM 3 DS8 SYS_STK_SIZE PUBLIC SYS_STACK_START SYS_STACK_START: - ALIGNRAM 2 + ALIGNRAM 3 DS8 SVC_STK_SIZE PUBLIC SVC_STACK_START SVC_STACK_START: diff --git a/libcpu/arm/arm926/start_rvds.S b/libcpu/arm/arm926/start_rvds.S index e086e394f1134a8bccf8260f606396a06dfbfc82..68fd887d660dcdf1d853d323ff1941de2f78a552 100644 --- a/libcpu/arm/arm926/start_rvds.S +++ b/libcpu/arm/arm926/start_rvds.S @@ -22,6 +22,7 @@ ; * 2011-08-14 weety first version ; * 2015-04-15 ArdaFu Split from AT91SAM9260 BSP ; * 2015-04-21 ArdaFu Remove remap code. Using mmu to map vector table +; * 2015-06-04 aozima Align stack address to 8 byte. ; */ S_FRAME_SIZE EQU (18*4) ;72 @@ -60,34 +61,34 @@ NOINT EQU 0xC0 GET rt_low_level_keil.inc ;----------------------- Stack and Heap Definitions ---------------------------- - AREA STACK, NOINIT, READWRITE, ALIGN=2 + AREA STACK, NOINIT, READWRITE, ALIGN=3 Stack_Mem SPACE UND_STK_SIZE EXPORT UND_STACK_START UND_STACK_START - ALIGN 4 + ALIGN 8 SPACE ABT_STK_SIZE EXPORT ABT_STACK_START ABT_STACK_START - ALIGN 4 + ALIGN 8 SPACE FIQ_STK_SIZE EXPORT FIQ_STACK_START FIQ_STACK_START - ALIGN 4 + ALIGN 8 SPACE IRQ_STK_SIZE EXPORT IRQ_STACK_START IRQ_STACK_START - ALIGN 4 + ALIGN 8 SPACE SYS_STK_SIZE EXPORT SYS_STACK_START SYS_STACK_START - ALIGN 4 + ALIGN 8 SPACE SVC_STK_SIZE EXPORT SVC_STACK_START SVC_STACK_START