mirror of
https://github.com/devkitPro/buildscripts.git
synced 2026-08-13 13:06:34 -05:00
changes for latest binutils
This commit is contained in:
@@ -134,15 +134,10 @@ SECTIONS
|
||||
*(.bss*)
|
||||
*(COMMON)
|
||||
. = ALIGN(4); /* REQUIRED. LD is flaky without it. */
|
||||
__bss_end__ = ABSOLUTE(.);
|
||||
__end__ = ABSOLUTE(.);
|
||||
} >iwram
|
||||
|
||||
__bss_end = . ;
|
||||
__bss_end__ = . ;
|
||||
|
||||
_end = . ;
|
||||
__end__ = . ;
|
||||
PROVIDE (end = _end);
|
||||
|
||||
/* Stabs debugging sections. */
|
||||
.stab 0 : { *(.stab) }
|
||||
.stabstr 0 : { *(.stabstr) }
|
||||
|
||||
@@ -23,8 +23,8 @@ _start:
|
||||
msr cpsr, r0
|
||||
ldr sp, =__sp_usr @ Set user stack
|
||||
|
||||
ldr r0, =__bss_start @ Clear BSS section to 0x00
|
||||
ldr r1, =__bss_end
|
||||
ldr r0, =__bss_start__ @ Clear BSS section to 0x00
|
||||
ldr r1, =__bss_end__
|
||||
sub r1, r1, r0
|
||||
bl ClearMem
|
||||
|
||||
|
||||
@@ -138,15 +138,10 @@ SECTIONS
|
||||
*(.bss*)
|
||||
*(COMMON)
|
||||
. = ALIGN(4); /* REQUIRED. LD is flaky without it. */
|
||||
__bss_end__ = ABSOLUTE(.);
|
||||
__end__ = ABSOLUTE(.);
|
||||
} >vram
|
||||
|
||||
__bss_end = . ;
|
||||
__bss_end__ = . ;
|
||||
|
||||
_end = . ;
|
||||
__end__ = . ;
|
||||
PROVIDE (end = _end);
|
||||
|
||||
/* Stabs debugging sections. */
|
||||
.stab 0 : { *(.stab) }
|
||||
.stabstr 0 : { *(.stabstr) }
|
||||
|
||||
@@ -63,8 +63,8 @@ _start:
|
||||
|
||||
bl checkARGV @ check and process argv trickery
|
||||
|
||||
ldr r0, =__bss_start @ Clear BSS section
|
||||
ldr r1, =__bss_end
|
||||
ldr r0, =__bss_start__ @ Clear BSS section
|
||||
ldr r1, =__bss_end__
|
||||
sub r1, r1, r0
|
||||
bl ClearMem
|
||||
|
||||
|
||||
@@ -171,11 +171,10 @@ SECTIONS
|
||||
*(.bss*)
|
||||
*(COMMON)
|
||||
. = ALIGN(4); /* REQUIRED. LD is flaky without it. */
|
||||
__bss_end__ = ABSOLUTE(.);
|
||||
__end__ = ABSOLUTE(.);
|
||||
} >iwram
|
||||
|
||||
__bss_end = . ;
|
||||
__bss_end__ = . ;
|
||||
|
||||
/* Stabs debugging sections. */
|
||||
.stab 0 : { *(.stab) }
|
||||
.stabstr 0 : { *(.stabstr) }
|
||||
|
||||
@@ -107,10 +107,10 @@ SECTIONS
|
||||
SORT(CONSTRUCTORS)
|
||||
. = ALIGN(4); /* REQUIRED. LD is flaky without it. */
|
||||
} >rom = 0xff
|
||||
.ARM.extab : { *(.ARM.extab* .gnu.linkonce.armextab.*) } >rom
|
||||
__exidx_start = .;
|
||||
.ARM.exidx : { *(.ARM.exidx* .gnu.linkonce.armexidx.*) } >rom
|
||||
__exidx_end = .;
|
||||
.ARM.extab : { *(.ARM.extab* .gnu.linkonce.armextab.*) } >rom
|
||||
__exidx_start = .;
|
||||
.ARM.exidx : { *(.ARM.exidx* .gnu.linkonce.armexidx.*) } >rom
|
||||
__exidx_end = .;
|
||||
|
||||
.ctors :
|
||||
{
|
||||
@@ -153,11 +153,11 @@ SECTIONS
|
||||
|
||||
.iwram __iwram_start : AT (__iwram_lma)
|
||||
{
|
||||
__iwram_start = ABSOLUTE(.) ;
|
||||
__iwram_start__ = ABSOLUTE(.) ;
|
||||
*(.iwram)
|
||||
*iwram.*(.text)
|
||||
. = ALIGN(4); /* REQUIRED. LD is flaky without it. */
|
||||
__iwram_end = ABSOLUTE(.) ;
|
||||
__iwram_end__ = ABSOLUTE(.) ;
|
||||
} >iwram = 0xff
|
||||
|
||||
__data_lma = __iwram_lma + SIZEOF(.iwram) ;
|
||||
@@ -171,15 +171,13 @@ SECTIONS
|
||||
*(.bss*)
|
||||
*(COMMON)
|
||||
. = ALIGN(4); /* REQUIRED. LD is flaky without it. */
|
||||
__bss_end = ABSOLUTE(.) ;
|
||||
__bss_end__ = ABSOLUTE(.);
|
||||
|
||||
} AT>iwram
|
||||
|
||||
__bss_end__ = __bss_end ;
|
||||
|
||||
.data ALIGN(4) : AT (__data_lma)
|
||||
{
|
||||
__data_start = ABSOLUTE(.);
|
||||
__data_start__ = ABSOLUTE(.);
|
||||
*(.data)
|
||||
*(.data.*)
|
||||
*(.gnu.linkonce.d*)
|
||||
@@ -216,7 +214,7 @@ SECTIONS
|
||||
__jcr_lma = __fini_lma + SIZEOF(.fini_array);
|
||||
.jcr : AT (__jcr_lma) { KEEP (*(.jcr)) } >iwram
|
||||
|
||||
__data_end = ABSOLUTE(.);
|
||||
__data_end__ = ABSOLUTE(.);
|
||||
__iwram_overlay_lma = __jcr_lma + SIZEOF(.jcr);
|
||||
|
||||
__iwram_overlay_start = . ;
|
||||
@@ -236,7 +234,7 @@ SECTIONS
|
||||
}>iwram = 0xff
|
||||
|
||||
__iwram_overlay_end = . ;
|
||||
__ewram_lma = __iwram_overlay_lma + (__iwram_overlay_end - __iwram_overlay_start) ;
|
||||
__ewram_lma = __iwram_overlay_lma + (__iwram_overlay_end - __iwram_overlay_start) ;
|
||||
|
||||
__iheap_start = . ;
|
||||
|
||||
@@ -251,16 +249,15 @@ SECTIONS
|
||||
|
||||
.sbss ALIGN(4)(NOLOAD):
|
||||
{
|
||||
__sbss_start = ABSOLUTE(.);
|
||||
__sbss_start__ = ABSOLUTE(.);
|
||||
*(.sbss)
|
||||
. = ALIGN(4);
|
||||
__sbss_end = ABSOLUTE(.);
|
||||
__sbss_end__ = ABSOLUTE(.);
|
||||
__end__ = ABSOLUTE(.);
|
||||
__ewram_end = ABSOLUTE(.);
|
||||
__eheap_start = ABSOLUTE(.);
|
||||
} AT>ewram
|
||||
|
||||
__ewram_end = __sbss_end ;
|
||||
__eheap_start = __sbss_end;
|
||||
__end__ = __sbss_end;
|
||||
|
||||
/* EZF Advance strips trailing 0xff bytes, add a pad section so nothing important is removed */
|
||||
.pad ALIGN(4) : AT (__pad_lma)
|
||||
{
|
||||
|
||||
@@ -104,16 +104,16 @@ SkipEWRAMClear: @ Clear Internal WRAM to 0x00
|
||||
@---------------------------------------------------------------------------------
|
||||
@ Clear BSS section to 0x00
|
||||
@---------------------------------------------------------------------------------
|
||||
ldr r0, =__bss_start
|
||||
ldr r1, =__bss_end
|
||||
ldr r0, =__bss_start__
|
||||
ldr r1, =__bss_end__
|
||||
sub r1, r0
|
||||
bl ClearMem
|
||||
|
||||
@---------------------------------------------------------------------------------
|
||||
@ Clear SBSS section to 0x00
|
||||
@---------------------------------------------------------------------------------
|
||||
ldr r0, =__sbss_start
|
||||
ldr r1, =__sbss_end
|
||||
ldr r0, =__sbss_start__
|
||||
ldr r1, =__sbss_end__
|
||||
sub r1, r0
|
||||
bl ClearMem
|
||||
|
||||
@@ -121,16 +121,16 @@ SkipEWRAMClear: @ Clear Internal WRAM to 0x00
|
||||
@ Copy initialized data (data section) from LMA to VMA (ROM to RAM)
|
||||
@---------------------------------------------------------------------------------
|
||||
ldr r1, =__data_lma
|
||||
ldr r2, =__data_start
|
||||
ldr r4, =__data_end
|
||||
ldr r2, =__data_start__
|
||||
ldr r4, =__data_end__
|
||||
bl CopyMemChk
|
||||
|
||||
@---------------------------------------------------------------------------------
|
||||
@ Copy internal work ram (iwram section) from LMA to VMA (ROM to RAM)
|
||||
@---------------------------------------------------------------------------------
|
||||
ldr r1,= __iwram_lma
|
||||
ldr r2,= __iwram_start
|
||||
ldr r4,= __iwram_end
|
||||
ldr r2,= __iwram_start__
|
||||
ldr r4,= __iwram_end__
|
||||
bl CopyMemChk
|
||||
|
||||
@---------------------------------------------------------------------------------
|
||||
|
||||
@@ -42,9 +42,8 @@ SECTIONS
|
||||
__bss_start = .;
|
||||
*(.bss)
|
||||
. = ALIGN(4);
|
||||
__bss_end__ = ABSOLUTE(.);
|
||||
__end__ = ABSOLUTE(.);
|
||||
}
|
||||
__bss_end = .;
|
||||
|
||||
__end = .;
|
||||
}
|
||||
|
||||
|
||||
@@ -161,29 +161,26 @@ SECTIONS
|
||||
|
||||
.iwram __iwram_start : AT (__iwram_lma)
|
||||
{
|
||||
__iwram_start = ABSOLUTE(.) ;
|
||||
__iwram_start__ = ABSOLUTE(.) ;
|
||||
*(.iwram)
|
||||
*iwram.*(.text)
|
||||
. = ALIGN(4); /* REQUIRED. LD is flaky without it. */
|
||||
__iwram_end = ABSOLUTE(.) ;
|
||||
__iwram_end__ = ABSOLUTE(.) ;
|
||||
} >iwram = 0xff
|
||||
|
||||
__data_lma = __iwram_lma + SIZEOF(.iwram) ;
|
||||
|
||||
.bss ALIGN(4) (NOLOAD):
|
||||
{
|
||||
__bss_start = ABSOLUTE(.);
|
||||
__bss_start__ = ABSOLUTE(.);
|
||||
*(.dynbss)
|
||||
*(.gnu.linkonce.b*)
|
||||
*(.bss*)
|
||||
*(COMMON)
|
||||
. = ALIGN(4); /* REQUIRED. LD is flaky without it. */
|
||||
__bss_end = ABSOLUTE(.) ;
|
||||
__bss_end__ = ABSOLUTE(.) ;
|
||||
}
|
||||
|
||||
__bss_end__ = __bss_end ;
|
||||
|
||||
.data ALIGN(4) : AT (__data_lma)
|
||||
{
|
||||
__data_start = ABSOLUTE(.);
|
||||
@@ -231,15 +228,14 @@ SECTIONS
|
||||
|
||||
.sbss ALIGN(4)(NOLOAD):
|
||||
{
|
||||
__sbss_start = ABSOLUTE(.);
|
||||
__sbss_start__ = ABSOLUTE(.);
|
||||
*(.sbss)
|
||||
. = ALIGN(4);
|
||||
__sbss_end = ABSOLUTE(.);
|
||||
__sbss_end__ = ABSOLUTE(.);
|
||||
__end__ = ABSOLUTE(.);
|
||||
__ewram_end = ABSOLUTE(.);
|
||||
__eheap_start = ABSOLUTE(.);
|
||||
}
|
||||
__ewram_end = __sbss_end ;
|
||||
__ewram_overlay_start = __sbss_end ;
|
||||
|
||||
|
||||
|
||||
OVERLAY ALIGN(4): NOCROSSREFS AT (__ewram_overlay_lma)
|
||||
{
|
||||
|
||||
@@ -110,9 +110,9 @@ SECTIONS
|
||||
*(.gnu.linkonce.d*)
|
||||
CONSTRUCTORS
|
||||
. = ALIGN(4); /* REQUIRED. LD is flaky without it. */
|
||||
__data_end = ABSOLUTE(.);
|
||||
} >ram = 0xff
|
||||
|
||||
__data_end = . ;
|
||||
|
||||
.bss ALIGN(4) :
|
||||
{
|
||||
@@ -124,10 +124,9 @@ SECTIONS
|
||||
*(COMMON)
|
||||
. = ALIGN(4); /* REQUIRED. LD is flaky without it. */
|
||||
__bss_end = ABSOLUTE(.) ;
|
||||
__end__ = ABSOLUTE(.) ;
|
||||
} > ram
|
||||
|
||||
__end__ = __bss_end;
|
||||
|
||||
/* Stabs debugging sections. */
|
||||
.stab 0 : { *(.stab) }
|
||||
.stabstr 0 : { *(.stabstr) }
|
||||
|
||||
@@ -169,9 +169,9 @@ SECTIONS
|
||||
*(.bss*)
|
||||
. = ALIGN(4); /* REQUIRED. LD is flaky without it. */
|
||||
__bss_end = ABSOLUTE(.);
|
||||
__end__ = ABSOLUTE(.);
|
||||
} > ram
|
||||
|
||||
__end__ = __bss_end;
|
||||
|
||||
__eheap_end = . ;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user