summaryrefslogtreecommitdiff
path: root/bfd/bfd-in2.h
diff options
context:
space:
mode:
authorIan Lance Taylor <ian@airs.com>1999-09-06 18:34:29 +0000
committerIan Lance Taylor <ian@airs.com>1999-09-06 18:34:29 +0000
commit0ca1c6045eb046b152733589a576aff9c640a71f (patch)
treeec34bbe07749f43d0564f11777fd7e09d71831b6 /bfd/bfd-in2.h
parent8b95c96cdf85fa85f8eb7fa6f959ae9615e9dcc2 (diff)
downloadbinutils-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.h25
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 */