diff options
author | Ian Lance Taylor <ian@airs.com> | 1999-09-06 18:34:29 +0000 |
---|---|---|
committer | Ian Lance Taylor <ian@airs.com> | 1999-09-06 18:34:29 +0000 |
commit | 0ca1c6045eb046b152733589a576aff9c640a71f (patch) | |
tree | ec34bbe07749f43d0564f11777fd7e09d71831b6 /bfd/bfd-in2.h | |
parent | 8b95c96cdf85fa85f8eb7fa6f959ae9615e9dcc2 (diff) | |
download | binutils-redhat-0ca1c6045eb046b152733589a576aff9c640a71f.tar.gz |
1999-09-06 Donn Terry <donn@interix.com>
* section.c (struct bfd_comdat_info): Define.
(asection): Add comdat field.
(STD_SECTION): Initialize comdat field.
(bfd_make_section_anyway): Likewise.
* bfd-in2.h: Rebuild.
Diffstat (limited to 'bfd/bfd-in2.h')
-rw-r--r-- | bfd/bfd-in2.h | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/bfd/bfd-in2.h b/bfd/bfd-in2.h index f79438e89d..ec82e0c325 100644 --- a/bfd/bfd-in2.h +++ b/bfd/bfd-in2.h @@ -847,6 +847,27 @@ bfd_make_readable PARAMS ((bfd *abfd)); #define bfd_h_get_signed_64(abfd, ptr) \ BFD_SEND(abfd, bfd_h_getx_signed_64, (ptr)) + /* This structure is used for a comdat section, as in PE. A comdat + section is associated with a particular symbol. When the linker + sees a comdat section, it keeps only one of the sections with a + given name and associated with a given symbol. */ + +struct bfd_comdat_info +{ + /* The name of the symbol associated with a comdat section. */ + const char *name; + + /* The local symbol table index of the symbol associated with a + comdat section. This is only meaningful to the object file format + specific code; it is not an index into the list returned by + bfd_canonicalize_symtab. */ + long symbol; + + /* If this section is being discarded, the linker uses this field + to point to the input section which is being kept. */ + struct sec *sec; +}; + typedef struct sec { /* The name of the section; the name isn't a copy, the pointer is @@ -1118,6 +1139,10 @@ typedef struct sec unsigned int lineno_count; + /* Optional information about a COMDAT entry; NULL if not COMDAT */ + + struct bfd_comdat_info *comdat; + /* When a section is being output, this value changes as more linenumbers are written out */ |