* bfd-in2.h, libbfd.h, libcoff.h: Rebuilt.
* bfd-in.h (JUMP_TABLE): Add new entries to the jump table for bfd_copy_private_section_data, bfd_copy_private_bfd_data, and bfd_is_local_label. * targets.c: Add new entries to the bfd_target structure. * bfd.c (bfd_copy_private_bfd_data): New definition. * section.c (bfd_copy_private_section_data): New definition. * syms.c (bfd_is_local_label): New definition. * libbfd-in.h (bfd_generic_is_local_label): Declare. * libbfd.c (bfd_generic_is_local_label): New function. * *-core.c: Provide default definitions for new functions in the target vector which all point to bfd_false. * aout-target.h, coffcode.h, elf32-target.h elf64-target.h, ieee.c libaout.h, libecoff.h, nlm-target.h, oasys.c, srec.c, tekhex.c Default new vectors for copying private backend data to bfd_true. Default new vector for determining if a symbol is a local label to bfd_generic_is_local_label. * som.c (som_bfd_copy_private_section_data): New function. (som_bfd_is_local_label): New function. (som_bfd_copy_private_bfd_data): For now default to bfd_true. * elf32-hppa.c (hppa_elf_is_local_label): New function.
This commit is contained in:
parent
0069bd06b3
commit
5b3577cb7a
@ -1,3 +1,38 @@
|
||||
Tue Mar 15 22:58:28 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
|
||||
|
||||
* bfd-in2.h, libbfd.h, libcoff.h: Rebuilt.
|
||||
|
||||
* bfd-in.h (JUMP_TABLE): Add new entries to the jump table
|
||||
for bfd_copy_private_section_data, bfd_copy_private_bfd_data,
|
||||
and bfd_is_local_label.
|
||||
|
||||
* targets.c: Add new entries to the bfd_target structure.
|
||||
|
||||
* bfd.c (bfd_copy_private_bfd_data): New definition.
|
||||
|
||||
* section.c (bfd_copy_private_section_data): New definition.
|
||||
|
||||
* syms.c (bfd_is_local_label): New definition.
|
||||
|
||||
* libbfd-in.h (bfd_generic_is_local_label): Declare.
|
||||
|
||||
* libbfd.c (bfd_generic_is_local_label): New function.
|
||||
|
||||
* *-core.c: Provide default definitions for new functions in
|
||||
the target vector which all point to bfd_false.
|
||||
|
||||
* aout-target.h, coffcode.h, elf32-target.h elf64-target.h, ieee.c
|
||||
libaout.h, libecoff.h, nlm-target.h, oasys.c, srec.c, tekhex.c
|
||||
Default new vectors for copying private backend data to bfd_true.
|
||||
Default new vector for determining if a symbol is a local label
|
||||
to bfd_generic_is_local_label.
|
||||
|
||||
* som.c (som_bfd_copy_private_section_data): New function.
|
||||
(som_bfd_is_local_label): New function.
|
||||
(som_bfd_copy_private_bfd_data): For now default to bfd_true.
|
||||
|
||||
* elf32-hppa.c (hppa_elf_is_local_label): New function.
|
||||
|
||||
Tue Mar 15 23:55:47 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
|
||||
|
||||
* cf-m68klynx.c (CALC_ADDEND): Use _bfd_m68klynx_howto_table.
|
||||
|
@ -60,6 +60,18 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
|
||||
#define bfd_elf32_bfd_final_link _bfd_generic_final_link
|
||||
#endif
|
||||
|
||||
#ifndef bfd_elf32_bfd_copy_private_section_data
|
||||
#define bfd_elf32_bfd_copy_private_section_data \
|
||||
((boolean (*) PARAMS ((bfd *, asection *, bfd *, asection *))) bfd_true)
|
||||
#endif
|
||||
#ifndef bfd_elf32_bfd_copy_private_bfd_data
|
||||
#define bfd_elf32_bfd_copy_private_bfd_data \
|
||||
((boolean (*) PARAMS ((bfd *, bfd *))) bfd_true)
|
||||
#endif
|
||||
#ifndef bfd_elf32_bfd_is_local_label
|
||||
#define bfd_elf32_bfd_is_local_label bfd_generic_is_local_label
|
||||
#endif
|
||||
|
||||
#ifndef elf_info_to_howto_rel
|
||||
#define elf_info_to_howto_rel 0
|
||||
#endif
|
||||
|
@ -60,6 +60,19 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
|
||||
#define bfd_elf64_bfd_final_link _bfd_generic_final_link
|
||||
#endif
|
||||
|
||||
#ifndef bfd_elf64_bfd_copy_private_section_data
|
||||
#define bfd_elf64_bfd_copy_private_section_data \
|
||||
((boolean (*) PARAMS ((bfd *, asection *, bfd *, asection *))) bfd_true)
|
||||
#endif
|
||||
#ifndef bfd_elf64_bfd_copy_private_bfd_data
|
||||
#define bfd_elf64_bfd_copy_private_bfd_data \
|
||||
((boolean (*) PARAMS ((bfd *, bfd *))) bfd_true)
|
||||
#endif
|
||||
|
||||
#ifndef bfd_elf64_bfd_is_local_label
|
||||
#define bfd_elf64_bfd_is_local_label bfd_generic_is_local_label
|
||||
#endif
|
||||
|
||||
#ifndef elf_info_to_howto_rel
|
||||
#define elf_info_to_howto_rel 0
|
||||
#endif
|
||||
|
37
bfd/som.c
37
bfd/som.c
@ -149,6 +149,9 @@ static asymbol * som_make_empty_symbol PARAMS ((bfd *));
|
||||
static void som_print_symbol PARAMS ((bfd *, PTR,
|
||||
asymbol *, bfd_print_symbol_type));
|
||||
static boolean som_new_section_hook PARAMS ((bfd *, asection *));
|
||||
static boolean som_bfd_copy_private_section_data PARAMS ((bfd *, asection *,
|
||||
bfd *, asection *));
|
||||
static boolean som_bfd_is_local_label PARAMS ((bfd *, asymbol *));
|
||||
static boolean som_set_section_contents PARAMS ((bfd *, sec_ptr, PTR,
|
||||
file_ptr, bfd_size_type));
|
||||
static boolean som_set_arch_mach PARAMS ((bfd *, enum bfd_architecture,
|
||||
@ -3644,6 +3647,14 @@ som_print_symbol (ignore_abfd, afile, symbol, how)
|
||||
}
|
||||
}
|
||||
|
||||
static boolean
|
||||
som_bfd_is_local_label (abfd, sym)
|
||||
bfd *abfd;
|
||||
asymbol *sym;
|
||||
{
|
||||
return (sym->name[0] == 'L' && sym->name[1] == '$');
|
||||
}
|
||||
|
||||
/* Count or process variable-length SOM fixup records.
|
||||
|
||||
To avoid code duplication we use this code both to compute the number
|
||||
@ -4036,6 +4047,29 @@ som_new_section_hook (abfd, newsect)
|
||||
return true;
|
||||
}
|
||||
|
||||
/* Copy any private info we understand from the input section
|
||||
to the output section. */
|
||||
static boolean
|
||||
som_bfd_copy_private_section_data (ibfd, isection, obfd, osection)
|
||||
bfd *ibfd;
|
||||
asection *isection;
|
||||
bfd *obfd;
|
||||
asection *osection;
|
||||
{
|
||||
/* One day we may try to grok other private data. */
|
||||
if (ibfd->xvec->flavour != bfd_target_som_flavour
|
||||
|| obfd->xvec->flavour != bfd_target_som_flavour)
|
||||
return false;
|
||||
|
||||
memcpy (som_section_data (osection), som_section_data (isection),
|
||||
sizeof (struct som_section_data_struct));
|
||||
|
||||
/* Reparent if necessary. */
|
||||
if (som_section_data (osection)->containing_space)
|
||||
som_section_data (osection)->containing_space =
|
||||
som_section_data (osection)->containing_space->output_section;
|
||||
}
|
||||
|
||||
/* Set backend info for sections which can not be described
|
||||
in the BFD data structures. */
|
||||
|
||||
@ -5190,6 +5224,9 @@ som_slurp_extended_name_table (abfd)
|
||||
#define som_core_file_failing_signal _bfd_dummy_core_file_failing_signal
|
||||
#define som_core_file_matches_executable_p _bfd_dummy_core_file_matches_executable_p
|
||||
|
||||
#define som_bfd_copy_private_bfd_data \
|
||||
((boolean (*) PARAMS ((bfd *, bfd *))) bfd_true)
|
||||
|
||||
bfd_target som_vec =
|
||||
{
|
||||
"som", /* name */
|
||||
|
Loading…
Reference in New Issue
Block a user