summaryrefslogtreecommitdiff
path: root/binutils/elfcomm.h
diff options
context:
space:
mode:
authorNick Clifton <nickc@redhat.com>2012-07-17 16:29:35 +0000
committerNick Clifton <nickc@redhat.com>2012-07-17 16:29:35 +0000
commit35331973229e9efa4c14245eab3e71e268c4a210 (patch)
tree58e0f8287d7213c4112aabd99b539026989574e6 /binutils/elfcomm.h
parentf7adb8cc5255c75a39a48a3986048f4fae9aeb15 (diff)
downloadbinutils-redhat-35331973229e9efa4c14245eab3e71e268c4a210.tar.gz
* elfcomm.c (setup_archive): Extract index table and symbol table
scanning code into... (process_archive_index_and_symbols): ... this function and add support for 64-bit index tables. * elfcomm.h (struct archive_info): Change type of index_num and index_array to elf_vma. Add 'uses_64bit_indicies' field. * readelf.c (process_archive): Fix support for 64-bit indicies.
Diffstat (limited to 'binutils/elfcomm.h')
-rw-r--r--binutils/elfcomm.h5
1 files changed, 3 insertions, 2 deletions
diff --git a/binutils/elfcomm.h b/binutils/elfcomm.h
index 2a3c9133bd..a8c3aa309d 100644
--- a/binutils/elfcomm.h
+++ b/binutils/elfcomm.h
@@ -64,8 +64,8 @@ struct archive_info
{
char * file_name; /* Archive file name. */
FILE * file; /* Open file descriptor. */
- unsigned long index_num; /* Number of symbols in table. */
- unsigned long * index_array; /* The array of member offsets. */
+ elf_vma index_num; /* Number of symbols in table. */
+ elf_vma * index_array; /* The array of member offsets. */
char * sym_table; /* The symbol table. */
unsigned long sym_size; /* Size of the symbol table. */
char * longnames; /* The long file names table. */
@@ -73,6 +73,7 @@ struct archive_info
unsigned long nested_member_origin; /* Origin in the nested archive of the current member. */
unsigned long next_arhdr_offset; /* Offset of the next archive header. */
bfd_boolean is_thin_archive; /* TRUE if this is a thin archive. */
+ bfd_boolean uses_64bit_indicies; /* TRUE if the index table uses 64bit entries. */
struct ar_hdr arhdr; /* Current archive header. */
};