* ldmain.c (main): Error if --gc-sections and
authorCatherine Moore <clm@redhat.com>
Mon, 5 Oct 1998 14:48:32 +0000 (14:48 +0000)
committerCatherine Moore <clm@redhat.com>
Mon, 5 Oct 1998 14:48:32 +0000 (14:48 +0000)
        dyanmic linking.
        * scripttempl/v850.sc:  Add KEEP attribute to .init,
        .fini, .dtors and .ctors.  Add .data and .text
        wildcards to support section garbage collection.

ld/ChangeLog
ld/scripttempl/v850.sc

index f79d7d46df7374205a891a1a9680f7474d494fb9..b3f06a59684fc3c7c7a56e574ee38e676522aac9 100644 (file)
@@ -1,3 +1,11 @@
+Mon Oct  5 09:40:43 1998  Catherine Moore  <clm@cygnus.com>
+  
+        * ldmain.c (main):  Error if --gc-sections and 
+        dyanmic linking.
+        * scripttempl/v850.sc:  Add KEEP attribute to .init,
+        .fini, .dtors and .ctors.  Add .data and .text
+        wildcards to support section garbage collection.
+
 Wed Sep 30 11:19:15 1998  Nick Clifton  <nickc@cygnus.com>
 
        * scripttempl/v850.sc: Rename .call_table section to
index 4b6ac643a6a533079917747091febfae751f0bf1..b4cda3a3bbadaa8cf6870458a42df4d1c74d160f 100644 (file)
@@ -55,11 +55,12 @@ SECTIONS
   .rela.bss    : { *(.rela.bss) }
   .rel.plt     : { *(.rel.plt) }
   .rela.plt    : { *(.rela.plt) }
-  .init                : { *(.init) } =0
+  .init                : { KEEP (*(.init)) } =0
   .plt         : { *(.plt) }
 
   .text                : {
     *(.text)
+    ${RELOCATING+*(.text.*)}
     /* .gnu.warning sections are handled specially by elf32.em.  */
     *(.gnu.warning)
     *(.gnu.linkonce.t*)
@@ -83,25 +84,26 @@ SECTIONS
 
 /* end-sanitize-v850e */
 
-  .fini                : { *(.fini)    } =0
-  .rodata      : { *(.rodata) *(.gnu.linkonce.r*) }
+  .fini                : { KEEP (*(.fini))    } =0
+  .rodata      : { *(.rodata) ${RELOCATING+*(.rodata.*)} *(.gnu.linkonce.r*) }
   .rodata1     : { *(.rodata1) }
 
   .data                : {
     *(.data)
+    ${RELOCATING+*(.data.*)}
     *(.gnu.linkonce.d*)
     CONSTRUCTORS
   }
   .data1       : { *(.data1) }
   .ctors       : {
     ${RELOCATING+___ctors = .;}
-    *(.ctors)
+    KEEP (*(.ctors))
     ${RELOCATING+___ctors_end = .;}
   }
 
   .dtors       : {
     ${RELOCATING+___dtors = .;}
-    *(.dtors)
+    KEEP (*(.dtors))
     ${RELOCATING+___dtors_end = .;}
   }