From c23957170f7d4bdaf0b0bbe7cf54994fbc607c51 Mon Sep 17 00:00:00 2001 From: Joel Sherrill Date: Sat, 14 Jul 2012 14:26:20 -0500 Subject: sparc linkcmds.base: Add new FreeBSD TCP/IP stack sections --- c/src/lib/libbsp/i386/pc386/startup/linkcmds | 16 ++++++---- .../lib/libbsp/sparc/shared/startup/linkcmds.base | 35 +++++++++++++++------- 2 files changed, 34 insertions(+), 17 deletions(-) diff --git a/c/src/lib/libbsp/i386/pc386/startup/linkcmds b/c/src/lib/libbsp/i386/pc386/startup/linkcmds index ada68cc2b3..e3392c9cce 100644 --- a/c/src/lib/libbsp/i386/pc386/startup/linkcmds +++ b/c/src/lib/libbsp/i386/pc386/startup/linkcmds @@ -70,27 +70,31 @@ SECTIONS KEEP (*(.text.*personality*)) /* .gnu.warning sections are handled specially by elf32.em. */ *(.gnu.warning) - /* - * Special FreeBSD sysctl sections. - */ - . = ALIGN (16); + + } =0x90909090 + + .robsdsets : { + /* for pre rtems-libbsd FreeBSD code */ __start_set_sysctl_set = .; *(set_sysctl_*); - __stop_set_sysctl_set = ABSOLUTE(.); + __stop_set_sysctl_set = .; *(set_domain_*); *(set_pseudo_*); + + /* for rtems-libbsd FreeBSD code */ _bsd__start_set_modmetadata_set = .; *(_bsd_set_modmetadata_set); _bsd__stop_set_modmetadata_set = .; + _bsd__start_set_sysctl_set = .; *(_bsd_set_sysctl_set); _bsd__stop_set_sysctl_set = .; + _bsd__start_set_sysinit_set = .; *(_bsd_set_sysinit_*); _bsd__stop_set_sysinit_set = .; bsp_section_rodata_end = .; - } =0x90909090 .init : diff --git a/c/src/lib/libbsp/sparc/shared/startup/linkcmds.base b/c/src/lib/libbsp/sparc/shared/startup/linkcmds.base index 1bbb77374e..47e67836bd 100644 --- a/c/src/lib/libbsp/sparc/shared/startup/linkcmds.base +++ b/c/src/lib/libbsp/sparc/shared/startup/linkcmds.base @@ -62,16 +62,6 @@ SECTIONS *(.text*) . = ALIGN (16); - /* - * Special FreeBSD sysctl sections. - */ - . = ALIGN (16); - __start_set_sysctl_set = .; - *(set_sysctl_*); - __stop_set_sysctl_set = ABSOLUTE(.); - *(set_domain_*); - *(set_pseudo_*); - *(.eh_frame) . = ALIGN (16); @@ -116,8 +106,31 @@ SECTIONS *(.lit) *(.shdata) . = ALIGN (16); - _endtext = .; } > ram + .robsdsets : { + /* for pre rtems-libbsd FreeBSD code */ + __start_set_sysctl_set = .; + *(set_sysctl_*); + __stop_set_sysctl_set = .; + *(set_domain_*); + *(set_pseudo_*); + + /* for rtems-libbsd FreeBSD code */ + _bsd__start_set_modmetadata_set = .; + *(_bsd_set_modmetadata_set); + _bsd__stop_set_modmetadata_set = .; + + _bsd__start_set_sysctl_set = .; + *(_bsd_set_sysctl_set); + _bsd__stop_set_sysctl_set = .; + + _bsd__start_set_sysinit_set = .; + *(_bsd_set_sysinit_*); + _bsd__stop_set_sysinit_set = .; + + bsp_section_rodata_end = .; + } >ram + _endtext = .; .rela.dyn : { *(.rela.init) -- cgit v1.2.3