* doc/as.texinfo: Document M and S ELF section flags.
authorJakub Jelinek <jakub@redhat.com>
Fri, 5 Oct 2001 16:36:55 +0000 (16:36 +0000)
committerJakub Jelinek <jakub@redhat.com>
Fri, 5 Oct 2001 16:36:55 +0000 (16:36 +0000)
* emultempl/elf32.em (gld_*_list_options): Include -z combreloc and
-z nocombreloc in usage.

gas/ChangeLog
gas/doc/as.texinfo
ld/ChangeLog
ld/emultempl/elf32.em

index fe25ca9..34095c5 100644 (file)
@@ -1,3 +1,7 @@
+2001-10-05  Jakub Jelinek  <jakub@redhat.com>
+
+       * doc/as.texinfo: Document M and S ELF section flags.
+
 2001-10-05  Alan Modra  <amodra@bigpond.net.au>
 
        * subsegs.c (subseg_text_p): Return 0 for absolute section.
index 7e40900..83f1435 100644 (file)
@@ -4896,7 +4896,7 @@ This is one of the ELF section stack manipulation directives.  The others are
 For ELF targets, the @code{.section} directive is used like this:
 
 @smallexample
-.section @var{name} [, "@var{flags}"[, @@@var{type}]]
+.section @var{name} [, "@var{flags}"[, @@@var{type}[, @@@var{entsize}]]]
 @end smallexample
 
 The optional @var{flags} argument is a quoted string which may contain any
@@ -4908,6 +4908,10 @@ section is allocatable
 section is writable
 @item x
 section is executable
+@item M
+section is mergeable
+@item S
+section contains zero terminated strings
 @end table
 
 The optional @var{type} argument may contain one of the following constants:
@@ -4918,6 +4922,13 @@ section contains data
 section does not contain data (i.e., section only occupies space)
 @end table
 
+If @var{flags} contains @code{M} flag, @var{type} argument must be specified
+as well as @var{entsize} argument. Sections with @code{M} flag but not
+@code{S} flag must contain fixed size constants, each @var{entsize} octets
+long. Sections with both @code{M} and @code{S} must contain zero terminated
+strings where each character is @var{entsize} bytes long. The linker may remove
+duplicates within sections with the same name, same entity size and same flags. 
+
 If no flags are specified, the default flags depend upon the section name.  If
 the section name is not recognized, the default will be for the section to have
 none of the above flags: it will not be allocated in memory, nor writable, nor
index c638abc..64e4b54 100644 (file)
@@ -1,3 +1,8 @@
+2001-10-05  Jakub Jelinek  <jakub@redhat.com>
+
+       * emultempl/elf32.em (gld_*_list_options): Include -z combreloc and
+       -z nocombreloc in usage.
+
 2001-10-03  Jim Blandy  <jimb@redhat.com>
 
        * genscripts.sh: Include a comment at the top of each generated
index c9cf50d..1057955 100644 (file)
@@ -1555,10 +1555,12 @@ cat >>e${EMULATION_NAME}.c <<EOF
   fprintf (file, _("  -Bgroup\t\tSelects group name lookup rules for DSO\n"));
   fprintf (file, _("  --disable-new-dtags\tDisable new dynamic tags\n"));
   fprintf (file, _("  --enable-new-dtags\tEnable new dynamic tags\n"));
+  fprintf (file, _("  -z combreloc\t\tMerge dynamic relocs into one section and sort\n"));
   fprintf (file, _("  -z defs\t\tDisallows undefined symbols\n"));
   fprintf (file, _("  -z initfirst\t\tMark DSO to be initialized first at runtime\n"));
   fprintf (file, _("  -z interpose\t\tMark object to interpose all DSOs but executable\n"));
   fprintf (file, _("  -z loadfltr\t\tMark object requiring immediate process\n"));
+  fprintf (file, _("  -z nocombreloc\t\tDon't merge dynamic relocs into one section\n"));
   fprintf (file, _("  -z nodefaultlib\tMark object not to use default search paths\n"));
   fprintf (file, _("  -z nodelete\t\tMark DSO non-deletable at runtime\n"));
   fprintf (file, _("  -z nodlopen\t\tMark DSO not available to dlopen\n"));