forked from Imagelibrary/rtems
Added more sections and made minor modifications to let the linkcmds
work with m68k-elf on late model versions of binutils (990901+) without overlapping or missing section errors.
This commit is contained in:
@@ -49,14 +49,20 @@ SECTIONS
|
||||
*(.dtors)
|
||||
LONG(0)
|
||||
__DTOR_END__ = .;
|
||||
|
||||
_rodata_start = . ;
|
||||
*(.rodata)
|
||||
*(.gnu.linkonce.r*)
|
||||
_erodata = ALIGN( 0x10 ) ;
|
||||
|
||||
etext = ALIGN( 0x10 ) ;
|
||||
}
|
||||
.rodata : { *(.rodata) *(.gnu.linkonce.r*) } >RAM
|
||||
.data 0x010000 :
|
||||
{
|
||||
data_start = . ;
|
||||
*(.data)
|
||||
*(.gnu.linkonce.d.*)
|
||||
*(.gcc_except_table)
|
||||
edata = ALIGN( 0x10 ) ;
|
||||
}
|
||||
.bss ADDR( .data ) + SIZEOF( .data ):
|
||||
|
||||
@@ -57,9 +57,15 @@ SECTIONS {
|
||||
*(.text)
|
||||
. = ALIGN (16);
|
||||
|
||||
*(.gnu.linkonce.t.*)
|
||||
*(.descriptors)
|
||||
/* .gnu.warning sections are handled specially by elf32.em. */
|
||||
*(.gnu.warning)
|
||||
|
||||
*(.eh_fram)
|
||||
. = ALIGN (16);
|
||||
|
||||
*(.gcc_exc)
|
||||
/*
|
||||
* C++ constructors
|
||||
*/
|
||||
@@ -74,12 +80,19 @@ SECTIONS {
|
||||
LONG(0)
|
||||
__DTOR_END__ = .;
|
||||
|
||||
_rodata_start = . ;
|
||||
*(.rodata)
|
||||
*(.gnu.linkonce.r*)
|
||||
_erodata = ALIGN( 0x10 ) ;
|
||||
|
||||
etext = .;
|
||||
_etext = .;
|
||||
} >ram
|
||||
.data : {
|
||||
copy_start = .;
|
||||
*(.data)
|
||||
*(.gnu.linkonce.d*)
|
||||
*(.gcc_except_table)
|
||||
. = ALIGN (16);
|
||||
_edata = .;
|
||||
copy_end = .;
|
||||
|
||||
@@ -31,6 +31,9 @@ SECTIONS
|
||||
*(.eh_fram)
|
||||
. = ALIGN (16);
|
||||
|
||||
. = ALIGN (16);
|
||||
*(.gcc_exc)
|
||||
|
||||
/*
|
||||
* C++ constructors
|
||||
*/
|
||||
@@ -47,16 +50,14 @@ SECTIONS
|
||||
etext = ALIGN( 0x10 ) ;
|
||||
_etext = .;
|
||||
}
|
||||
.data ADDR( .text ) + SIZEOF( .text ):
|
||||
{
|
||||
.data : {
|
||||
data_start = . ;
|
||||
_data_start = .;
|
||||
*(.data)
|
||||
edata = ALIGN( 0x10 ) ;
|
||||
_edata = .;
|
||||
}
|
||||
.bss ADDR( .data ) + SIZEOF( .data ):
|
||||
{
|
||||
.bss : {
|
||||
bss_start = . ;
|
||||
_bss_start = . ;
|
||||
*(.bss)
|
||||
|
||||
@@ -47,16 +47,14 @@ SECTIONS
|
||||
etext = ALIGN( 0x10 ) ;
|
||||
_etext = .;
|
||||
}
|
||||
.data ADDR( .text ) + SIZEOF( .text ):
|
||||
{
|
||||
.data : {
|
||||
data_start = . ;
|
||||
_data_start = .;
|
||||
*(.data)
|
||||
edata = ALIGN( 0x10 ) ;
|
||||
_edata = .;
|
||||
}
|
||||
.bss ADDR( .data ) + SIZEOF( .data ):
|
||||
{
|
||||
.bss : {
|
||||
bss_start = . ;
|
||||
_bss_start = . ;
|
||||
*(.bss)
|
||||
|
||||
@@ -52,16 +52,14 @@ SECTIONS
|
||||
etext = ALIGN( 0x10 ) ;
|
||||
_etext = .;
|
||||
}
|
||||
.data ADDR( .text ) + SIZEOF( .text ):
|
||||
{
|
||||
.data : {
|
||||
data_start = . ;
|
||||
_data_start = .;
|
||||
*(.data)
|
||||
edata = ALIGN( 0x10 ) ;
|
||||
_edata = .;
|
||||
}
|
||||
.bss ADDR( .data ) + SIZEOF( .data ):
|
||||
{
|
||||
.bss : {
|
||||
bss_start = . ;
|
||||
_bss_start = . ;
|
||||
*(.bss)
|
||||
|
||||
@@ -33,6 +33,11 @@ SECTIONS
|
||||
*(.text)
|
||||
. = ALIGN (16);
|
||||
|
||||
*(.gnu.linkonce.t.*)
|
||||
*(.descriptors)
|
||||
/* .gnu.warning sections are handled specially by elf32.em. */
|
||||
*(.gnu.warning)
|
||||
|
||||
*(.eh_fram)
|
||||
. = ALIGN (16);
|
||||
|
||||
@@ -49,6 +54,12 @@ SECTIONS
|
||||
*(.dtors)
|
||||
LONG(0)
|
||||
__DTOR_END__ = .;
|
||||
|
||||
_rodata_start = . ;
|
||||
*(.rodata)
|
||||
*(.gnu.linkonce.r*)
|
||||
_erodata = ALIGN( 0x10 ) ;
|
||||
|
||||
etext = ALIGN( 0x10 ) ;
|
||||
_etext = .;
|
||||
}
|
||||
@@ -57,6 +68,8 @@ SECTIONS
|
||||
data_start = . ;
|
||||
_data_start = .;
|
||||
*(.data)
|
||||
*(.gnu.linkonce.d*)
|
||||
*(.gcc_except_table)
|
||||
edata = ALIGN( 0x10 ) ;
|
||||
_edata = .;
|
||||
}
|
||||
|
||||
@@ -53,14 +53,12 @@ SECTIONS
|
||||
__DTOR_END__ = .;
|
||||
etext = ALIGN( 0x10 ) ;
|
||||
}
|
||||
.data ADDR( .text ) + SIZEOF( .text ):
|
||||
{
|
||||
.data : {
|
||||
data_start = . ;
|
||||
*(.data)
|
||||
edata = ALIGN( 0x10 ) ;
|
||||
}
|
||||
.bss ADDR( .data ) + SIZEOF( .data ):
|
||||
{
|
||||
.bss : {
|
||||
bss_start = . ;
|
||||
*(.bss)
|
||||
*(COMMON)
|
||||
|
||||
@@ -7,6 +7,13 @@
|
||||
|
||||
SECTIONS
|
||||
{
|
||||
.vtable 0 :
|
||||
{
|
||||
vtable_start = .;
|
||||
*(.vtable)
|
||||
evtable = .;
|
||||
}
|
||||
|
||||
.text . :
|
||||
{
|
||||
text_start = .;
|
||||
@@ -31,22 +38,13 @@ SECTIONS
|
||||
__DTOR_END__ = .;
|
||||
}
|
||||
|
||||
.vtable 0 :
|
||||
{
|
||||
vtable_start = .;
|
||||
*(.vtable)
|
||||
evtable = .;
|
||||
}
|
||||
|
||||
.data (ADDR(.vtable) + SIZEOF(.vtable)) :
|
||||
AT (ADDR(.text) + SIZEOF(.text))
|
||||
{
|
||||
.data : {
|
||||
data_start = .;
|
||||
*(.data)
|
||||
*(.rodata)
|
||||
edata = .;
|
||||
}
|
||||
.bss (ADDR(.data) + SIZEOF(.data)) :
|
||||
{
|
||||
.bss : {
|
||||
bss_start = .;
|
||||
*(.bss)
|
||||
*(COMMON)
|
||||
|
||||
Reference in New Issue
Block a user