Lines Matching +defs:table +defs:string
28 /* An entry in the strtab hash table. */
44 /* The strtab hash table. */
48 struct bfd_hash_table table;
63 struct bfd_hash_table *table,
64 const char *string)
69 entry = bfd_hash_allocate (table, sizeof (struct elf_strtab_hash_entry));
74 entry = bfd_hash_newfunc (entry, table, string);
90 /* Create a new hash table. */
95 struct elf_strtab_hash *table;
98 table = bfd_malloc (amt);
99 if (table == NULL)
102 if (!bfd_hash_table_init (&table->table, elf_strtab_hash_newfunc,
105 free (table);
109 table->sec_size = 0;
110 table->size = 1;
111 table->alloced = 64;
113 table->array = bfd_malloc (table->alloced * amt);
114 if (table->array == NULL)
116 free (table);
120 table->array[0] = NULL;
122 return table;
130 bfd_hash_table_free (&tab->table);
135 /* Get the index of an entity in a hash table, adding it if it is not
152 bfd_hash_lookup (&tab->table, str, TRUE, copy);
247 str = tab->array[i]->root.string;
267 const unsigned char *s = (const unsigned char *) A->root.string + lenA - 1;
268 const unsigned char *t = (const unsigned char *) B->root.string + lenB - 1;
288 not to be equal by the hash table. */
291 return memcmp (A->root.string + (A->len - B->len),
292 B->root.string, B->len - 1) == 0;
295 /* This function assigns final string table offsets for used strings,