From: batt Date: Tue, 8 Sep 2009 12:26:15 +0000 (+0000) Subject: ARM ABI requires stack to be aligned on a 64-bit boundary X-Git-Tag: 2.2.0~67 X-Git-Url: https://codewiz.org/gitweb?p=bertos.git;a=commitdiff_plain;h=30e3600b89bce07ed3f6f89d9f2ea03af2b1cfac ARM ABI requires stack to be aligned on a 64-bit boundary git-svn-id: https://src.develer.com/svnoss/bertos/trunk@2901 38d2e660-2303-0410-9eaa-f027e97ec537 --- diff --git a/bertos/cpu/arm/scripts/at91sam7_128_ram.ld b/bertos/cpu/arm/scripts/at91sam7_128_ram.ld index c4ad8282..815ead6e 100644 --- a/bertos/cpu/arm/scripts/at91sam7_128_ram.ld +++ b/bertos/cpu/arm/scripts/at91sam7_128_ram.ld @@ -114,27 +114,27 @@ SECTIONS PROVIDE (__stack_fiq_start = .); . += FIQ_STACK_SIZE; - . = ALIGN(4); + . = ALIGN(8); PROVIDE (__stack_fiq_end = .); PROVIDE (__stack_irq_start = .); . += IRQ_STACK_SIZE; - . = ALIGN(4); + . = ALIGN(8); PROVIDE (__stack_irq_end = .); PROVIDE (__stack_abt_start = .); . += ABT_STACK_SIZE; - . = ALIGN(4); + . = ALIGN(8); PROVIDE (__stack_abt_end = .); PROVIDE (__stack_und_start = .); . += UND_STACK_SIZE; - . = ALIGN(4); + . = ALIGN(8); PROVIDE (__stack_und_end = .); PROVIDE (__stack_svc_start = .); . += SVC_STACK_SIZE; - . = ALIGN(4); + . = ALIGN(8); PROVIDE (__stack_svc_end = .); PROVIDE (__stack_end = .); diff --git a/bertos/cpu/arm/scripts/at91sam7_128_rom.ld b/bertos/cpu/arm/scripts/at91sam7_128_rom.ld index 88864a8b..6394669c 100644 --- a/bertos/cpu/arm/scripts/at91sam7_128_rom.ld +++ b/bertos/cpu/arm/scripts/at91sam7_128_rom.ld @@ -114,27 +114,27 @@ SECTIONS PROVIDE (__stack_fiq_start = .); . += FIQ_STACK_SIZE; - . = ALIGN(4); + . = ALIGN(8); PROVIDE (__stack_fiq_end = .); PROVIDE (__stack_irq_start = .); . += IRQ_STACK_SIZE; - . = ALIGN(4); + . = ALIGN(8); PROVIDE (__stack_irq_end = .); PROVIDE (__stack_abt_start = .); . += ABT_STACK_SIZE; - . = ALIGN(4); + . = ALIGN(8); PROVIDE (__stack_abt_end = .); PROVIDE (__stack_und_start = .); . += UND_STACK_SIZE; - . = ALIGN(4); + . = ALIGN(8); PROVIDE (__stack_und_end = .); PROVIDE (__stack_svc_start = .); . += SVC_STACK_SIZE; - . = ALIGN(4); + . = ALIGN(8); PROVIDE (__stack_svc_end = .); PROVIDE (__stack_end = .); diff --git a/bertos/cpu/arm/scripts/at91sam7_256_ram.ld b/bertos/cpu/arm/scripts/at91sam7_256_ram.ld index 3b5279c4..f1b54a93 100644 --- a/bertos/cpu/arm/scripts/at91sam7_256_ram.ld +++ b/bertos/cpu/arm/scripts/at91sam7_256_ram.ld @@ -114,27 +114,27 @@ SECTIONS PROVIDE (__stack_fiq_start = .); . += FIQ_STACK_SIZE; - . = ALIGN(4); + . = ALIGN(8); PROVIDE (__stack_fiq_end = .); PROVIDE (__stack_irq_start = .); . += IRQ_STACK_SIZE; - . = ALIGN(4); + . = ALIGN(8); PROVIDE (__stack_irq_end = .); PROVIDE (__stack_abt_start = .); . += ABT_STACK_SIZE; - . = ALIGN(4); + . = ALIGN(8); PROVIDE (__stack_abt_end = .); PROVIDE (__stack_und_start = .); . += UND_STACK_SIZE; - . = ALIGN(4); + . = ALIGN(8); PROVIDE (__stack_und_end = .); PROVIDE (__stack_svc_start = .); . += SVC_STACK_SIZE; - . = ALIGN(4); + . = ALIGN(8); PROVIDE (__stack_svc_end = .); PROVIDE (__stack_end = .); diff --git a/bertos/cpu/arm/scripts/at91sam7_256_rom.ld b/bertos/cpu/arm/scripts/at91sam7_256_rom.ld index 7c20aa9d..5efb78b9 100644 --- a/bertos/cpu/arm/scripts/at91sam7_256_rom.ld +++ b/bertos/cpu/arm/scripts/at91sam7_256_rom.ld @@ -114,27 +114,27 @@ SECTIONS PROVIDE (__stack_fiq_start = .); . += FIQ_STACK_SIZE; - . = ALIGN(4); + . = ALIGN(8); PROVIDE (__stack_fiq_end = .); PROVIDE (__stack_irq_start = .); . += IRQ_STACK_SIZE; - . = ALIGN(4); + . = ALIGN(8); PROVIDE (__stack_irq_end = .); PROVIDE (__stack_abt_start = .); . += ABT_STACK_SIZE; - . = ALIGN(4); + . = ALIGN(8); PROVIDE (__stack_abt_end = .); PROVIDE (__stack_und_start = .); . += UND_STACK_SIZE; - . = ALIGN(4); + . = ALIGN(8); PROVIDE (__stack_und_end = .); PROVIDE (__stack_svc_start = .); . += SVC_STACK_SIZE; - . = ALIGN(4); + . = ALIGN(8); PROVIDE (__stack_svc_end = .); PROVIDE (__stack_end = .); diff --git a/bertos/cpu/arm/scripts/at91sam7_512_ram.ld b/bertos/cpu/arm/scripts/at91sam7_512_ram.ld index 66c4f167..64d2ad56 100644 --- a/bertos/cpu/arm/scripts/at91sam7_512_ram.ld +++ b/bertos/cpu/arm/scripts/at91sam7_512_ram.ld @@ -114,27 +114,27 @@ SECTIONS PROVIDE (__stack_fiq_start = .); . += FIQ_STACK_SIZE; - . = ALIGN(4); + . = ALIGN(8); PROVIDE (__stack_fiq_end = .); PROVIDE (__stack_irq_start = .); . += IRQ_STACK_SIZE; - . = ALIGN(4); + . = ALIGN(8); PROVIDE (__stack_irq_end = .); PROVIDE (__stack_abt_start = .); . += ABT_STACK_SIZE; - . = ALIGN(4); + . = ALIGN(8); PROVIDE (__stack_abt_end = .); PROVIDE (__stack_und_start = .); . += UND_STACK_SIZE; - . = ALIGN(4); + . = ALIGN(8); PROVIDE (__stack_und_end = .); PROVIDE (__stack_svc_start = .); . += SVC_STACK_SIZE; - . = ALIGN(4); + . = ALIGN(8); PROVIDE (__stack_svc_end = .); PROVIDE (__stack_end = .); diff --git a/bertos/cpu/arm/scripts/at91sam7_512_rom.ld b/bertos/cpu/arm/scripts/at91sam7_512_rom.ld index 4826fc0d..bb7453ab 100644 --- a/bertos/cpu/arm/scripts/at91sam7_512_rom.ld +++ b/bertos/cpu/arm/scripts/at91sam7_512_rom.ld @@ -114,27 +114,27 @@ SECTIONS PROVIDE (__stack_fiq_start = .); . += FIQ_STACK_SIZE; - . = ALIGN(4); + . = ALIGN(8); PROVIDE (__stack_fiq_end = .); PROVIDE (__stack_irq_start = .); . += IRQ_STACK_SIZE; - . = ALIGN(4); + . = ALIGN(8); PROVIDE (__stack_irq_end = .); PROVIDE (__stack_abt_start = .); . += ABT_STACK_SIZE; - . = ALIGN(4); + . = ALIGN(8); PROVIDE (__stack_abt_end = .); PROVIDE (__stack_und_start = .); . += UND_STACK_SIZE; - . = ALIGN(4); + . = ALIGN(8); PROVIDE (__stack_und_end = .); PROVIDE (__stack_svc_start = .); . += SVC_STACK_SIZE; - . = ALIGN(4); + . = ALIGN(8); PROVIDE (__stack_svc_end = .); PROVIDE (__stack_end = .); diff --git a/bertos/cpu/arm/scripts/at91sam7_64_ram.ld b/bertos/cpu/arm/scripts/at91sam7_64_ram.ld index 124edf79..7f69be16 100644 --- a/bertos/cpu/arm/scripts/at91sam7_64_ram.ld +++ b/bertos/cpu/arm/scripts/at91sam7_64_ram.ld @@ -114,27 +114,27 @@ SECTIONS PROVIDE (__stack_fiq_start = .); . += FIQ_STACK_SIZE; - . = ALIGN(4); + . = ALIGN(8); PROVIDE (__stack_fiq_end = .); PROVIDE (__stack_irq_start = .); . += IRQ_STACK_SIZE; - . = ALIGN(4); + . = ALIGN(8); PROVIDE (__stack_irq_end = .); PROVIDE (__stack_abt_start = .); . += ABT_STACK_SIZE; - . = ALIGN(4); + . = ALIGN(8); PROVIDE (__stack_abt_end = .); PROVIDE (__stack_und_start = .); . += UND_STACK_SIZE; - . = ALIGN(4); + . = ALIGN(8); PROVIDE (__stack_und_end = .); PROVIDE (__stack_svc_start = .); . += SVC_STACK_SIZE; - . = ALIGN(4); + . = ALIGN(8); PROVIDE (__stack_svc_end = .); PROVIDE (__stack_end = .); diff --git a/bertos/cpu/arm/scripts/at91sam7_64_rom.ld b/bertos/cpu/arm/scripts/at91sam7_64_rom.ld index 93469d4e..2fe0c506 100644 --- a/bertos/cpu/arm/scripts/at91sam7_64_rom.ld +++ b/bertos/cpu/arm/scripts/at91sam7_64_rom.ld @@ -114,22 +114,22 @@ SECTIONS PROVIDE (__stack_fiq_start = .); . += FIQ_STACK_SIZE; - . = ALIGN(4); + . = ALIGN(8); PROVIDE (__stack_fiq_end = .); PROVIDE (__stack_irq_start = .); . += IRQ_STACK_SIZE; - . = ALIGN(4); + . = ALIGN(8); PROVIDE (__stack_irq_end = .); PROVIDE (__stack_abt_start = .); . += ABT_STACK_SIZE; - . = ALIGN(4); + . = ALIGN(8); PROVIDE (__stack_abt_end = .); PROVIDE (__stack_und_start = .); . += UND_STACK_SIZE; - . = ALIGN(4); + . = ALIGN(8); PROVIDE (__stack_und_end = .); PROVIDE (__stack_svc_start = .);