From: batt Date: Thu, 1 Apr 2010 17:12:39 +0000 (+0000) Subject: ARM7TDMI: add sections for exception handlers. X-Git-Tag: 2.5.0~532 X-Git-Url: https://codewiz.org/gitweb?a=commitdiff_plain;h=abe3971a48275b87ad9369ab67d2a64bb51e6ca1;p=bertos.git ARM7TDMI: add sections for exception handlers. git-svn-id: https://src.develer.com/svnoss/bertos/trunk@3376 38d2e660-2303-0410-9eaa-f027e97ec537 --- diff --git a/bertos/cpu/arm/hw/crt_arm7tdmi.S b/bertos/cpu/arm/hw/crt_arm7tdmi.S index d06b9a07..bf80e7e3 100644 --- a/bertos/cpu/arm/hw/crt_arm7tdmi.S +++ b/bertos/cpu/arm/hw/crt_arm7tdmi.S @@ -177,7 +177,7 @@ __dummy_init: .ltorg - .section .vectors, "ax", %progbits + .section .exceptions, "ax", %progbits __xcpt_dummy_undef: b __xcpt_dummy_undef diff --git a/bertos/cpu/arm/scripts/arm7tdmi_ram.ld b/bertos/cpu/arm/scripts/arm7tdmi_ram.ld index 6345397c..278256ea 100644 --- a/bertos/cpu/arm/scripts/arm7tdmi_ram.ld +++ b/bertos/cpu/arm/scripts/arm7tdmi_ram.ld @@ -36,7 +36,6 @@ * */ -ENTRY(_init) OUTPUT_FORMAT("elf32-littlearm", "elf32-bigarm", "elf32-littlearm") OUTPUT_ARCH(arm) @@ -58,7 +57,9 @@ SECTIONS { KEEP(*(.vectors)); . = ALIGN (4); - KEEP(*(.init)); + KEEP(*(.exceptions)); + . = ALIGN (4); + *(.init); . = ALIGN (4); *(.rodata .rodata.*); . = ALIGN (4); @@ -73,10 +74,10 @@ SECTIONS *(.ctors); . = ALIGN(4); *(.dtors); + _etext = .; + PROVIDE (__etext = .); } > ram - _etext = .; - PROVIDE (__etext = .); .data : AT (_etext) { diff --git a/bertos/cpu/arm/scripts/arm7tdmi_rom.ld b/bertos/cpu/arm/scripts/arm7tdmi_rom.ld index 7875df40..a4715b1b 100644 --- a/bertos/cpu/arm/scripts/arm7tdmi_rom.ld +++ b/bertos/cpu/arm/scripts/arm7tdmi_rom.ld @@ -57,6 +57,8 @@ SECTIONS { KEEP(*(.vectors)); . = ALIGN (4); + KEEP(*(.exceptions)); + . = ALIGN (4); *(.init); . = ALIGN (4); *(.rodata .rodata.*);