From 4ca5bd8b9381f8720af1c356b40d0cc4c4dcc126 Mon Sep 17 00:00:00 2001 From: Joel Sherrill Date: Wed, 30 Sep 1998 17:27:57 +0000 Subject: Changed based on patch from pc386 linkcmds from Ian Lance Taylor : The pc386 linker scripts omits .gnu.linkonce.r* sections. It's not a big deal, but they should be treated like .rodata sections. ELF versions of g++ generate them for static constants defined in template classes, such as string::npos. --- c/src/lib/libbsp/i386/force386/startup/linkcmds | 2 +- c/src/lib/libbsp/mips/p4000/startup/linkcmds | 2 +- c/src/lib/libbsp/mips64orion/p4000/startup/linkcmds | 2 +- c/src/lib/libbsp/no_cpu/no_bsp/startup/linkcmds | 2 +- c/src/lib/libbsp/powerpc/papyrus/startup/linkcmds | 1 + c/src/lib/libbsp/powerpc/psim/startup/linkcmds | 2 +- 6 files changed, 6 insertions(+), 5 deletions(-) diff --git a/c/src/lib/libbsp/i386/force386/startup/linkcmds b/c/src/lib/libbsp/i386/force386/startup/linkcmds index 17756dd5bd..3892b7dedf 100644 --- a/c/src/lib/libbsp/i386/force386/startup/linkcmds +++ b/c/src/lib/libbsp/i386/force386/startup/linkcmds @@ -50,7 +50,7 @@ SECTIONS .init : { *(.init) } >RAM .fini : { *(.fini) } >RAM - .rodata : { *(.rodata) } >RAM + .rodata : { *(.rodata) *(.gnu.linkonce.r*) } >RAM .data : { diff --git a/c/src/lib/libbsp/mips/p4000/startup/linkcmds b/c/src/lib/libbsp/mips/p4000/startup/linkcmds index 858317853c..47e0ba1162 100644 --- a/c/src/lib/libbsp/mips/p4000/startup/linkcmds +++ b/c/src/lib/libbsp/mips/p4000/startup/linkcmds @@ -23,7 +23,7 @@ SECTIONS .fini ALIGN(8) : { *(.fini) } =0 .ctors ALIGN(8) : { *(.ctors) } .dtors ALIGN(8) : { *(.dtors) } - .rodata ALIGN(8) : { *(.rodata) } + .rodata ALIGN(8) : { *(.rodata) *(.gnu.linkonce.r*) } .rodata1 ALIGN(8) : { *(.rodata1) diff --git a/c/src/lib/libbsp/mips64orion/p4000/startup/linkcmds b/c/src/lib/libbsp/mips64orion/p4000/startup/linkcmds index 858317853c..47e0ba1162 100644 --- a/c/src/lib/libbsp/mips64orion/p4000/startup/linkcmds +++ b/c/src/lib/libbsp/mips64orion/p4000/startup/linkcmds @@ -23,7 +23,7 @@ SECTIONS .fini ALIGN(8) : { *(.fini) } =0 .ctors ALIGN(8) : { *(.ctors) } .dtors ALIGN(8) : { *(.dtors) } - .rodata ALIGN(8) : { *(.rodata) } + .rodata ALIGN(8) : { *(.rodata) *(.gnu.linkonce.r*) } .rodata1 ALIGN(8) : { *(.rodata1) diff --git a/c/src/lib/libbsp/no_cpu/no_bsp/startup/linkcmds b/c/src/lib/libbsp/no_cpu/no_bsp/startup/linkcmds index 9f53170edb..7a70a029b8 100644 --- a/c/src/lib/libbsp/no_cpu/no_bsp/startup/linkcmds +++ b/c/src/lib/libbsp/no_cpu/no_bsp/startup/linkcmds @@ -1,6 +1,6 @@ /* * This file contains directives for the GNU linker which are specific - * to the FORCE CPU386 board. + * to the NO_CPU NO_BSP BOARD. * * COPYRIGHT (c) 1989-1998. * On-Line Applications Research Corporation (OAR). diff --git a/c/src/lib/libbsp/powerpc/papyrus/startup/linkcmds b/c/src/lib/libbsp/powerpc/papyrus/startup/linkcmds index 3abbdd4bfc..e772050e38 100644 --- a/c/src/lib/libbsp/powerpc/papyrus/startup/linkcmds +++ b/c/src/lib/libbsp/powerpc/papyrus/startup/linkcmds @@ -35,6 +35,7 @@ SECTIONS *(.entry2) *(.text) *(.rodata) + *(.gnu.linkonce.r*) *(.rodata1) *(.descriptors) *(rom_ver) diff --git a/c/src/lib/libbsp/powerpc/psim/startup/linkcmds b/c/src/lib/libbsp/powerpc/psim/startup/linkcmds index 72a18c487a..61b61bf5c0 100644 --- a/c/src/lib/libbsp/powerpc/psim/startup/linkcmds +++ b/c/src/lib/libbsp/powerpc/psim/startup/linkcmds @@ -65,7 +65,7 @@ SECTIONS } >RAM .init : { *(.init) } >RAM .fini : { *(.fini) } >RAM - .rodata : { *(.rodata) } >RAM + .rodata : { *(.rodata) *(.gnu.linkonce.r*) } >RAM .rodata1 : { *(.rodata1) } >RAM _etext = .; PROVIDE (etext = .); -- cgit v1.2.3