diff options
author | Ken Raeburn <raeburn@cygnus> | 1993-06-30 10:04:58 +0000 |
---|---|---|
committer | Ken Raeburn <raeburn@cygnus> | 1993-06-30 10:04:58 +0000 |
commit | 7d9bb6dab4dbbfa789fa568b6e39ab68bda61217 (patch) | |
tree | c0c7b24eaf68b8364806d93dc28e9920bef3ae91 /bfd/libelf.h | |
parent | 5b53e0c1b117f1ab387306ab35db8767c07d7b5f (diff) | |
download | gdb-7d9bb6dab4dbbfa789fa568b6e39ab68bda61217.zip gdb-7d9bb6dab4dbbfa789fa568b6e39ab68bda61217.tar.gz gdb-7d9bb6dab4dbbfa789fa568b6e39ab68bda61217.tar.bz2 |
(CAT4): Added Saber-C (ANSI mode) version.
(bfd_elf64_*): New decls.
Diffstat (limited to 'bfd/libelf.h')
-rw-r--r-- | bfd/libelf.h | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/bfd/libelf.h b/bfd/libelf.h index 0a8d805..5a5823f 100644 --- a/bfd/libelf.h +++ b/bfd/libelf.h @@ -30,12 +30,16 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ want extra underscores (e.g., "elf_32_"). The XCAT2 macro will cause the inner CAT macros to be evaluated first, producing still-valid pp-tokens. Then the final concatenation can be done. (Sigh.) */ +#ifdef SABER +#define CAT4(a,b,c,d) a##b##c##d +#else #ifdef __STDC__ #define XCAT2(a,b) CAT(a,b) #define CAT4(a,b,c,d) XCAT2(CAT(a,b),CAT(c,d)) #else #define CAT4(a,b,c,d) a/**/b/**/c/**/d #endif +#endif /* If size isn't specified as 64 or 32, NAME macro should fail. */ #ifndef NAME @@ -155,6 +159,43 @@ extern boolean bfd_elf32_new_section_hook PARAMS ((bfd *, asection *)); extern void bfd_elf32_no_info_to_howto PARAMS ((bfd *, arelent *, Elf32_Internal_Rela *)); +extern bfd_target *bfd_elf64_object_p PARAMS ((bfd *)); +extern bfd_target *bfd_elf64_core_file_p PARAMS ((bfd *)); +extern boolean bfd_elf64_write_object_contents PARAMS ((bfd *)); +extern char *bfd_elf64_core_file_failing_command PARAMS ((bfd *)); +extern int bfd_elf64_core_file_failing_signal PARAMS ((bfd *)); +extern boolean bfd_elf64_core_file_matches_executable_p PARAMS ((bfd *, + bfd *)); +extern boolean bfd_elf64_set_section_contents PARAMS ((bfd *, sec_ptr, PTR, + file_ptr, + bfd_size_type)); + +extern unsigned int bfd_elf64_get_symtab_upper_bound PARAMS ((bfd *)); +extern unsigned int bfd_elf64_get_symtab PARAMS ((bfd *, asymbol **)); +extern unsigned int bfd_elf64_get_reloc_upper_bound PARAMS ((bfd *, sec_ptr)); +extern unsigned int bfd_elf64_canonicalize_reloc PARAMS ((bfd *, sec_ptr, + arelent **, + asymbol **)); +extern asymbol *bfd_elf64_make_empty_symbol PARAMS ((bfd *)); +extern void bfd_elf64_print_symbol PARAMS ((bfd *, PTR, asymbol *, + bfd_print_symbol_type)); +extern void bfd_elf64_get_symbol_info PARAMS ((bfd *, asymbol *, + symbol_info *)); +extern alent *bfd_elf64_get_lineno PARAMS ((bfd *, asymbol *)); +extern boolean bfd_elf64_set_arch_mach PARAMS ((bfd *, enum bfd_architecture, + unsigned long)); +extern boolean bfd_elf64_find_nearest_line PARAMS ((bfd *, asection *, + asymbol **, + bfd_vma, CONST char **, + CONST char **, + unsigned int *)); +extern int bfd_elf64_sizeof_headers PARAMS ((bfd *, boolean)); +extern boolean bfd_elf64_new_section_hook PARAMS ((bfd *, asection *)); + +/* If the target doesn't have reloc handling written yet: */ +extern void bfd_elf64_no_info_to_howto PARAMS ((bfd *, arelent *, + Elf64_Internal_Rela *)); + #define get_elf_backend_data(abfd) \ ((struct elf_backend_data *) (abfd)->xvec->backend_data) |