aboutsummaryrefslogtreecommitdiff
path: root/bfd/libaout.h
diff options
context:
space:
mode:
authorIan Lance Taylor <ian@airs.com>1994-04-07 01:50:10 +0000
committerIan Lance Taylor <ian@airs.com>1994-04-07 01:50:10 +0000
commitfa77c7041cadca2771476977f504b9ab0c28e5b2 (patch)
tree7690f20001bd1c0fdcb9f8419dabcaf8bb7cd8f1 /bfd/libaout.h
parentad46bd1d13148db9099ad2ae13c1ae7a63af018a (diff)
downloadgdb-fa77c7041cadca2771476977f504b9ab0c28e5b2.zip
gdb-fa77c7041cadca2771476977f504b9ab0c28e5b2.tar.gz
gdb-fa77c7041cadca2771476977f504b9ab0c28e5b2.tar.bz2
* sunos.c (MY_read_dynamic_symbols): Don't define.
(MY_read_dynamic_relocs): Don't define. (MY_get_dynamic_symtab_upper_bound): Define. (MY_canonicalize_dynamic_symtab): Define. (MY_get_dynamic_reloc_upper_bound): Define. (MY_canonicalize_dynamic_reloc): Define. (struct sunos_dynamic_info): Change type of dynsym_count and dynrel_count to long. Add fields canonical_dynsym and canonical_dynrel. (sunos_read_dynamic_info): Check that BFD had DYNAMIC flag set. Clear info->canonical_dynsym and info->canonical_dynrel. (MY(read_dynamic_symbols)): Removed. (MY(read_dynamic_relocs)): Removed. (sunos_get_dynamic_symtab_upper_bound): New function. (sunos_canonicalize_dynamic_symtab): New function. (sunos_get_dynamic_reloc_upper_bound): New function. (sunos_canonicalize_dynamic_reloc): New function. * libaout.h: Declare struct reloc_ext_external and reloc_std_external to avoid prototype problems. (struct aout_backend_data): Remove fields read_dynamic_symbols and read_dynamic_relocs. (NAME(aout,translate_symbol_table)): Declare. (NAME(aout,swap_ext_reloc_in)): Declare. (NAME(aout,swap_std_reloc_in)): Declare. * aoutx.h (NAME(aout,translate_symbol_table)): Renamed from translate_symbol_table and made non-static. Changed all callers. (NAME(aout,slurp_symbol_table)): Don't read dynamic symbols. (NAME(aout,slurp_reloc_table)): Don't read dynamic relocs. (NAME(aout,get_reloc_upper_bound)): Don't count dynamic relocs. * aoutf1.h (aout_32_sunos4_write_object_contents): Don't bother to remove dynamic symbols and relocs. They will no longer be present. (MY_read_dynamic_symbols): Don't define. (MY_read_dynamic_relocs): Don't define. (sunos4_aout_backend): Don't initialize dynamic entry points. * aout-target.h (MY_read_dynamic_symbols): Don't define. (MY_read_dynamic_relocs): Don't define. (MY(backend_data)): Don't initialize dynamic entry points. (MY_get_dynamic_symtab_upper_bound): If not defined, define to _bfd_nodynamic version. (MY_canonicalize_dynamic_symtab): Likewise. (MY_get_dynamic_reloc_upper_bound): Likewise. (MY_canonicalize_dynamic_reloc): Likewise.
Diffstat (limited to 'bfd/libaout.h')
-rw-r--r--bfd/libaout.h35
1 files changed, 16 insertions, 19 deletions
diff --git a/bfd/libaout.h b/bfd/libaout.h
index 0348463..bc8caea 100644
--- a/bfd/libaout.h
+++ b/bfd/libaout.h
@@ -48,6 +48,8 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
weird scope. */
struct external_exec;
struct external_nlist;
+struct reloc_ext_external;
+struct reloc_std_external;
/* Back-end information for various a.out targets. */
struct aout_backend_data
@@ -77,25 +79,6 @@ struct aout_backend_data
to the size of the text section in the file for alignment purposes but
does *not* get counted in the length of the text section. */
unsigned char exec_header_not_counted;
-
- /* A callback function to read in the dynamic symbols of an object
- which is dynamically linked. This returns the number of symbols
- read (or -1 on error) and sets *SYMS to a buffer holding an array
- of external_nlist structures and *STRS and *STRSIZE to the
- associated string table. (This interface works for SunOS, but
- can be changed if some other interface is better for some other
- shared library implementation). */
- bfd_size_type (*read_dynamic_symbols) PARAMS ((bfd *,
- struct external_nlist **syms,
- char **strs,
- bfd_size_type *strsize));
-
- /* A callback function to read in the dynamic relocs of an object
- which is dynamically linked. This returns the number of relocs
- read (or -1 on error) and sets *RELOCS to a buffer holding an
- array of external reloc structures (the type depends upon the
- type of object file). */
- bfd_size_type (*read_dynamic_relocs) PARAMS ((bfd *, PTR *relocs));
};
#define aout_backend_info(abfd) \
((CONST struct aout_backend_data *)((abfd)->xvec->backend_data))
@@ -318,6 +301,13 @@ asymbol *
NAME(aout,make_empty_symbol) PARAMS ((bfd *abfd));
boolean
+NAME(aout,translate_symbol_table) PARAMS ((bfd *, aout_symbol_type *,
+ struct external_nlist *,
+ bfd_size_type, char *,
+ bfd_size_type,
+ boolean dynamic));
+
+boolean
NAME(aout,slurp_symbol_table) PARAMS ((bfd *abfd));
boolean
@@ -332,6 +322,13 @@ NAME(aout,get_symtab_upper_bound) PARAMS ((bfd *abfd));
long
NAME(aout,get_symtab) PARAMS ((bfd *abfd, asymbol **location));
+void
+NAME(aout,swap_ext_reloc_in) PARAMS ((bfd *, struct reloc_ext_external *,
+ arelent *, asymbol **));
+void
+NAME(aout,swap_std_reloc_in) PARAMS ((bfd *, struct reloc_std_external *,
+ arelent *, asymbol **));
+
boolean
NAME(aout,slurp_reloc_table) PARAMS ((bfd *abfd, sec_ptr asect,
asymbol **symbols));