From 14e3c2e47d94bc9eee44e8a5b7f8458a4dbae36d Mon Sep 17 00:00:00 2001 From: Jim Kingdon Date: Sat, 17 Apr 1993 00:39:36 +0000 Subject: * libbfd.c: Add signed versions of bfd_{h_,}{get,put}_signed_. libbfd.c, libbfd-in.h: Add _do*signed*. targets.c, all targets: Add bfd*signed*. bfd-in.h: Add bfd_signed_vma. Add comments. --- bfd/targets.c | 32 +++++++++++++++++++++----------- 1 file changed, 21 insertions(+), 11 deletions(-) (limited to 'bfd/targets.c') diff --git a/bfd/targets.c b/bfd/targets.c index fdf5d22..f9ba26d 100644 --- a/bfd/targets.c +++ b/bfd/targets.c @@ -180,19 +180,25 @@ entry points, since they don't take BFD as first arg. Certain other handlers could do the same. . bfd_vma (*bfd_getx64) PARAMS ((bfd_byte *)); +. bfd_signed_vma (*bfd_getx_signed_64) PARAMS ((bfd_byte *)); . void (*bfd_putx64) PARAMS ((bfd_vma, bfd_byte *)); . bfd_vma (*bfd_getx32) PARAMS ((bfd_byte *)); +. bfd_signed_vma (*bfd_getx_signed_32) PARAMS ((bfd_byte *)); . void (*bfd_putx32) PARAMS ((bfd_vma, bfd_byte *)); . bfd_vma (*bfd_getx16) PARAMS ((bfd_byte *)); +. bfd_signed_vma (*bfd_getx_signed_16) PARAMS ((bfd_byte *)); . void (*bfd_putx16) PARAMS ((bfd_vma, bfd_byte *)); Byte swapping for the headers . bfd_vma (*bfd_h_getx64) PARAMS ((bfd_byte *)); +. bfd_signed_vma (*bfd_h_getx_signed_64) PARAMS ((bfd_byte *)); . void (*bfd_h_putx64) PARAMS ((bfd_vma, bfd_byte *)); . bfd_vma (*bfd_h_getx32) PARAMS ((bfd_byte *)); +. bfd_signed_vma (*bfd_h_getx_signed_32) PARAMS ((bfd_byte *)); . void (*bfd_h_putx32) PARAMS ((bfd_vma, bfd_byte *)); . bfd_vma (*bfd_h_getx16) PARAMS ((bfd_byte *)); +. bfd_signed_vma (*bfd_h_getx_signed_16) PARAMS ((bfd_byte *)); . void (*bfd_h_putx16) PARAMS ((bfd_vma, bfd_byte *)); Format dependent routines: these are vectors of entry points @@ -299,10 +305,8 @@ Symbols and relocations . void *ptr, . unsigned long size)); -Data for use by back-end routines; e.g., for a.out, includes whether -this particular target maps ZMAGIC files contiguously or with text and -data separated. Could perhaps also be used to eliminate some of the -above COFF-specific fields. +Data for use by back-end routines, which isn't generic enough to belong +in this structure. . PTR backend_data; .} bfd_target; @@ -348,8 +352,10 @@ extern bfd_target b_out_vec_little_host; extern bfd_target b_out_vec_big_host; extern bfd_target icoff_little_vec; extern bfd_target icoff_big_vec; -extern bfd_target elf_little_vec; -extern bfd_target elf_big_vec; +extern bfd_target elf32_sparc_vec; +extern bfd_target elf32_i386_vec; +extern bfd_target elf32_m68k_vec; +extern bfd_target elf32_i860_vec; extern bfd_target ieee_vec; extern bfd_target oasys_vec; extern bfd_target m88kbcs_vec; @@ -378,8 +384,10 @@ extern bfd_target DEFAULT_VECTOR; bfd_target *target_vector[] = { #ifdef SELECT_VECS - SELECT_VECS, -#else /* SELECT_VECS */ + + SELECT_VECS, + +#else /* not SELECT_VECS */ #ifdef DEFAULT_VECTOR &DEFAULT_VECTOR, @@ -412,8 +420,10 @@ bfd_target *target_vector[] = { /* &tekhex_vec,*/ &icoff_little_vec, &icoff_big_vec, - &elf_little_vec, - &elf_big_vec, + &elf32_sparc_vec, + &elf32_i386_vec, + &elf32_m68k_vec, + &elf32_i860_vec, &a_out_adobe_vec, &b_out_vec_little_host, &b_out_vec_big_host, @@ -435,7 +445,7 @@ bfd_target *target_vector[] = { &aix386_core_vec, #endif -#endif /* SELECT_VECS */ +#endif /* not SELECT_VECS */ NULL, /* end of list marker */ }; -- cgit v1.1