]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blobdiff - ld/scripttempl/mcorepe.sc
Update year range in copyright notice of binutils files
[thirdparty/binutils-gdb.git] / ld / scripttempl / mcorepe.sc
index 65f770cabfadded8855b57c083dbfb5b76655f2d..2da23ee164f0748a1eb8c35e77fcbb97b76e0b5a 100644 (file)
@@ -1,4 +1,10 @@
 # Linker script for MCore PE.
+#
+# Copyright (C) 2014-2022 Free Software Foundation, Inc.
+#
+# Copying and distribution of this file, with or without modification,
+# are permitted in any medium without royalty provided the copyright
+# notice and this notice are preserved.
 
 if test -z "${RELOCATEABLE_OUTPUT_FORMAT}"; then
   RELOCATEABLE_OUTPUT_FORMAT=${OUTPUT_FORMAT}
@@ -40,30 +46,37 @@ if test "$RELOCATING"; then
   # because bash 2.x will lose the doublequotes.
   cat <<EOF
 OUTPUT_FORMAT("${OUTPUT_FORMAT}", "${BIG_OUTPUT_FORMAT}",
-                          "${LITTLE_OUTPUT_FORMAT}")}
+                          "${LITTLE_OUTPUT_FORMAT}")
 EOF
 fi
 
 cat <<EOF
+/* Copyright (C) 2014-2022 Free Software Foundation, Inc.
+
+   Copying and distribution of this script, with or without modification,
+   are permitted in any medium without royalty provided the copyright
+   notice and this notice are preserved.  */
+
 ${LIB_SEARCH_DIRS}
 
-ENTRY(_mainCRTStartup)
+${RELOCATING+ENTRY (_mainCRTStartup)}
 
 SECTIONS
 {
-  .text ${RELOCATING+ __image_base__ + __section_alignment__ } : 
+  .text ${RELOCATING+ __image_base__ + __section_alignment__ } :
   {
-    ${RELOCATING+ *(.init)}
+    ${RELOCATING+ KEEP (*(SORT_NONE(.init)))}
     *(.text)
     ${R_TEXT}
+    ${RELOCATING+ *(.text.*)}
     *(.glue_7t)
     *(.glue_7)
-    ${CONSTRUCTING+ ___CTOR_LIST__ = .; __CTOR_LIST__ = . ; 
+    ${CONSTRUCTING+ ___CTOR_LIST__ = .; __CTOR_LIST__ = . ;
                        LONG (-1); *(.ctors); *(.ctor); LONG (0); }
-    ${CONSTRUCTING+ ___DTOR_LIST__ = .; __DTOR_LIST__ = . ; 
+    ${CONSTRUCTING+ ___DTOR_LIST__ = .; __DTOR_LIST__ = . ;
                        LONG (-1); *(.dtors); *(.dtor);  LONG (0); }
-    ${RELOCATING+ *(.fini)}
-    /* ??? Why is .gcc_exc here?  */
+    ${RELOCATING+ KEEP (*(SORT_NONE(.fini)))}
+    ${RELOCATING+/* ??? Why is .gcc_exc here?  */}
     ${RELOCATING+ *(.gcc_exc)}
     ${RELOCATING+ etext = .;}
     *(.gcc_except_table)
@@ -73,9 +86,9 @@ SECTIONS
      on fork.  This used to be named ".data$nocopy".  The linker used
      to include this between __data_start__ and __data_end__, but that
      breaks building the cygwin32 dll.  Instead, we name the section
-     ".data_cygwin_nocopy" and explictly include it after __data_end__. */
+     ".data_cygwin_nocopy" and explicitly include it after __data_end__. */
 
-  .data ${RELOCATING+BLOCK(__section_alignment__)} : 
+  .data ${RELOCATING+BLOCK(__section_alignment__)} :
   {
     ${RELOCATING+__data_start__ = . ;}
     *(.data)
@@ -120,7 +133,7 @@ SECTIONS
     ${R_IDATA}
   }
   .CRT ${RELOCATING+BLOCK(__section_alignment__)} :
-  {                                    
+  {
     ${R_CRT}
   }
 
@@ -133,12 +146,12 @@ SECTIONS
   }
 
   .reloc ${RELOCATING+BLOCK(__section_alignment__)} :
-  {                                    
+  {
     *(.reloc)
   }
 
   .rsrc ${RELOCATING+BLOCK(__section_alignment__)} :
-  {                                    
+  {
     *(.rsrc)
     ${R_RSRC}
   }
@@ -155,7 +168,7 @@ SECTIONS
 
   .stack 0x80000 :
   {
-    _stack = .;
+    PROVIDE(_stack = .);
     *(.stack)
   }
 }