diff options
author | Paul Brook <paul@codesourcery.com> | 2004-09-08 20:52:49 +0000 |
---|---|---|
committer | Paul Brook <paul@codesourcery.com> | 2004-09-08 20:52:49 +0000 |
commit | 10b016c223f165a06dbd20e46307c9a0bfbf0ee2 (patch) | |
tree | ea3895ea85fd89f144817cb51868ffd997141e03 | |
parent | b26a6851b5c525e74539c85ac34a5e1e417f18e0 (diff) | |
download | gdb-10b016c223f165a06dbd20e46307c9a0bfbf0ee2.zip gdb-10b016c223f165a06dbd20e46307c9a0bfbf0ee2.tar.gz gdb-10b016c223f165a06dbd20e46307c9a0bfbf0ee2.tar.bz2 |
* config/obj-elf.c (obj_elf_section_type): Handle init_array,
fini_array and preinit_array section types.
* config/tc-ia64.c (ia64_elf_section_type): Remove init_array
and fini_array.
* doc/as.texinfo: Document extra section types.
-rw-r--r-- | gas/ChangeLog | 8 | ||||
-rw-r--r-- | gas/config/obj-elf.c | 6 | ||||
-rw-r--r-- | gas/config/tc-ia64.c | 6 | ||||
-rw-r--r-- | gas/doc/as.texinfo | 8 |
4 files changed, 22 insertions, 6 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog index 13d53fd..dcfe99b 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,11 @@ +2004-09-08 Paul Brook <paul@codesourcery.com> + + * config/obj-elf.c (obj_elf_section_type): Handle init_array, + fini_array and preinit_array section types. + * config/tc-ia64.c (ia64_elf_section_type): Remove init_array + and fini_array. + * doc/as.texinfo: Document extra section types. + 2004-09-02 Mark Mitchell <mark@codesourcery.com> * Makefile.am (TARG_ENV_HFILES): Add te-symbian.h. diff --git a/gas/config/obj-elf.c b/gas/config/obj-elf.c index 94f53b1..84f5a84 100644 --- a/gas/config/obj-elf.c +++ b/gas/config/obj-elf.c @@ -771,6 +771,12 @@ obj_elf_section_type (char *str, size_t len) return SHT_NOBITS; if (len == 4 && strncmp (str, "note", 4) == 0) return SHT_NOTE; + if (len == 10 && strncmp (str, "init_array", 10) == 0) + return SHT_INIT_ARRAY; + if (len == 10 && strncmp (str, "fini_array", 10) == 0) + return SHT_FINI_ARRAY; + if (len == 13 && strncmp (str, "preinit_array", 13) == 0) + return SHT_PREINIT_ARRAY; #ifdef md_elf_section_type { diff --git a/gas/config/tc-ia64.c b/gas/config/tc-ia64.c index 1d43e77..b2e599f 100644 --- a/gas/config/tc-ia64.c +++ b/gas/config/tc-ia64.c @@ -996,12 +996,6 @@ ia64_elf_section_type (str, len) if (STREQ ("unwind")) return SHT_IA_64_UNWIND; - if (STREQ ("init_array")) - return SHT_INIT_ARRAY; - - if (STREQ ("fini_array")) - return SHT_FINI_ARRAY; - return -1; #undef STREQ } diff --git a/gas/doc/as.texinfo b/gas/doc/as.texinfo index 89868c2..23de55f 100644 --- a/gas/doc/as.texinfo +++ b/gas/doc/as.texinfo @@ -5291,8 +5291,16 @@ section contains data section does not contain data (i.e., section only occupies space) @item @@note section contains data which is used by things other than the program +@item @@init_array +section contains an array of pointers to init functions +@item @@fini_array +section contains an array of pointers to finish functions +@item @@preinit_array +section contains an array of pointers to pre-init functions @end table +Many targets only support the first three section types. + Note on targets where the @code{@@} character is the start of a comment (eg ARM) then another character is used instead. For example the ARM port uses the @code{%} character. |