diff options
author | Ken Raeburn <raeburn@cygnus> | 1993-02-27 07:05:09 +0000 |
---|---|---|
committer | Ken Raeburn <raeburn@cygnus> | 1993-02-27 07:05:09 +0000 |
commit | 81187b54758551f963bed207d3995523a1416f65 (patch) | |
tree | 1cb7b5d70b7ef934e289a0bad9b8a50c03b4987e /bfd/libelf.h | |
parent | 9116f7c7ff255cc9a7075c876c4e4927e0d97fbf (diff) | |
download | gdb-81187b54758551f963bed207d3995523a1416f65.zip gdb-81187b54758551f963bed207d3995523a1416f65.tar.gz gdb-81187b54758551f963bed207d3995523a1416f65.tar.bz2 |
revised elf support
Diffstat (limited to 'bfd/libelf.h')
-rw-r--r-- | bfd/libelf.h | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/bfd/libelf.h b/bfd/libelf.h new file mode 100644 index 0000000..546f471 --- /dev/null +++ b/bfd/libelf.h @@ -0,0 +1,37 @@ +#include "elf/common.h" +#include "elf/internal.h" +#include "elf/external.h" + +struct elf_backend_data { + void (*elf_info_to_howto) PARAMS ((bfd *, arelent *, Elf_Internal_Rela *)); + enum bfd_architecture arch; +}; + +extern bfd_target *elf_object_p PARAMS ((bfd *)); +extern bfd_target *elf_core_file_p PARAMS ((bfd *)); +extern boolean elf_mkobject PARAMS ((bfd *)); +extern boolean elf_write_object_contents PARAMS ((bfd *)); +extern char *elf_core_file_failing_command PARAMS ((bfd *)); +extern int elf_core_file_failing_signal PARAMS ((bfd *)); +extern boolean elf_core_file_matches_executable_p PARAMS ((bfd *, bfd *)); +extern boolean elf_set_section_contents PARAMS ((bfd *, sec_ptr, PTR, + file_ptr, bfd_size_type)); +extern unsigned int elf_get_symtab_upper_bound PARAMS ((bfd *)); +extern unsigned int elf_get_symtab PARAMS ((bfd *, asymbol **)); +extern unsigned int elf_get_reloc_upper_bound PARAMS ((bfd *, sec_ptr)); +extern unsigned int elf_canonicalize_reloc PARAMS ((bfd *, sec_ptr, + arelent **, asymbol **)); +extern asymbol *elf_make_empty_symbol PARAMS ((bfd *)); +extern void elf_print_symbol PARAMS ((bfd *, PTR, asymbol *, + bfd_print_symbol_type)); +extern alent *elf_get_lineno PARAMS ((bfd *, asymbol *)); +extern boolean elf_set_arch_mach PARAMS ((bfd *, enum bfd_architecture, + unsigned long)); +extern boolean elf_find_nearest_line PARAMS ((bfd *, asection *, asymbol **, + bfd_vma, CONST char **, + CONST char **, unsigned int *)); +extern int elf_sizeof_headers PARAMS ((bfd *, boolean)); + +/* If the target doesn't have reloc handling written yet: */ +extern void elf_no_info_to_howto PARAMS ((bfd *, arelent *, + Elf_Internal_Rela *)); |