summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNick Clifton <nickc@redhat.com>2002-05-23 10:45:14 +0000
committerNick Clifton <nickc@redhat.com>2002-05-23 10:45:14 +0000
commit92138e1da3128a75ba8cb49579fea1ed158564a8 (patch)
tree6ad426bdc39c99a9526ffc8bef49e332192c9e1b
parent6e6c7490a1bd346a2c59ec4a3777e148f5bc1a99 (diff)
downloadbinutils-redhat-92138e1da3128a75ba8cb49579fea1ed158564a8.tar.gz
Silently ignore an 'a' flag in a COFF .section directive.
-rw-r--r--gas/ChangeLog7
-rw-r--r--gas/config/obj-coff.c36
-rw-r--r--gas/doc/as.texinfo2
3 files changed, 28 insertions, 17 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog
index 16ef4365b3..39705193d1 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,3 +1,10 @@
+2002-05-23 Nick Clifton <nickc@cambridge.redhat.com>
+
+ * config/obj-coff.c (obj_coff_section): Silently ignore an 'a'
+ flag.
+ * doc/as.texinfo: Document that the COFF version of .section
+ ignores the 'a' flag.
+
2002-05-23 Alan Modra <amodra@bigpond.net.au>
* config/tc-alpha.c (assemble_tokens): Protect use of
diff --git a/gas/config/obj-coff.c b/gas/config/obj-coff.c
index c48ba63f1b..546f763200 100644
--- a/gas/config/obj-coff.c
+++ b/gas/config/obj-coff.c
@@ -1397,23 +1397,24 @@ coff_frob_file_after_relocs ()
bfd_map_over_sections (stdoutput, coff_adjust_section_syms, (char*) 0);
}
-/*
- * implement the .section pseudo op:
- * .section name {, "flags"}
- * ^ ^
- * | +--- optional flags: 'b' for bss
- * | 'i' for info
- * +-- section name 'l' for lib
- * 'n' for noload
- * 'o' for over
- * 'w' for data
- * 'd' (apparently m88k for data)
- * 'x' for text
- * 'r' for read-only data
- * 's' for shared data (PE)
- * But if the argument is not a quoted string, treat it as a
- * subsegment number.
- */
+/* Implement the .section pseudo op:
+ .section name {, "flags"}
+ ^ ^
+ | +--- optional flags: 'b' for bss
+ | 'i' for info
+ +-- section name 'l' for lib
+ 'n' for noload
+ 'o' for over
+ 'w' for data
+ 'd' (apparently m88k for data)
+ 'x' for text
+ 'r' for read-only data
+ 's' for shared data (PE)
+ But if the argument is not a quoted string, treat it as a
+ subsegment number.
+
+ Note the 'a' flag is silently ignored. This allows the same
+ .section directive to be parsed in both ELF and COFF formats. */
void
obj_coff_section (ignore)
@@ -1466,6 +1467,7 @@ obj_coff_section (ignore)
case 'n': flags &=~ SEC_LOAD; flags |= SEC_NEVER_LOAD; break;
case 'd': flags |= SEC_DATA | SEC_LOAD; /* fall through */
case 'w': flags &=~ SEC_READONLY; break;
+ case 'a': break; /* For compatability with ELF. */
case 'x': flags |= SEC_CODE | SEC_LOAD; break;
case 'r': flags |= SEC_READONLY; break;
case 's': flags |= SEC_SHARED; break;
diff --git a/gas/doc/as.texinfo b/gas/doc/as.texinfo
index 2a1d05ed75..7bd85d7173 100644
--- a/gas/doc/as.texinfo
+++ b/gas/doc/as.texinfo
@@ -4978,6 +4978,8 @@ read-only section
executable section
@item s
shared section (meaningful for PE targets)
+@item a
+ignored. (For compatibility with the ELF version)
@end table
If no flags are specified, the default flags depend upon the section name. If