OSDN Git Service

* bfd.c (struct _bfd): Added id field.
authoraoliva <aoliva>
Mon, 27 Jan 2003 23:40:38 +0000 (23:40 +0000)
committeraoliva <aoliva>
Mon, 27 Jan 2003 23:40:38 +0000 (23:40 +0000)
* opncls.c (_bfd_id_counter): New static variable.
(_bfd_new_bfd): Use it.
* bfd-in2.h: Rebuilt.

bfd/ChangeLog
bfd/bfd-in2.h
bfd/bfd.c
bfd/opncls.c

index c4102ee..79941e5 100644 (file)
@@ -1,3 +1,10 @@
+2003-01-27  Alexandre Oliva  <aoliva@redhat.com>
+
+       * bfd.c (struct _bfd): Added id field.
+       * opncls.c (_bfd_id_counter): New static variable.
+       (_bfd_new_bfd): Use it.
+       * bfd-in2.h: Rebuilt.
+
 2003-01-25  Alan Modra  <amodra@bigpond.net.au>
 
        * elf32-sparc.c (bfd_elf32_new_section_hook): Define.
index 84ef801..25f2f96 100644 (file)
@@ -3536,6 +3536,9 @@ bfd_copy_private_symbol_data PARAMS ((bfd *ibfd, asymbol *isym, bfd *obfd, asymb
 /* Extracted from bfd.c.  */
 struct _bfd
 {
+  /* A unique identifier of the BFD  */
+  unsigned int id;
+
   /* The filename the application opened the BFD with.  */
   const char *filename;
 
index f9051c0..1a332a8 100644 (file)
--- a/bfd/bfd.c
+++ b/bfd/bfd.c
@@ -36,6 +36,9 @@ CODE_FRAGMENT
 .
 .struct _bfd
 .{
+.  {* A unique identifier of the BFD  *}
+.  unsigned int id;
+.
 .  {* The filename the application opened the BFD with.  *}
 .  const char *filename;
 .
index 32d223e..c244388 100644 (file)
 #define S_IXOTH 0001   /* Execute by others.  */
 #endif
 
+/* Counter used to initialize the bfd identifier.  */
+
+static unsigned int _bfd_id_counter = 0;
+
 /* fdopen is a loser -- we should use stdio exclusively.  Unfortunately
    if we do that we can't use fcntl.  */
 
@@ -50,6 +54,8 @@ _bfd_new_bfd ()
   if (nbfd == NULL)
     return NULL;
 
+  nbfd->id = _bfd_id_counter++;
+
   nbfd->memory = (PTR) objalloc_create ();
   if (nbfd->memory == NULL)
     {